Esempio n. 1
0
	'should return an error when list fails': function(){
		var service = new Service({});
		var mock = sinon.mock(service);
		
		mock.expects("execute").yields({statusCode: 400}).once();
		
		service.list(null, function(err, data){
			assert.equal(err.Code, 400)		
		});					
		
		mock.verify();		
	},	
Esempio n. 2
0
	'should list queues': function(){
		var mockResponse = '<?xml version="1.0" encoding="utf-8"?> \
		<EnumerationResults AccountName="http://myaccount.queue.core.windows.net"> \
		  <Prefix>q</Prefix> \
		  <MaxResults>3</MaxResults> \
		  <Queues> \
		    <Queue> \
		      <Name>q1</Name> \
		      <Url>http://myaccount.queue.core.windows.net/q1</Url> \
		      <Metadata> \
		        <Color>red</Color> \
		        <SomeMetadataName>SomeMetadataValue</SomeMetadataName> \
		      </Metadata> \
		    </Queue> \
		    <Queue> \
		      <Name>q2</Name> \
		      <Url>http://myaccount.queue.core.windows.net/q2</Url> \
		      <Metadata> \
		        <Color>blue</Color> \
		        <SomeMetadataName>SomeMetadataValue</SomeMetadataName> \
		      </Metadata> \
		    </Queue> \
		    <Queue> \
		      <Name>q3</Name> \
		      <Url>http://myaccount.queue.core.windows.net/q3</Url> \
		      <Metadata> \
		        <Color>yellow</Color> \
		        <SomeMetadataName>SomeMetadataValue</SomeMetadataName> \
		      </Metadata> \
		    </Queue> \
		  </Queues> \
		  <NextMarker>q4</NextMarker> \
		</EnumerationResults>';
				
		var mockData = { body: mockResponse, headers: {'x-ms-request-id': 'id', 'x-ms-version': '2009-09-19', 'Date': 'date' }, statusCode: 200 };

		var service = new Service({});
		var mock = sinon.mock(service);	
		
		mock.expects("execute").withArgs('get', null, { comp: 'list', prefix: 'q' }, {'x-ms-version': '2009-09-19'}, null)
							   .yields(mockData)
							   .once();
							
		var options = { prefix: 'q' };
		
		service.list(options, function(err, data){
			assert.isNull(err);	
			assert.equal(data['@'].AccountName, 'http://myaccount.queue.core.windows.net');
			assert.equal(data.Prefix, 'q');
			assert.equal(data.Marker, undefined);
			assert.equal(data.NextMarker, 'q4');
						
			assert.equal(data.MaxResults, 3);
			assert.equal(data.Queues.Queue.length, 3);
			
			assert.equal(data.Queues.Queue[0].Name, 'q1');
			assert.equal(data.Queues.Queue[0].Url, 'http://myaccount.queue.core.windows.net/q1');
			assert.equal(data.Queues.Queue[0].Metadata.Color, 'red');
			assert.equal(data.Queues.Queue[0].Metadata.SomeMetadataName, 'SomeMetadataValue');
		});					
		
		mock.verify();		
	},