Пример #1
0
 public AlternativeEnvironmentIHDInsightSubscriptionCertificateCredentialsFactory()
 {
     creds = IntegrationTestBase.GetCredentialsForEnvironmentType(EnvironmentType.Current);
 }
Пример #2
0
        [Timeout(5 * 60 * 1000)] // ms
        public async Task ICanPerformA_CreateDeleteContainers_Using_RestClient_ManualEnvironment()
        {
            var creds = IntegrationTestBase.GetCredentialsForEnvironmentType(EnvironmentType.Current);

            if (creds == null)
            {
                Assert.Inconclusive("Alternative Azure Endpoint wasn't set up");
            }

            IHDInsightCertificateCredential   certCreds       = IntegrationTestBase.GetValidCredentials() as IHDInsightCertificateCredential;
            IHDInsightAccessTokenCredential   tokenCreds      = IntegrationTestBase.GetValidCredentials() as IHDInsightAccessTokenCredential;
            IHDInsightSubscriptionCredentials tempCredentials = null;

            if (certCreds != null)
            {
                tempCredentials = new HDInsightCertificateCredential()
                {
                    SubscriptionId = creds.SubscriptionId,
                    Certificate    = certCreds.Certificate
                };
            }
            else if (tokenCreds != null)
            {
                tempCredentials = new HDInsightAccessTokenCredential()
                {
                    SubscriptionId = creds.SubscriptionId,
                    AccessToken    = tokenCreds.AccessToken
                };
            }
            IHDInsightSubscriptionCredentials credentials = new AlternativeEnvironmentIHDInsightSubscriptionCertificateCredentialsFactory().Create(tempCredentials);

            var client         = new HDInsightManagementRestClient(credentials, GetAbstractionContext(), false);
            var dnsName        = GetRandomClusterName();
            var location       = "East US";
            var subscriptionId = credentials.SubscriptionId;

            var createPayload = String.Format(CreateContainerGenericRequest, dnsName, location, subscriptionId, Guid.NewGuid());
            var xmlReader     = new XmlTextReader(new StringReader(createPayload));
            var resource      = new Resource()
            {
                IntrinsicSettings = new[] { new XmlDocument().ReadNode(xmlReader) }
            };
            var result = await client.ListCloudServices();

            Assert.IsTrue(!this.ContainsContainer(dnsName, result.Content));

            await client.CreateContainer(dnsName, location, resource.SerializeToXml());

            result = await client.ListCloudServices();

            bool containsContiner = false;

            while (!containsContiner)
            {
                result = await client.ListCloudServices();

                containsContiner = this.ContainsContainer(dnsName, result.Content);
                await Task.Delay(100);
            }

            await client.DeleteContainer(dnsName, location);

            containsContiner = true;
            while (containsContiner)
            {
                result = await client.ListCloudServices();

                containsContiner = this.ContainsContainer(dnsName, result.Content);
                await Task.Delay(100);
            }
        }