Example #1
0
        public void ListBatchAccountsTest()
        {
            List <BatchAccountContext> pipelineOutput = new List <BatchAccountContext>();

            string              accountName01     = "account01";
            string              resourceGroup     = "resourceGroup";
            AccountResource     accountResource01 = BatchTestHelpers.CreateAccountResource(accountName01, resourceGroup);
            string              accountName02     = "account02";
            AccountResource     accountResource02 = BatchTestHelpers.CreateAccountResource(accountName02, resourceGroup);
            BatchAccountContext expected01        = BatchAccountContext.ConvertAccountResourceToNewAccountContext(accountResource01);
            BatchAccountContext expected02        = BatchAccountContext.ConvertAccountResourceToNewAccountContext(accountResource02);

            batchClientMock.Setup(b => b.ListAccounts(resourceGroup, null)).Returns(new List <BatchAccountContext>()
            {
                expected01, expected02
            });

            cmdlet.AccountName       = null;
            cmdlet.ResourceGroupName = resourceGroup;
            cmdlet.Tag = null;

            cmdlet.ExecuteCmdlet();

            commandRuntimeMock.Verify(r => r.WriteObject(expected01), Times.Once());
            commandRuntimeMock.Verify(r => r.WriteObject(expected02), Times.Once());
        }
        public void NewBatchWithAutoStorageAccountTest()
        {
            string accountName   = "account01";
            string resourceGroup = "resourceGroup";
            string location      = "location";
            string storageId     = "storageId";
            AccountCreateParameters actualCreateParameters = null;

            // Setup the mock client to return a fake response and capture the account create parameters
            BatchAccount        accountResource = BatchTestHelpers.CreateAccountResource(accountName, resourceGroup, location);
            BatchAccountContext fakeResponse    = BatchAccountContext.ConvertAccountResourceToNewAccountContext(accountResource, null);

            batchClientMock.Setup(b => b.CreateAccount(It.IsAny <AccountCreateParameters>()))
            .Returns(fakeResponse)
            .Callback((AccountCreateParameters p) => actualCreateParameters = p);

            // Setup and run the cmdlet
            cmdlet.AccountName          = accountName;
            cmdlet.ResourceGroupName    = resourceGroup;
            cmdlet.Location             = location;
            cmdlet.AutoStorageAccountId = storageId;
            cmdlet.ExecuteCmdlet();

            // Verify the fake response was written to the pipeline and that the captured account create
            // parameters matched expectations.
            commandRuntimeMock.Verify(r => r.WriteObject(fakeResponse), Times.Once());
            Assert.Equal(accountName, actualCreateParameters.BatchAccount);
            Assert.Equal(resourceGroup, actualCreateParameters.ResourceGroup);
            Assert.Equal(location, actualCreateParameters.Location);
            Assert.Equal(storageId, actualCreateParameters.AutoStorageAccountId);
        }
        public void UpdateAccountTest()
        {
            string accountName   = "account01";
            string resourceGroup = "resourceGroup";

            Hashtable[] tags = new[]
            {
                new Hashtable
                {
                    { "Name", "tagName" },
                    { "Value", "tagValue" }
                }
            };
            AccountResource     accountResource = BatchTestHelpers.CreateAccountResource(accountName, resourceGroup, tags);
            BatchAccountContext expected        = BatchAccountContext.ConvertAccountResourceToNewAccountContext(accountResource);

            batchClientMock.Setup(b => b.UpdateAccount(resourceGroup, accountName, tags)).Returns(expected);

            cmdlet.AccountName       = accountName;
            cmdlet.ResourceGroupName = resourceGroup;
            cmdlet.Tag = tags;

            cmdlet.ExecuteCmdlet();

            commandRuntimeMock.Verify(r => r.WriteObject(expected), Times.Once());
        }
Example #4
0
        public void GetBatchAccountTest()
        {
            string              accountName     = "account01";
            string              resourceGroup   = "resourceGroup";
            AccountResource     accountResource = BatchTestHelpers.CreateAccountResource(accountName, resourceGroup);
            BatchAccountContext expected        = BatchAccountContext.ConvertAccountResourceToNewAccountContext(accountResource);

            batchClientMock.Setup(b => b.GetAccount(resourceGroup, accountName)).Returns(expected);

            cmdlet.AccountName       = accountName;
            cmdlet.ResourceGroupName = resourceGroup;

            cmdlet.ExecuteCmdlet();

            commandRuntimeMock.Verify(r => r.WriteObject(expected), Times.Once());
        }
