public void GetPolicyFromRoot() { CloudBlobContainer container = blobUtil.CreateContainer("$root"); Utility.ClearStoredAccessPolicy <CloudBlobContainer>(container); Utility.RawStoredAccessPolicy samplePolicy = Utility.SetUpStoredAccessPolicyData <SharedAccessBlobPolicy>()[0]; try { CreateStoredAccessPolicy(samplePolicy.PolicyName, samplePolicy.Permission, samplePolicy.StartTime, samplePolicy.ExpiryTime, container); Test.Assert(CommandAgent.GetAzureStorageContainerStoredAccessPolicy(container.Name, samplePolicy.PolicyName), "Get stored access policy in container should succeed"); Test.Info("Get stored access policy:{0}", samplePolicy.PolicyName); SharedAccessBlobPolicy policy = Utility.SetupSharedAccessPolicy <SharedAccessBlobPolicy>(samplePolicy.StartTime, samplePolicy.ExpiryTime, samplePolicy.Permission); Collection <Dictionary <string, object> > comp = new Collection <Dictionary <string, object> >(); comp.Add(Utility.ConstructGetPolicyOutput <SharedAccessBlobPolicy>(policy, samplePolicy.PolicyName)); CommandAgent.OutputValidation(comp); } finally { Utility.ClearStoredAccessPolicy <CloudBlobContainer>(container); } }
public void GetPolicyVariations() { CloudBlobContainer container = blobUtil.CreateContainer(); Utility.ClearStoredAccessPolicy <CloudBlobContainer>(container); try { //empty policies Test.Assert(CommandAgent.GetAzureStorageContainerStoredAccessPolicy(container.Name, null), "Get stored access policy in container should succeed"); Test.Info("Get stored access policy"); if (lang == Language.PowerShell) { Assert.IsTrue(CommandAgent.Output.Count == 0); } else { Assert.IsTrue(CommandAgent.Output[0].Count == 0); } //get all policies List <Utility.RawStoredAccessPolicy> samplePolicies = Utility.SetUpStoredAccessPolicyData <SharedAccessBlobPolicy>(); Collection <Dictionary <string, object> > comp = new Collection <Dictionary <string, object> >(); foreach (Utility.RawStoredAccessPolicy samplePolicy in samplePolicies) { CreateStoredAccessPolicy(samplePolicy.PolicyName, samplePolicy.Permission, samplePolicy.StartTime, samplePolicy.ExpiryTime, container, false); SharedAccessBlobPolicy policy = Utility.SetupSharedAccessPolicy <SharedAccessBlobPolicy>(samplePolicy.StartTime, samplePolicy.ExpiryTime, samplePolicy.Permission); comp.Add(Utility.ConstructGetPolicyOutput <SharedAccessBlobPolicy>(policy, samplePolicy.PolicyName)); } Test.Assert(CommandAgent.GetAzureStorageContainerStoredAccessPolicy(container.Name, null), "Get stored access policy in container should succeed"); Test.Info("Get stored access policy"); if (lang == Language.PowerShell) { CommandAgent.OutputValidation(comp); } else { Test.Assert(comp.Count == CommandAgent.Output[0].Count, "Comparison size: {0} = {1} Output size", comp.Count, CommandAgent.Output[0].Count); } } finally { blobUtil.RemoveContainer(container); } }
public void GetPolicyInvalid() { CloudBlobContainer container = blobUtil.CreateContainer(); Utility.ClearStoredAccessPolicy <CloudBlobContainer>(container); try { string policyName = "policy"; Test.Assert(!CommandAgent.GetAzureStorageContainerStoredAccessPolicy(container.Name, policyName), "Get non-existing stored access policy should fail"); if (lang == Language.PowerShell) { ExpectedContainErrorMessage("Can not find policy"); } else { ExpectedContainErrorMessage(string.Format("The policy {0} doesn't exist", policyName)); } string invalidName = FileNamingGenerator.GenerateValidASCIIOptionValue(65); Test.Assert(!CommandAgent.GetAzureStorageContainerStoredAccessPolicy(container.Name, invalidName), "Get stored access policy with name length larger than 64 should fail"); if (lang == Language.PowerShell) { ExpectedContainErrorMessage("Can not find policy"); } else { ExpectedContainErrorMessage(string.Format("The policy {0} doesn't exist", invalidName)); } Test.Assert(!CommandAgent.GetAzureStorageContainerStoredAccessPolicy("CONTAINER", policyName), "Get stored access policy from invalid container name should fail"); if (lang == Language.PowerShell) { ExpectedContainErrorMessage("The specifed resource name contains invalid characters"); } else { ExpectedContainErrorMessage("Container name format is incorrect"); } Test.Assert(!CommandAgent.GetAzureStorageContainerStoredAccessPolicy("$logs", policyName), "Get stored access policy from invalid container name should fail"); if (lang == Language.PowerShell) { ExpectedContainErrorMessage("Can not find policy"); } else { ExpectedContainErrorMessage(string.Format("The policy {0} doesn't exist", policyName)); } blobUtil.RemoveContainer(container); Test.Assert(!CommandAgent.GetAzureStorageContainerStoredAccessPolicy(container.Name, policyName), "Get stored access policy from invalid container name should fail"); ExpectedContainErrorMessage("The specified container does not exist."); } finally { blobUtil.RemoveContainer(container); } }