public void HttpClientFromDelegatingHandlerChainTest() { DelegatingHandler delegatingHandler = new DelegatingHandlerImpl(new DelegatingHandlerImpl()); HttpClientFactory.HttpClientFromDelegatingHandler(delegatingHandler); Assert.IsInstanceOfType(((DelegatingHandler)delegatingHandler.InnerHandler).InnerHandler, typeof(StorageAuthenticationHttpHandler)); }
public Queue(string connectionString, string queueName) { var storageAccount = CloudStorageAccount.Parse(connectionString); var proxy = new WebProxy() { // More properties here Address = new Uri("your proxy"), }; DelegatingHandlerImpl delegatingHandlerImpl = new DelegatingHandlerImpl(proxy); CloudQueueClient cloudQueueClient = new CloudQueueClient(storageAccount.QueueStorageUri, storageAccount.Credentials, delegatingHandlerImpl); CloudQueue = cloudQueueClient.GetQueueReference(queueName); }
public void CloudQueueClientCreateQueueSharedKeyLite() { DelegatingHandlerImpl delegatingHandlerImpl = new DelegatingHandlerImpl(new DelegatingHandlerImpl()); CloudQueueClient queueClient = GenerateCloudQueueClient(delegatingHandlerImpl); queueClient.AuthenticationScheme = AuthenticationScheme.SharedKeyLite; string queueName = Guid.NewGuid().ToString("N"); CloudQueue queue = queueClient.GetQueueReference(queueName); queue.Create(); bool exists = queue.Exists(); Assert.IsTrue(exists); Assert.AreNotEqual(0, delegatingHandlerImpl.CallCount); }
public async Task CloudFileClientListSharesSegmentedAsync() { string name = GetRandomShareName(); List <string> shareNames = new List <string>(); DelegatingHandlerImpl delegatingHandlerImpl = new DelegatingHandlerImpl(new DelegatingHandlerImpl()); CloudFileClient fileClient = GenerateCloudFileClient(delegatingHandlerImpl); for (int i = 0; i < 3; i++) { string shareName = name + i.ToString(); shareNames.Add(shareName); await fileClient.GetShareReference(shareName).CreateAsync(); } List <string> listedShareNames = new List <string>(); FileContinuationToken token = null; do { ShareResultSegment resultSegment = await fileClient.ListSharesSegmentedAsync(token); token = resultSegment.ContinuationToken; foreach (CloudFileShare share in resultSegment.Results) { Assert.IsTrue(fileClient.GetShareReference(share.Name).StorageUri.Equals(share.StorageUri)); listedShareNames.Add(share.Name); } }while (token != null); foreach (string shareName in listedShareNames) { if (shareNames.Remove(shareName)) { await fileClient.GetShareReference(shareName).DeleteAsync(); } } Assert.AreEqual(0, shareNames.Count); Assert.AreNotEqual(0, delegatingHandlerImpl.CallCount); }
public async Task CloudQueueClientListQueuesBasicAsync() { DelegatingHandlerImpl delegatingHandlerImpl = new DelegatingHandlerImpl(new DelegatingHandlerImpl()); CloudQueueClient client = GenerateCloudQueueClient(delegatingHandlerImpl); string prefix = GenerateNewQueueName(); List <string> queueNames = new List <string>(); int count = 30; for (int i = 0; i < count; i++) { queueNames.Add(prefix + i); } QueueResultSegment emptyResults = await client.ListQueuesSegmentedAsync(prefix, QueueListingDetails.All, null, null, null, null); Assert.AreEqual <int>(0, emptyResults.Results.Count()); foreach (string name in queueNames) { await client.GetQueueReference(name).CreateAsync(); } QueueResultSegment results = await client.ListQueuesSegmentedAsync(prefix, QueueListingDetails.All, null, null, null, null); foreach (CloudQueue queue in results.Results) { if (queueNames.Remove(queue.Name)) { await queue.DeleteAsync(); } else { Assert.Fail(); } } Assert.AreEqual <int>(count, results.Results.Count()); Assert.AreNotEqual(0, delegatingHandlerImpl.CallCount); }
public async Task CloudBlobClientListBlobsSegmentedWithPrefixAsync() { string name = "bb" + GetRandomContainerName(); DelegatingHandlerImpl delegatingHandlerImpl = new DelegatingHandlerImpl(new DelegatingHandlerImpl()); CloudBlobClient blobClient = GenerateCloudBlobClient(delegatingHandlerImpl); CloudBlobContainer rootContainer = blobClient.GetRootContainerReference(); CloudBlobContainer container = blobClient.GetContainerReference(name); try { await rootContainer.CreateIfNotExistsAsync(); await container.CreateAsync(); List <string> blobNames = await CreateBlobsAsync(container, 3, BlobType.BlockBlob); List <string> rootBlobNames = await CreateBlobsAsync(rootContainer, 2, BlobType.BlockBlob); BlobResultSegment results; BlobContinuationToken token = null; do { results = await blobClient.ListBlobsSegmentedAsync("bb", token); token = results.ContinuationToken; foreach (CloudBlockBlob blob in results.Results) { await blob.DeleteAsync(); rootBlobNames.Remove(blob.Name); } }while (token != null); Assert.AreEqual(0, rootBlobNames.Count); results = await blobClient.ListBlobsSegmentedAsync("bb", token); Assert.AreEqual(0, results.Results.Count()); Assert.IsNull(results.ContinuationToken); results = await blobClient.ListBlobsSegmentedAsync(name, token); Assert.AreEqual(0, results.Results.Count()); Assert.IsNull(results.ContinuationToken); token = null; do { results = await blobClient.ListBlobsSegmentedAsync(name + "/", token); token = results.ContinuationToken; foreach (CloudBlockBlob blob in results.Results) { Assert.IsTrue(blobNames.Remove(blob.Name)); } }while (token != null); Assert.AreEqual(0, blobNames.Count); Assert.AreNotEqual(0, delegatingHandlerImpl.CallCount); } finally { container.DeleteIfExistsAsync().Wait(); } }