Exemple #1
0
        //public static void AssertAccountUpdate(DeviceUpdateAccount updatedAccount, DeviceUpdateAccountUpdateOptions updateParameters)
        //{
        //    Assert.AreEqual(updatedAccount.Data.Location, updateParameters.Location);
        //    if (updatedAccount.Data.Identity != null || updateParameters.Identity != null)
        //    {
        //        Assert.NotNull(updatedAccount.Data.Identity);
        //        Assert.NotNull(updateParameters.Identity);
        //        Assert.AreEqual(updatedAccount.Data.Identity.Type, updateParameters.Identity.Type);
        //    }
        //}

        public static void AssertInstanceUpdate(DeviceUpdateInstance updatedInstance, TagUpdateOptions updateParameters)
        {
            foreach (var kv in updatedInstance.Data.Tags)
            {
                Assert.True(updateParameters.Tags.ContainsKey(kv.Key));
                Assert.AreEqual(kv.Value, updateParameters.Tags[kv.Key]);
            }
        }
        public async Task DeleteInstances()
        {
            #region Snippet:Managing_Instances_DeleteAnInstance
            // First we need to get the instance collection from the specific account
            DeviceUpdateAccount account = await resourceGroup.GetDeviceUpdateAccounts().GetAsync("myAccount");

            DeviceUpdateInstanceCollection instanceCollection = account.GetDeviceUpdateInstances();
            // Now we can get the instance with GetAsync()
            DeviceUpdateInstance instance = await instanceCollection.GetAsync("myInstance");

            // With DeleteAsync(), we can delete the instance
            await instance.DeleteAsync(true);

            #endregion Snippet:Managing_Instances_DeleteAnInstance
        }
Exemple #3
0
        public async Task UpdateInstances()
        {
            #region Snippet:Managing_Instances_UpdateAnInstance
            // First we need to get the instance collection from the specific account
            DeviceUpdateAccount account = await resourceGroup.GetDeviceUpdateAccounts().GetAsync("myAccount");

            DeviceUpdateInstanceCollection instanceCollection = account.GetDeviceUpdateInstances();
            // Now we can get the instance with GetAsync()
            DeviceUpdateInstance instance = await instanceCollection.GetAsync("myInstance");

            // With AddTagAsync(), we can add tag to the instance
            instance = await instance.AddTagAsync("newTag", "newValue");

            #endregion Snippet:Managing_Instances_UpdateAnInstance
        }
        public async Task CreateOrUpdate()
        {
            Subscription subscription = await Client.GetDefaultSubscriptionAsync();

            ResourceGroup rg = await CreateResourceGroup(subscription, "testRg-");

            string accountName          = Recording.GenerateAssetName("Account-");
            DeviceUpdateAccount account = await CreateAccount(rg, accountName);

            string instanceName           = Recording.GenerateAssetName("Instance-");
            DeviceUpdateInstance instance = await CreateInstance(account, instanceName);

            Assert.AreEqual(instanceName, instance.Data.Name);
            Assert.ThrowsAsync <ArgumentNullException>(async() => _ = await account.GetDeviceUpdateInstances().CreateOrUpdateAsync(true, null, instance.Data));
            Assert.ThrowsAsync <ArgumentNullException>(async() => _ = await account.GetDeviceUpdateInstances().CreateOrUpdateAsync(true, instanceName, null));
        }
        public async Task Get()
        {
            Subscription subscription = await Client.GetDefaultSubscriptionAsync();

            ResourceGroup rg = await CreateResourceGroup(subscription, "testRg-");

            string accountName          = Recording.GenerateAssetName("Account-");
            DeviceUpdateAccount account = await CreateAccount(rg, accountName);

            string instanceName           = Recording.GenerateAssetName("Instance-");
            DeviceUpdateInstance instance = await CreateInstance(account, instanceName);

            DeviceUpdateInstance getInstance = await account.GetDeviceUpdateInstances().GetAsync(instanceName);

            ResourceDataHelper.AssertValidInstance(instance, getInstance);
            Assert.ThrowsAsync <ArgumentNullException>(async() => _ = await account.GetDeviceUpdateInstances().GetAsync(null));
        }
Exemple #6
0
        public async Task Delete()
        {
            Subscription subscription = await Client.GetDefaultSubscriptionAsync();

            ResourceGroup rg = await CreateResourceGroup(subscription, "testRg-");

            string accountName          = Recording.GenerateAssetName("Account-");
            DeviceUpdateAccount account = await CreateAccount(rg, accountName);

            string instanceName           = Recording.GenerateAssetName("Instance-");
            DeviceUpdateInstance instance = await CreateInstance(account, instanceName);

            await instance.DeleteAsync(WaitUntil.Completed);

            var ex = Assert.ThrowsAsync <RequestFailedException>(async() => await instance.GetAsync());

            Assert.AreEqual(404, ex.Status);
        }
        public async Task CreateInstances()
        {
            #region Snippet:Managing_Instances_CreateAnInstance
            // Create a new account
            string accountName             = "myAccount";
            DeviceUpdateAccountData input1 = new DeviceUpdateAccountData(AzureLocation.WestUS2);
            DeviceUpdateAccountCreateOrUpdateOperation lro1 = await resourceGroup.GetDeviceUpdateAccounts().CreateOrUpdateAsync(true, accountName, input1);

            DeviceUpdateAccount account = lro1.Value;
            // Get the instance collection from the specific account and create an instance
            string instanceName             = "myInstance";
            DeviceUpdateInstanceData input2 = new DeviceUpdateInstanceData(AzureLocation.WestUS2);
            input2.IotHubs.Add(new IotHubSettings("/subscriptions/.../resourceGroups/.../providers/Microsoft.Devices/IotHubs/..."));
            DeviceUpdateInstanceCreateOrUpdateOperation lro2 = await account.GetDeviceUpdateInstances().CreateOrUpdateAsync(true, instanceName, input2);

            DeviceUpdateInstance instance = lro2.Value;
            #endregion Snippet:Managing_Instances_CreateAnInstance
        }
