Skip to content

Commit

Permalink
add tests (Azure#31420)
Browse files Browse the repository at this point in the history
  • Loading branch information
Jack-An-14 authored Sep 27, 2022
1 parent 488b0bc commit 834a047
Show file tree
Hide file tree
Showing 33 changed files with 137,073 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@ public class SearchManagementTestBase : ManagementRecordedTestBase<SearchManagem
{
protected ArmClient Client { get; private set; }

public AzureLocation DefaultLocation => AzureLocation.EastUS;

public SubscriptionResource DefaultLSubscription { get; set; }

protected SearchManagementTestBase(bool isAsync, RecordedTestMode mode)
: base(isAsync, mode)
{
Expand All @@ -25,16 +29,17 @@ protected SearchManagementTestBase(bool isAsync)
}

[SetUp]
public void CreateCommonClient()
public async Task CreateCommonClient()
{
Client = GetArmClient();
DefaultLSubscription = await Client.GetDefaultSubscriptionAsync();
}

protected async Task<ResourceGroupResource> CreateResourceGroup(SubscriptionResource subscription, string rgNamePrefix, AzureLocation location)
protected async Task<ResourceGroupResource> CreateResourceGroupAsync()
{
string rgName = Recording.GenerateAssetName(rgNamePrefix);
ResourceGroupData input = new ResourceGroupData(location);
var lro = await subscription.GetResourceGroups().CreateOrUpdateAsync(WaitUntil.Completed, rgName, input);
string rgName = Recording.GenerateAssetName("sdk-test");
ResourceGroupData input = new ResourceGroupData(DefaultLocation);
var lro = await DefaultLSubscription.GetResourceGroups().CreateOrUpdateAsync(WaitUntil.Completed, rgName, input);
return lro.Value;
}
}
Expand Down

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using Azure.Core.Pipeline;
using Azure.Core.TestFramework;
using Azure.ResourceManager.Resources;
using Azure.ResourceManager.Search.Models;
using NUnit.Framework;

namespace Azure.ResourceManager.Search.Tests
{
public class SearchServiceCollectionTests : SearchManagementTestBase
{
public SearchServiceCollectionTests(bool isAsync) : base(isAsync)//, RecordedTestMode.Record)
{
}

public SearchServiceCollection SearchCollection { get; set; }

public async Task SetCollection()
{
var rg = await CreateResourceGroupAsync();
SearchCollection = rg.GetSearchServices();
}

[Test]
public async Task CreateOrUpdateTest()
{
await SetCollection();

var name = Recording.GenerateAssetName("search");
var data = new SearchServiceData(DefaultLocation)
{
SkuName = SearchSkuName.Standard,
PartitionCount = 1,
ReplicaCount = 3,
HostingMode = HostingMode.Default
};
var result = (await SearchCollection.CreateOrUpdateAsync(WaitUntil.Completed, name, data)).Value;
Assert.IsNotNull(result);
Assert.AreEqual(name, result.Data.Name);
Assert.AreEqual(DefaultLocation, result.Data.Location);
Assert.AreEqual(SearchSkuName.Standard, result.Data.Sku.Name);
Assert.AreEqual(1, result.Data.PartitionCount);
Assert.AreEqual(3, result.Data.ReplicaCount);
Assert.AreEqual(HostingMode.Default, result.Data.HostingMode);
}

[Test]
public async Task GetAsyncTest()
{
await SetCollection();

var name = Recording.GenerateAssetName("search");
var data = new SearchServiceData(DefaultLocation)
{
SkuName = SearchSkuName.Standard,
PartitionCount = 1,
ReplicaCount = 3,
HostingMode = HostingMode.Default
};
var result = (await SearchCollection.CreateOrUpdateAsync(WaitUntil.Completed, name, data)).Value;

result = (await SearchCollection.GetAsync(name)).Value;
Assert.IsNotNull(result);
Assert.AreEqual(name, result.Data.Name);
Assert.AreEqual(DefaultLocation, result.Data.Location);
Assert.AreEqual(SearchSkuName.Standard, result.Data.Sku.Name);
Assert.AreEqual(1, result.Data.PartitionCount);
Assert.AreEqual(3, result.Data.ReplicaCount);
Assert.AreEqual(HostingMode.Default, result.Data.HostingMode);
}

[Test]
public async Task GetAllAsyncTest()
{
await SetCollection();

var name1 = Recording.GenerateAssetName("search1");
var data1 = new SearchServiceData(DefaultLocation)
{
SkuName = SearchSkuName.Standard,
PartitionCount = 1,
ReplicaCount = 3,
HostingMode = HostingMode.Default
};

var name2 = Recording.GenerateAssetName("search2");
var data2 = new SearchServiceData(DefaultLocation)
{
SkuName = SearchSkuName.Standard,
PartitionCount = 1,
ReplicaCount = 3,
HostingMode = HostingMode.Default
};
await SearchCollection.CreateOrUpdateAsync(WaitUntil.Completed, name1, data1);
await SearchCollection.CreateOrUpdateAsync(WaitUntil.Completed, name2, data2);

List<SearchServiceResource> searchServices = await SearchCollection.GetAllAsync().ToEnumerableAsync();
Assert.AreEqual(2, searchServices.Count);
Assert.IsTrue(searchServices.First(x => x.Data.Name == name1).Data.SkuName == SearchSkuName.Standard);
Assert.IsTrue(searchServices.First(x => x.Data.Name == name1).Data.PartitionCount == 1);
Assert.IsTrue(searchServices.First(x => x.Data.Name == name1).Data.ReplicaCount == 3);
Assert.IsTrue(searchServices.First(x => x.Data.Name == name1).Data.HostingMode == HostingMode.Default);
}
[Test]
public async Task ExistsAsync()
{
await SetCollection();

var name = Recording.GenerateAssetName("search");
var data = new SearchServiceData(DefaultLocation)
{
SkuName = SearchSkuName.Standard,
PartitionCount = 1,
ReplicaCount = 3,
HostingMode = HostingMode.Default
};
await SearchCollection.CreateOrUpdateAsync(WaitUntil.Completed, name, data);
var result = (await SearchCollection.ExistsAsync(name)).Value;
Assert.NotNull(result);
Assert.IsTrue(result == true);
}
}
}
Loading

0 comments on commit 834a047

Please sign in to comment.