Пример #1
0
        public void GetPolicyVariations()
        {
            CloudQueue queue = queueUtil.CreateQueue();

            Utility.ClearStoredAccessPolicy <CloudQueue>(queue);

            try
            {
                //empty policies
                Test.Assert(CommandAgent.GetAzureStorageQueueStoredAccessPolicy(queue.Name, null),
                            "Get stored access policy in queue 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 <SharedAccessQueuePolicy>();
                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, queue, false);
                    SharedAccessQueuePolicy policy = Utility.SetupSharedAccessPolicy <SharedAccessQueuePolicy>(samplePolicy.StartTime, samplePolicy.ExpiryTime, samplePolicy.Permission);
                    comp.Add(Utility.ConstructGetPolicyOutput <SharedAccessQueuePolicy>(policy, samplePolicy.PolicyName));
                }

                Test.Assert(CommandAgent.GetAzureStorageQueueStoredAccessPolicy(queue.Name, null),
                            "Get stored access policy in table 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
            {
                queueUtil.RemoveQueue(queue);
            }
        }
Пример #2
0
        public void GetPolicyInvalid()
        {
            CloudQueue queue = queueUtil.CreateQueue();

            Utility.ClearStoredAccessPolicy <CloudQueue>(queue);

            try
            {
                string policyName = "policy";
                Test.Assert(!CommandAgent.GetAzureStorageQueueStoredAccessPolicy(queue.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.GetAzureStorageQueueStoredAccessPolicy(queue.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.GetAzureStorageQueueStoredAccessPolicy("CONTAINER", policyName),
                            "Get stored access policy from invalid queue name should fail");
                if (lang == Language.PowerShell)
                {
                    ExpectedContainErrorMessage("The specifed resource name contains invalid characters");
                }
                else
                {
                    ExpectedContainErrorMessage("Queue name format is incorrect");
                }

                string queueName = Utility.GenNameString("queue");
                queueUtil.RemoveQueue(queueName);
                Test.Assert(!CommandAgent.GetAzureStorageQueueStoredAccessPolicy(queueName, policyName),
                            "Get stored access policy from invalid queue name should fail");
                if (lang == Language.PowerShell)
                {
                    ExpectedContainErrorMessage("The specified queue does not exist.");
                }
                else
                {
                    ExpectedContainErrorMessage("The specified queue does not exist.");
                }
            }
            finally
            {
                queueUtil.RemoveQueue(queue);
            }
        }