Exemple #8
0
        public async Task AddTag()
        {
            Subscription subscription = await Client.GetDefaultSubscriptionAsync();

            ResourceGroup rg = await CreateResourceGroup(subscription, "testRg-");

            string accountName          = Recording.GenerateAssetName("Account-");
            DeviceUpdateAccount account = await CreateAccount(rg, accountName);

            string instanceName           = Recording.GenerateAssetName("Instance-");
            DeviceUpdateInstance instance = await CreateInstance(account, instanceName);

            string key = "newTag", value = "newValue";
            DeviceUpdateInstance updatedInstance = await instance.AddTagAsync(key, value);

            CollectionAssert.AreEquivalent(new Dictionary <string, string> {
                { key, value }
            }, updatedInstance.Data.Tags);
        }
Exemple #9
0
        public async Task Update()
        {
            Subscription subscription = await Client.GetDefaultSubscriptionAsync();

            ResourceGroup rg = await subscription.GetResourceGroups().GetAsync("DeviceUpdateResourceGroup");

            DeviceUpdateAccount account = await rg.GetDeviceUpdateAccounts().GetAsync("AzureDeviceUpdateAccount");

            DeviceUpdateInstance instance = await account.GetDeviceUpdateInstances().GetAsync("Instance");

            TagUpdateOptions updateOptions = new TagUpdateOptions();

            updateOptions.Tags.Add("newTag", "newValue");
            DeviceUpdateInstance updatedInstance = await instance.UpdateAsync(updateOptions);

            ResourceDataHelper.AssertInstanceUpdate(updatedInstance, updateOptions);
            updateOptions.Tags.Clear();
            updatedInstance = await instance.UpdateAsync(updateOptions);

            ResourceDataHelper.AssertInstanceUpdate(updatedInstance, updateOptions);
        }
Exemple #10
0
 public static void AssertValidInstance(DeviceUpdateInstance model, DeviceUpdateInstance getResult)
 {
     Assert.AreEqual(model.Data.Name, getResult.Data.Name);
     Assert.AreEqual(model.Data.Id, getResult.Data.Id);
     Assert.AreEqual(model.Data.ResourceType, getResult.Data.ResourceType);
     Assert.AreEqual(model.Data.ProvisioningState, getResult.Data.ProvisioningState);
     Assert.AreEqual(model.Data.AccountName, getResult.Data.AccountName);
     for (int i = 0; i < model.Data.IotHubs.Count; ++i)
     {
         Assert.AreEqual(model.Data.IotHubs[i].ResourceId, getResult.Data.IotHubs[i].ResourceId);
         Assert.AreEqual(model.Data.IotHubs[i].IoTHubConnectionString, getResult.Data.IotHubs[i].IoTHubConnectionString);
         Assert.AreEqual(model.Data.IotHubs[i].EventHubConnectionString, getResult.Data.IotHubs[i].EventHubConnectionString);
     }
     Assert.AreEqual(model.Data.EnableDiagnostics, getResult.Data.EnableDiagnostics);
     Assert.AreEqual(model.Data.AccountName, getResult.Data.AccountName);
     if (model.Data.DiagnosticStorageProperties != null || getResult.Data.DiagnosticStorageProperties != null)
     {
         Assert.NotNull(model.Data.DiagnosticStorageProperties);
         Assert.NotNull(getResult.Data.DiagnosticStorageProperties);
         Assert.AreEqual(model.Data.DiagnosticStorageProperties.AuthenticationType, getResult.Data.DiagnosticStorageProperties.AuthenticationType);
         Assert.AreEqual(model.Data.DiagnosticStorageProperties.ConnectionString, getResult.Data.DiagnosticStorageProperties.ConnectionString);
         Assert.AreEqual(model.Data.DiagnosticStorageProperties.ResourceId, getResult.Data.DiagnosticStorageProperties.ResourceId);
     }
 }
Exemple #11
0
 public static void AssertInstanceUpdate(DeviceUpdateInstance updatedInstance, string key, string value)
 {
     Assert.GreaterOrEqual(updatedInstance.Data.Tags.Count, 1);
     Assert.IsTrue(updatedInstance.Data.Tags.ContainsKey(key));
     Assert.AreEqual(updatedInstance.Data.Tags[key], value);
 }