public void CreateAListOfSharesWhileSomeOfThemAlreadyExistsTest() { int numberOfSharesToBeCreated = this.randomProvider.Next(5, 20); List <string> shareNames = Enumerable.Range(0, numberOfSharesToBeCreated).Select(x => CloudFileUtil.GenerateUniqueFileShareName()).ToList(); int numberOfSharesAlreadyExists = this.randomProvider.Next(1, numberOfSharesToBeCreated - 1); List <string> existingShareNames = shareNames.RandomlySelect(numberOfSharesAlreadyExists, this.randomProvider).ToList(); foreach (string shareName in shareNames) { if (fileUtil.FileShareExists(shareName) && (!existingShareNames.Contains(shareName))) { existingShareNames.Add(shareName); } } try { foreach (string shareName in existingShareNames) { fileUtil.EnsureFileShareExists(shareName); } CommandAgent.NewFileShareFromPipeline(); var result = CommandAgent.Invoke(shareNames); CommandAgent.AssertErrors( err => err.AssertError(AssertUtil.ShareAlreadyExistsFullQualifiedErrorId), numberOfSharesAlreadyExists); foreach (string shareName in shareNames) { fileUtil.AssertFileShareExists(shareName, "File share should exist after created."); } } finally { foreach (string shareName in shareNames) { fileUtil.DeleteFileShareIfExists(shareName); } } }
public void PipelineMultipleShareNamesTest() { // TODO: Generate more random names for file shares after the // naming rules is settled down. int numberOfShares = this.randomProvider.Next(2, 33); string[] names = Enumerable.Range(0, numberOfShares) .Select(i => CloudFileUtil.GenerateUniqueFileShareName()).ToArray(); var client = StorageAccount.CreateCloudFileClient(); // Ensure all file shares are not exists for (int i = 0; i < names.Length; i++) { while (client.GetShareReference(names[i]).Exists()) { names[i] = CloudFileUtil.GenerateUniqueFileShareName(); } } try { CommandAgent.NewFileShareFromPipeline(); var result = CommandAgent.Invoke(names); CommandAgent.AssertNoError(); result.AssertObjectCollection(obj => result.AssertCloudFileContainer(obj, new List <string>(names)), numberOfShares); } finally { foreach (string fileShareName in names) { fileUtil.DeleteFileShareIfExists(fileShareName); } } }