Example #5
0
        public void GetBatchAccount_IdentityTest()
        {
            string              accountName     = "account01";
            string              resourceGroup   = "resourceGroup";
            BatchAccount        accountResource = BatchTestHelpers.CreateAccountResource(accountName, resourceGroup, identity: new BatchAccountIdentity(ResourceIdentityType.None, string.Empty, string.Empty, null as IDictionary <string, UserAssignedIdentities>));
            BatchAccountContext expected        = BatchAccountContext.ConvertAccountResourceToNewAccountContext(accountResource, null);

            batchClientMock.Setup(b => b.GetAccount(resourceGroup, accountName)).Returns(expected);

            cmdlet.AccountName       = accountName;
            cmdlet.ResourceGroupName = resourceGroup;

            cmdlet.ExecuteCmdlet();

            commandRuntimeMock.Verify(r => r.WriteObject(expected), Times.Once());
        }
        public void NewBatchWithAutoStorageAccountTest()
        {
            string accountName   = "account01";
            string resourceGroup = "resourceGroup";
            string location      = "location";
            string storageId     = "storageId";

            BatchAccount        accountResource = BatchTestHelpers.CreateAccountResource(accountName, resourceGroup);
            BatchAccountContext expected        = BatchAccountContext.ConvertAccountResourceToNewAccountContext(accountResource);

            batchClientMock.Setup(b => b.CreateAccount(resourceGroup, accountName, location, null, storageId)).Returns(expected);

            cmdlet.AccountName          = accountName;
            cmdlet.ResourceGroupName    = resourceGroup;
            cmdlet.Location             = location;
            cmdlet.AutoStorageAccountId = storageId;

            cmdlet.ExecuteCmdlet();

            commandRuntimeMock.Verify(r => r.WriteObject(expected), Times.Once());
        }
        public void GetBatchAccountKeysTest()
        {
            string primaryKey   = "pKey";
            string secondaryKey = "sKey";

            string              accountName     = "account01";
            string              resourceGroup   = "resourceGroup";
            BatchAccount        accountResource = BatchTestHelpers.CreateAccountResource(accountName, resourceGroup);
            BatchAccountContext expected        = BatchAccountContext.ConvertAccountResourceToNewAccountContext(accountResource, null);

            expected.PrimaryAccountKey   = primaryKey;
            expected.SecondaryAccountKey = secondaryKey;

            batchClientMock.Setup(b => b.GetKeys(resourceGroup, accountName)).Returns(expected);

            cmdlet.AccountName       = accountName;
            cmdlet.ResourceGroupName = resourceGroup;

            cmdlet.ExecuteCmdlet();

            commandRuntimeMock.Verify(r => r.WriteObject(expected), Times.Once());
        }
        public void RegenBatchAccountKeysTest()
        {
            string newPrimaryKey = "newPrimaryKey";
            string newSecondaryKey = "newSecondaryKey";

            string accountName = "account01";
            string resourceGroup = "resourceGroup";
            AccountKeyType keyType = AccountKeyType.Primary;
            AccountResource accountResource = BatchTestHelpers.CreateAccountResource(accountName, resourceGroup);
            BatchAccountContext expected = BatchAccountContext.ConvertAccountResourceToNewAccountContext(accountResource);
            expected.PrimaryAccountKey = newPrimaryKey;
            expected.SecondaryAccountKey = newSecondaryKey;

            batchClientMock.Setup(b => b.RegenerateKeys(resourceGroup, accountName, keyType)).Returns(expected);

            cmdlet.AccountName = accountName;
            cmdlet.ResourceGroupName = resourceGroup;
            cmdlet.KeyType = keyType.ToString();
            cmdlet.ExecuteCmdlet();

            commandRuntimeMock.Verify(r => r.WriteObject(expected), Times.Once());
        }
        public void CanCreateUserSubscriptionBatchAccount()
        {
            string                  accountName            = "account01";
            string                  resourceGroup          = "resourceGroup";
            string                  location               = "location";
            string                  keyVaultId             = "subscriptions/0000/resourceGroups/resourceGroup/providers/Microsoft.KeyVault/vaults/myVault";
            string                  keyVaultUrl            = "https://myVault.vault.azure.com";
            PoolAllocationMode      allocationMode         = PoolAllocationMode.UserSubscription;
            AccountCreateParameters actualCreateParameters = null;

            // Setup the mock client to return a fake response and capture the account create parameters
            BatchAccount        accountResource = BatchTestHelpers.CreateAccountResource(accountName, resourceGroup, location);
            BatchAccountContext fakeResponse    = BatchAccountContext.ConvertAccountResourceToNewAccountContext(accountResource, null);

            batchClientMock.Setup(b => b.CreateAccount(It.IsAny <AccountCreateParameters>()))
            .Returns(fakeResponse)
            .Callback((AccountCreateParameters p) => actualCreateParameters = p);

            // Setup and run the cmdlet
            cmdlet.AccountName        = accountName;
            cmdlet.ResourceGroupName  = resourceGroup;
            cmdlet.Location           = location;
            cmdlet.PoolAllocationMode = allocationMode;
            cmdlet.KeyVaultId         = keyVaultId;
            cmdlet.KeyVaultUrl        = keyVaultUrl;
            cmdlet.ExecuteCmdlet();

            // Verify the fake response was written to the pipeline and that the captured account create
            // parameters matched expectations.
            commandRuntimeMock.Verify(r => r.WriteObject(fakeResponse), Times.Once());
            Assert.Equal(accountName, actualCreateParameters.BatchAccount);
            Assert.Equal(resourceGroup, actualCreateParameters.ResourceGroup);
            Assert.Equal(location, actualCreateParameters.Location);
            Assert.Equal(allocationMode, actualCreateParameters.PoolAllocationMode);
            Assert.Equal(keyVaultId, actualCreateParameters.KeyVaultId);
            Assert.Equal(keyVaultUrl, actualCreateParameters.KeyVaultUrl);
        }