public void TestQueue() { using (var dl = new DisposableList()) { var docs = TestHelpers.CreateStarDocuments(3); var original = DocdbGatewayMessage.Create("Star", docs); var queue = new QueueWrapper(TestHelpers.GenUnique("gateq"), TestConfig.GatewayStorageAccount); dl.Add(queue.Delete); var blobStorage = new InMemoryGatewayBlobStore(); GatewayQueueWriter writer = new GatewayQueueWriter(queue, blobStorage); writer.Write(original); GatewayQueueReader reader = new GatewayQueueReader(queue, blobStorage); reader.ReadNextMessage <DocdbGatewayMessage>( gm => { var rdocs = gm.DocumentsAs <StarDocument>().ToList(); Assert.AreEqual(docs.Count, rdocs.Count); for (int i = 0; i < rdocs.Count; ++i) { TestHelpers.AssertEqualStars(docs[i], rdocs[i]); } }, (e, gm, cqm) => Assert.Fail()); } }
public void TestQueueBig() { using (var dl = new DisposableList()) { var entities = TestHelpers.CreateStarEntities(10000); var original = TableGatewayMessage.Create("Star", entities); var queue = new QueueWrapper(TestHelpers.GenUnique("gateq"), TestConfig.GatewayStorageAccount); var bcont = new BlobContainerWrapper(TestHelpers.GenUnique("gatecont"), TestConfig.GatewayStorageAccount); dl.Add(queue.Delete); dl.Add(bcont.Delete); var blobStorage = new GatewayBlobStore(bcont); GatewayQueueWriter writer = new GatewayQueueWriter(queue, blobStorage); writer.Write(original); GatewayQueueReader reader = new GatewayQueueReader(queue, blobStorage); reader.ReadNextMessage <TableGatewayMessage>( gm => { var rentities = gm.EntitiesAs <StarEntity>().ToList(); Assert.AreEqual(entities.Count, rentities.Count); for (int i = 0; i < rentities.Count; ++i) { TestHelpers.AssertEqualStars(entities[i], rentities[i]); } }, (e, gm, cqm) => Assert.Fail()); } }