public void CognitiveServicesCreateAccountErrorTest() { var handler = new RecordedDelegatingHandler { StatusCodeToReturn = HttpStatusCode.OK }; using (MockContext context = MockContext.Start(this.GetType().FullName)) { var resourcesClient = CognitiveServicesManagementTestUtilities.GetResourceManagementClient(context, handler); var cognitiveServicesMgmtClient = CognitiveServicesManagementTestUtilities.GetCognitiveServicesManagementClient(context, handler); // Create resource group var rgname = CognitiveServicesManagementTestUtilities.CreateResourceGroup(resourcesClient); var accountName = TestUtilities.GenerateName("csa"); var parameters = new CognitiveServicesAccountCreateParameters { Sku = new Sku { Name = "F0" }, Kind = "ComputerVision", Location = CognitiveServicesManagementTestUtilities.DefaultLocation, Properties = new object(), }; CognitiveServicesManagementTestUtilities.ValidateExpectedException( () => cognitiveServicesMgmtClient.Accounts.Create("NotExistedRG", accountName, parameters), "ResourceGroupNotFound"); parameters.Location = "BLA"; CognitiveServicesManagementTestUtilities.ValidateExpectedException( () => cognitiveServicesMgmtClient.Accounts.Create(rgname, accountName, parameters), "LocationNotAvailableForResourceType"); } }
public override void ExecuteCmdlet() { base.ExecuteCmdlet(); RunCmdLet(() => { CognitiveServicesAccountCreateParameters createParameters = new CognitiveServicesAccountCreateParameters() { Location = this.Location, Kind = this.Type, // must have value, mandatory parameter Sku = new Sku(this.SkuName), Tags = TagsConversionHelper.CreateTagDictionary(Tag), Properties = new object(), // Must not be null according to Azure RM spec. Also there is no actual properties to pass, so not exposing it through cmdlet }; if (ShouldProcess( this.Name, string.Format(CultureInfo.CurrentCulture, Resources.NewAccount_ProcessMessage, this.Name, this.Type, this.SkuName, this.Location)) || Force.IsPresent) { var createAccountResponse = this.CognitiveServicesClient.CognitiveServicesAccounts.Create( this.ResourceGroupName, this.Name, createParameters); var cognitiveServicesAccount = this.CognitiveServicesClient.CognitiveServicesAccounts.GetProperties(this.ResourceGroupName, this.Name); this.WriteCognitiveServicesAccount(cognitiveServicesAccount); } }); }
public void CognitiveServicesAccountMinMaxNameLengthTest() { var handler = new RecordedDelegatingHandler { StatusCodeToReturn = HttpStatusCode.OK }; using (MockContext context = MockContext.Start(this.GetType().FullName)) { var resourcesClient = CognitiveServicesManagementTestUtilities.GetResourceManagementClient(context, handler); var cognitiveServicesMgmtClient = CognitiveServicesManagementTestUtilities.GetCognitiveServicesManagementClient(context, handler); // Create resource group var rgname = CognitiveServicesManagementTestUtilities.CreateResourceGroup(resourcesClient); var parameters = new CognitiveServicesAccountCreateParameters { Sku = new Sku { Name = "S0" }, Kind = "Face", Location = CognitiveServicesManagementTestUtilities.DefaultLocation, Properties = new object(), }; var minName = "zz"; var maxName = "AcadAcadAcadAcadAcadAcadAcadAcadAcadAcadAcadAcadAcadAcadAcadAcad"; var minAccount = cognitiveServicesMgmtClient.Accounts.Create(rgname, minName, parameters); var maxAccount = cognitiveServicesMgmtClient.Accounts.Create(rgname, maxName, parameters); Assert.Equal(minName, minAccount.Name); Assert.Equal(maxName, maxAccount.Name); } }
public override void ExecuteCmdlet() { base.ExecuteCmdlet(); RunCmdLet(() => { CognitiveServicesAccountCreateParameters createParameters = new CognitiveServicesAccountCreateParameters() { Location = Location, Kind = Type, // must have value, mandatory parameter Sku = new Sku(SkuName), Tags = TagsConversionHelper.CreateTagDictionary(Tag), Properties = string.IsNullOrWhiteSpace(CustomSubdomainName) ? new object(): JToken.Parse(string.Format( CultureInfo.InvariantCulture, "{{\"customSubDomainName\":\"{0}\"}}", CustomSubdomainName)) }; if (ShouldProcess( Name, string.Format(CultureInfo.CurrentCulture, Resources.NewAccount_ProcessMessage, Name, Type, SkuName, Location))) { if (Type.StartsWith("Bing.", StringComparison.InvariantCultureIgnoreCase)) { if (Force.IsPresent) { WriteWarning(Resources.NewAccount_Notice); } else { bool yesToAll = false, noToAll = false; if (!ShouldContinue(Resources.NewAccount_Notice, "Notice", true, ref yesToAll, ref noToAll)) { return; } } } try { CognitiveServicesAccount createAccountResponse = CognitiveServicesClient.Accounts.Create( ResourceGroupName, Name, createParameters); } catch (Exception ex) { // Give users a specific message says `Failed to create Cognitive Services account.` // Details should able be found in the exception. throw new Exception("Failed to create Cognitive Services account.", ex); } CognitiveServicesAccount cognitiveServicesAccount = CognitiveServicesClient.Accounts.GetProperties(ResourceGroupName, Name); WriteCognitiveServicesAccount(cognitiveServicesAccount); } }); }
static void create_resource(CognitiveServicesManagementClient client, string resource_name, string kind, string sku_name, string location) { Console.WriteLine("Creating resource: " + resource_name + "..."); // The parameter "properties" must be an empty object. var parameters = new CognitiveServicesAccountCreateParameters(new Sku(sku_name), kind, location, new object()); var result = client.Accounts.Create(resource_group_name, resource_name, parameters); Console.WriteLine("Resource created."); Console.WriteLine("ID: " + result.Id); Console.WriteLine("Provisioning state: " + result.ProvisioningState); Console.WriteLine(); }
public static string CreateCognitiveServicesAccount(CognitiveServicesManagementClient cognitiveServicesMgmtClient, string rgname, string kind = null) { string accountName = TestUtilities.GenerateName("csa"); CognitiveServicesAccountCreateParameters parameters = GetDefaultCognitiveServicesAccountParameters(); if (!string.IsNullOrEmpty(kind)) { parameters.Kind = kind; } var createRequest2 = cognitiveServicesMgmtClient.Accounts.Create(rgname, accountName, parameters); return(accountName); }
public static CognitiveServicesAccountCreateParameters GetDefaultCognitiveServicesAccountParameters() { CognitiveServicesAccountCreateParameters account = new CognitiveServicesAccountCreateParameters { Location = DefaultLocation, Tags = DefaultTags, Sku = new Microsoft.Azure.Management.CognitiveServices.Models.Sku { Name = DefaultSkuName }, Kind = DefaultKind, Properties = new object(), }; return(account); }
public static CognitiveServicesAccountCreateParameters GetDefaultCognitiveServicesAccountParameters() { CognitiveServicesAccountCreateParameters account = new CognitiveServicesAccountCreateParameters { Location = DefaultLocation, Tags = DefaultTags, Sku = new Sku { Name = DefaultSkuName }, Kind = DefaultKind, Properties = new object(), }; return(account); }
public override void ExecuteCmdlet() { base.ExecuteCmdlet(); RunCmdLet(() => { CognitiveServicesAccountCreateParameters createParameters = new CognitiveServicesAccountCreateParameters() { Location = Location, Kind = Type, // must have value, mandatory parameter Sku = new Sku(SkuName), Tags = TagsConversionHelper.CreateTagDictionary(Tag), Properties = string.IsNullOrWhiteSpace(CustomSubdomainName) ? new object(): JToken.Parse(string.Format( CultureInfo.InvariantCulture, "{{\"customSubDomainName\":\"{0}\"}}", CustomSubdomainName)) }; if (ShouldProcess( Name, string.Format(CultureInfo.CurrentCulture, Resources.NewAccount_ProcessMessage, Name, Type, SkuName, Location))) { if (Force.IsPresent) { WriteWarning(Resources.NewAccount_Notice); } else { bool yesToAll = false, noToAll = false; if (!ShouldContinue(Resources.NewAccount_Notice, "Notice", true, ref yesToAll, ref noToAll)) { return; } } CognitiveServicesAccount createAccountResponse = CognitiveServicesClient.Accounts.Create( ResourceGroupName, Name, createParameters); CognitiveServicesAccount cognitiveServicesAccount = CognitiveServicesClient.Accounts.GetProperties(ResourceGroupName, Name); WriteCognitiveServicesAccount(cognitiveServicesAccount); } }); }
public void CognitiveServicesCreateAccountErrorTest2() { var handler = new RecordedDelegatingHandler { StatusCodeToReturn = HttpStatusCode.OK }; using (MockContext context = MockContext.Start(this.GetType().FullName)) { var resourcesClient = CognitiveServicesManagementTestUtilities.GetResourceManagementClient(context, handler); var cognitiveServicesMgmtClient = CognitiveServicesManagementTestUtilities.GetCognitiveServicesManagementClient(context, handler); // Create resource group var rgname = CognitiveServicesManagementTestUtilities.CreateResourceGroup(resourcesClient); var accountName = TestUtilities.GenerateName("csa"); var nonExistApiPara = new CognitiveServicesAccountCreateParameters { Sku = new Sku { Name = "F0" }, Kind = "NonExistAPI", Location = CognitiveServicesManagementTestUtilities.DefaultLocation, Properties = new object(), }; var nonExistSkuPara = new CognitiveServicesAccountCreateParameters { Sku = new Sku { Name = "N0" }, Kind = "Face", Location = CognitiveServicesManagementTestUtilities.DefaultLocation, Properties = new object(), }; CognitiveServicesManagementTestUtilities.ValidateExpectedException( () => cognitiveServicesMgmtClient.Accounts.Create(rgname, accountName, nonExistApiPara), "InvalidApiSetId"); CognitiveServicesManagementTestUtilities.ValidateExpectedException( () => cognitiveServicesMgmtClient.Accounts.Create(rgname, accountName, nonExistSkuPara), "InvalidSkuId"); } }
public static CognitiveServicesAccount CreateAndValidateAccountWithOnlyRequiredParameters(CognitiveServicesManagementClient cognitiveServicesMgmtClient, string rgName, string skuName, string accountType = "TextAnalytics", string location = null) { // Create account with only required params var accountName = TestUtilities.GenerateName("csa"); var parameters = new CognitiveServicesAccountCreateParameters { Sku = new Microsoft.Azure.Management.CognitiveServices.Models.Sku { Name = skuName }, Kind = accountType, Location = location ?? DefaultLocation, Properties = new object(), }; var account = cognitiveServicesMgmtClient.Accounts.Create(rgName, accountName, parameters); VerifyAccountProperties(account, false, accountType, skuName, location ?? DefaultLocation); return(account); }
public static CognitiveServicesAccount CreateAndValidateAccountWithOnlyRequiredParameters(CognitiveServicesManagementClient cognitiveServicesMgmtClient, string rgName, SkuName skuName, Kind accountType = Kind.Recommendations) { // Create account with only required params var accountName = TestUtilities.GenerateName("csa"); var parameters = new CognitiveServicesAccountCreateParameters { Sku = new Sku { Name = skuName }, Kind = accountType, Location = CognitiveServicesManagementTestUtilities.DefaultLocation, Properties = new object(), }; var account = cognitiveServicesMgmtClient.CognitiveServicesAccounts.Create(rgName, accountName, parameters); CognitiveServicesManagementTestUtilities.VerifyAccountProperties(account, false); Assert.Equal(skuName, account.Sku.Name); Assert.Equal(accountType.ToString(), account.Kind); return(account); }
public override void ExecuteCmdlet() { base.ExecuteCmdlet(); RunCmdLet(() => { CognitiveServicesAccountCreateParameters createParameters = new CognitiveServicesAccountCreateParameters() { Location = this.Location, Kind = ParseAccountKind(this.Type).Value, // must have value, mandatory parameter Sku = new Sku(ParseSkuName(this.SkuName)), Tags = TagsConversionHelper.CreateTagDictionary(Tag), Properties = new object(), // Must not be null according to Azure RM spec. Also there is no actual properties to pass, so not exposing it through cmdlet }; if (ShouldProcess( this.Name, string.Format(CultureInfo.CurrentCulture, Resources.NewAccount_ProcessMessage, this.Name, this.Type, this.SkuName, this.Location)) || Force.IsPresent) { var createAccountResponse = this.CognitiveServicesClient.CognitiveServicesAccounts.Create( this.ResourceGroupName, this.Name, createParameters); var cognitiveServicesAccount = this.CognitiveServicesClient.CognitiveServicesAccounts.GetProperties(this.ResourceGroupName, this.Name); this.WriteCognitiveServicesAccount(cognitiveServicesAccount); } }); }
/// <summary> /// Create Cognitive Services Account. Accounts is a resource group wide /// resource type. It holds the keys for developer to access intelligent APIs. /// It's also the resource type for billing. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='resourceGroupName'> /// The name of the resource group within the user's subscription. /// </param> /// <param name='accountName'> /// The name of Cognitive Services account. /// </param> /// <param name='parameters'> /// The parameters to provide for the created account. /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async Task <CognitiveServicesAccount> CreateAsync(this IAccountsOperations operations, string resourceGroupName, string accountName, CognitiveServicesAccountCreateParameters parameters, CancellationToken cancellationToken = default(CancellationToken)) { using (var _result = await operations.CreateWithHttpMessagesAsync(resourceGroupName, accountName, parameters, null, cancellationToken).ConfigureAwait(false)) { return(_result.Body); } }
/// <summary> /// Create Cognitive Services Account. Accounts is a resource group wide /// resource type. It holds the keys for developer to access intelligent APIs. /// It's also the resource type for billing. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='resourceGroupName'> /// The name of the resource group within the user's subscription. /// </param> /// <param name='accountName'> /// The name of Cognitive Services account. /// </param> /// <param name='parameters'> /// The parameters to provide for the created account. /// </param> public static CognitiveServicesAccount Create(this IAccountsOperations operations, string resourceGroupName, string accountName, CognitiveServicesAccountCreateParameters parameters) { return(operations.CreateAsync(resourceGroupName, accountName, parameters).GetAwaiter().GetResult()); }
/// <summary> /// Create Cognitive Services Account. Accounts is a resource group wide /// resource type. It holds the keys for developer to access intelligent /// APIs. It's also the resource type for billing. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='resourceGroupName'> /// The name of the resource group within the user's subscription. /// </param> /// <param name='accountName'> /// The name of the cognitive services account within the specified resource /// group. Cognitive Services account names must be between 3 and 24 /// characters in length and use numbers and lower-case letters only. /// </param> /// <param name='parameters'> /// The parameters to provide for the created account. /// </param> public static CognitiveServicesAccount Create(this ICognitiveServicesAccountsOperations operations, string resourceGroupName, string accountName, CognitiveServicesAccountCreateParameters parameters) { return(Task.Factory.StartNew(s => ((ICognitiveServicesAccountsOperations)s).CreateAsync(resourceGroupName, accountName, parameters), operations, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default).Unwrap().GetAwaiter().GetResult()); }