public void CanDeleteCloudServicesWithDuplicateNames()
        {
            var restClient = ServiceLocator.Instance.Locate <IRdfeClustersResourceRestClientFactory>()
                             .Create(this.DefaultHandler, this.HdInsightCertCred, this.Context, false, ClustersPocoClient.GetSchemaVersion(Capabilities));

            using (var clustersPocoClient = new ClustersPocoClient(this.HdInsightCertCred, false, this.Context, Capabilities, restClient))
            {
                CreateCluster("testcluster1", "West US");
                CreateCluster("testcluster1", "East US");
                var containersList = clustersPocoClient.ListContainers().Result;
                Assert.AreEqual(containersList.Count, 2);
                // Now delete cluster without region name and both should be deleted
                try
                {
                    clustersPocoClient.DeleteContainer("testcluster1").Wait();
                    Assert.Fail("Exception not thrown");
                }
                catch (AggregateException age)
                {
                    Assert.IsTrue(age.InnerException != null, "Inner exception is not null");
                    Assert.IsTrue(age.InnerException is InvalidOperationException, "Exception is not InvalidOperationException");
                    Assert.AreEqual("Multiple clusters found with dnsname 'testcluster1'. Please specify dnsname and location", age.InnerException.Message, "Message not as expected");
                }
                containersList = clustersPocoClient.ListContainers().Result;
                Assert.AreEqual(containersList.Count, 2);
            }
        }
        public void CanDeleteCloudServiceWithRegionWithDuplicateNames()
        {
            var restClient = ServiceLocator.Instance.Locate <IRdfeClustersResourceRestClientFactory>()
                             .Create(this.DefaultHandler, this.HdInsightCertCred, this.Context, false, ClustersPocoClient.GetSchemaVersion(Capabilities));

            using (var clustersPocoClient = new ClustersPocoClient(this.HdInsightCertCred, false, this.Context, Capabilities, restClient))
            {
                CreateCluster("testcluster1", "West US");
                CreateCluster("testcluster1", "East US");
                var containersList = clustersPocoClient.ListContainers().Result;
                Assert.AreEqual(containersList.Count, 2);
                // Now delete cluster without region name and both should be deleted
                clustersPocoClient.DeleteContainer("testcluster1", "West US");
                containersList = clustersPocoClient.ListContainers().Result;
                Assert.AreEqual(containersList.Count, 1);
                Assert.IsNotNull(clustersPocoClient.ListContainer("testcluster1", "East US"));
                Assert.IsNotNull(clustersPocoClient.ListContainer("testcluster1", "East US").Result.Location.Equals("East US"));
            }
        }
 public void CanListCloudServicesEmpty()
 {
     var restClient = ServiceLocator.Instance.Locate<IRdfeClustersResourceRestClientFactory>()
                                               .Create(this.DefaultHandler, this.HdInsightCertCred, this.Context, false, ClustersPocoClient.GetSchemaVersion(Capabilities));
     using (var clustersPocoClient = new ClustersPocoClient(this.HdInsightCertCred, false, this.Context, Capabilities, restClient))
     {
         var containersList = clustersPocoClient.ListContainers().Result;
         Assert.AreEqual(containersList.Count, 0);
     }
 }
        public void CanListCloudServicesEmpty()
        {
            var restClient = ServiceLocator.Instance.Locate <IRdfeClustersResourceRestClientFactory>()
                             .Create(this.DefaultHandler, this.HdInsightCertCred, this.Context, false, ClustersPocoClient.GetSchemaVersion(Capabilities));

            using (var clustersPocoClient = new ClustersPocoClient(this.HdInsightCertCred, false, this.Context, Capabilities, restClient))
            {
                var containersList = clustersPocoClient.ListContainers().Result;
                Assert.AreEqual(containersList.Count, 0);
            }
        }
        public void CanListCloudServicesWithDuplicateNames()
        {
            var restClient = ServiceLocator.Instance.Locate <IRdfeClustersResourceRestClientFactory>()
                             .Create(this.DefaultHandler, this.HdInsightCertCred, this.Context, false, ClustersPocoClient.GetSchemaVersion(Capabilities));

            using (var clustersPocoClient = new ClustersPocoClient(this.HdInsightCertCred, false, this.Context, Capabilities, restClient))
            {
                CreateCluster("testcluster1", "West US");
                CreateCluster("testcluster1", "East US");
                var containersList = clustersPocoClient.ListContainers().Result;
                Assert.AreEqual(containersList.Count, 2);
                Assert.IsNotNull(containersList.SingleOrDefault(cluster => cluster.Name.Equals("testcluster1") && cluster.Location.Equals("West US")));
                Assert.IsNotNull(containersList.SingleOrDefault(cluster => cluster.Name.Equals("testcluster1") && cluster.Location.Equals("East US")));
            }
        }
 public void CanListCloudServices()
 {
     var restClient = ServiceLocator.Instance.Locate<IRdfeClustersResourceRestClientFactory>()
                                               .Create(this.DefaultHandler, this.HdInsightCertCred, this.Context, false, ClustersPocoClient.GetSchemaVersion(Capabilities));
     using (var clustersPocoClient = new ClustersPocoClient(this.HdInsightCertCred, false, this.Context, Capabilities, restClient))
     {
         CreateCluster("testcluster1", "West US");
         CreateCluster("testcluster2", "West US");
         CreateCluster("testcluster3", "East US");
         var containersList = clustersPocoClient.ListContainers().Result;
         Assert.AreEqual(containersList.Count, 3);
         Assert.IsNotNull(containersList.SingleOrDefault(cluster => cluster.Name.Equals("testcluster1")));
         Assert.IsNotNull(containersList.SingleOrDefault(cluster => cluster.Name.Equals("testcluster2")));
         Assert.IsNotNull(containersList.SingleOrDefault(cluster => cluster.Name.Equals("testcluster3")));
     }
 }
 public void CanGetCloudServicesWithDuplicateNames()
 {
     var restClient = ServiceLocator.Instance.Locate<IRdfeClustersResourceRestClientFactory>()
                                               .Create(this.DefaultHandler, this.HdInsightCertCred, this.Context, false, ClustersPocoClient.GetSchemaVersion(Capabilities));
     using (var clustersPocoClient = new ClustersPocoClient(this.HdInsightCertCred, false, this.Context, Capabilities, restClient))
     {
         CreateCluster("testcluster1", "West US");
         CreateCluster("testcluster1", "East US");
         var containersList = clustersPocoClient.ListContainers().Result;
         Assert.AreEqual(containersList.Count, 2);
         // Now list cluster without region name and the first one should always be returned
         Assert.IsNotNull(clustersPocoClient.ListContainer("testcluster1"));
         Assert.IsNotNull(clustersPocoClient.ListContainer("testcluster1").Result.Location.Equals("West US"));
         // Now list cluster with region name 
         Assert.IsNotNull(clustersPocoClient.ListContainer("testcluster1", "West US"));
         Assert.IsNotNull(clustersPocoClient.ListContainer("testcluster1", "West US").Result.Location.Equals("West US"));
         Assert.IsNotNull(clustersPocoClient.ListContainer("testcluster1", "East US"));
         Assert.IsNotNull(clustersPocoClient.ListContainer("testcluster1", "East US").Result.Location.Equals("East US"));
     }
 }
 public void CanDeleteCloudServicesWithDuplicateNames()
 {
     var restClient = ServiceLocator.Instance.Locate<IRdfeClustersResourceRestClientFactory>()
                                               .Create(this.DefaultHandler, this.HdInsightCertCred, this.Context, false, ClustersPocoClient.GetSchemaVersion(Capabilities));
     using (var clustersPocoClient = new ClustersPocoClient(this.HdInsightCertCred, false, this.Context, Capabilities, restClient))
     {
         CreateCluster("testcluster1", "West US");
         CreateCluster("testcluster1", "East US");
         var containersList = clustersPocoClient.ListContainers().Result;
         Assert.AreEqual(containersList.Count, 2);
         // Now delete cluster without region name and both should be deleted
         try
         {
             clustersPocoClient.DeleteContainer("testcluster1").Wait();
             Assert.Fail("Exception not thrown");
         }
         catch (AggregateException age)
         {
             Assert.IsTrue(age.InnerException != null, "Inner exception is not null");
             Assert.IsTrue(age.InnerException is InvalidOperationException, "Exception is not InvalidOperationException");
             Assert.AreEqual("Multiple clusters found with dnsname 'testcluster1'. Please specify dnsname and location", age.InnerException.Message, "Message not as expected");
         }
         containersList = clustersPocoClient.ListContainers().Result;
         Assert.AreEqual(containersList.Count, 2);
     }
 }