Skip to content

Commit 4fddac5

Browse files
author
Ziyue Zheng
authored
Add MarketplaceTestRunner to replace TestController (Azure#18190)
1 parent e3d6563 commit 4fddac5

File tree

3 files changed

+61
-105
lines changed

3 files changed

+61
-105
lines changed
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
// ----------------------------------------------------------------------------------
2+
//
3+
// Copyright Microsoft Corporation
4+
// Licensed under the Apache License, Version 2.0 (the "License");
5+
// you may not use this file except in compliance with the License.
6+
// You may obtain a copy of the License at
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
// Unless required by applicable law or agreed to in writing, software
9+
// distributed under the License is distributed on an "AS IS" BASIS,
10+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11+
// See the License for the specific language governing permissions and
12+
// limitations under the License.
13+
// ----------------------------------------------------------------------------------
14+
15+
namespace Microsoft.Azure.Commands.Marketplace.Test.ScenarioTests
16+
{
17+
using System.Collections.Generic;
18+
using Microsoft.Azure.Commands.TestFx;
19+
using Xunit.Abstractions;
20+
21+
public class MarketplaceTestRunner
22+
{
23+
protected readonly ITestRunner TestRunner;
24+
25+
protected MarketplaceTestRunner(ITestOutputHelper output)
26+
{
27+
TestRunner = TestManager.CreateInstance(output)
28+
.WithNewPsScriptFilename($"{GetType().Name}.ps1")
29+
.WithProjectSubfolderForTests("ScenarioTests")
30+
.WithCommonPsScripts(new[]
31+
{
32+
@"Common.ps1"
33+
})
34+
.WithNewRmModules(helper => new[]
35+
{
36+
helper.RMProfileModule,
37+
helper.GetRMModulePath("Az.Marketplace.psd1")
38+
})
39+
.WithNewRecordMatcherArguments(
40+
userAgentsToIgnore: new Dictionary<string, string>(),
41+
resourceProviders: new Dictionary<string, string>
42+
{
43+
{"Microsoft.Resources", null},
44+
{"Microsoft.Features", null},
45+
{"Microsoft.Authorization", null}
46+
}
47+
)
48+
.Build();
49+
}
50+
}
51+
}

src/Marketplace/Marketplace.Test/ScenarioTests/PrivateStoreTests.cs

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -14,74 +14,69 @@
1414

1515
namespace Microsoft.Azure.Commands.Marketplace.Test.ScenarioTests
1616
{
17-
using Microsoft.Azure.ServiceManagement.Common.Models;
1817
using Microsoft.WindowsAzure.Commands.ScenarioTest;
1918
using Xunit;
2019

21-
public class PrivateStoreTests
20+
public class PrivateStoreTests : MarketplaceTestRunner
2221
{
23-
private readonly XunitTracingInterceptor _logger;
24-
25-
public PrivateStoreTests(Xunit.Abstractions.ITestOutputHelper output)
22+
public PrivateStoreTests(Xunit.Abstractions.ITestOutputHelper output) : base(output)
2623
{
27-
_logger = new XunitTracingInterceptor(output);
28-
XunitTracingInterceptor.AddToContext(_logger);
2924
}
3025

3126
[Fact]
3227
[Trait(Category.AcceptanceType, Category.CheckIn)]
3328
public void TestGetPrivateStores()
3429
{
35-
TestController.NewInstance.RunPowerShellTest(_logger, "Test-GetAzMarketplacePrivateStore");
30+
TestRunner.RunTestScript("Test-GetAzMarketplacePrivateStore");
3631
}
3732

3833
[Fact]
3934
[Trait(Category.AcceptanceType, Category.CheckIn)]
4035
public void TestGetPrivateStoreOffers()
4136
{
42-
TestController.NewInstance.RunPowerShellTest(_logger, "Test-GetAzMarketplacePrivateStoreOffers");
37+
TestRunner.RunTestScript("Test-GetAzMarketplacePrivateStoreOffers");
4338
}
4439

4540
[Fact]
4641
[Trait(Category.AcceptanceType, Category.CheckIn)]
4742
public void TestGetPrivateStoreOffer()
4843
{
49-
TestController.NewInstance.RunPowerShellTest(_logger, "Test-GetAzMarketplacePrivateStoreOffer");
44+
TestRunner.RunTestScript("Test-GetAzMarketplacePrivateStoreOffer");
5045
}
5146

5247
[Fact]
5348
[Trait(Category.AcceptanceType, Category.CheckIn)]
5449
public void TestRemovePrivateStoreOffer()
5550
{
56-
TestController.NewInstance.RunPowerShellTest(_logger, "Test-RemoveAzMarketplacePrivateStoreOffer");
51+
TestRunner.RunTestScript("Test-RemoveAzMarketplacePrivateStoreOffer");
5752
}
5853

5954
[Fact]
6055
[Trait(Category.AcceptanceType, Category.CheckIn)]
6156
public void TestCreatePrivateStoreOffer()
6257
{
63-
TestController.NewInstance.RunPowerShellTest(_logger, "Test-CreateAzMarketplacePrivateStoreOffer");
58+
TestRunner.RunTestScript("Test-CreateAzMarketplacePrivateStoreOffer");
6459
}
6560

6661
[Fact]
6762
[Trait(Category.AcceptanceType, Category.CheckIn)]
6863
public void TestUpdatePrivateStoreOffer()
6964
{
70-
TestController.NewInstance.RunPowerShellTest(_logger, "Test-UpdateAzMarketplacePrivateStoreOffer");
65+
TestRunner.RunTestScript("Test-UpdateAzMarketplacePrivateStoreOffer");
7166
}
7267

7368
[Fact]
7469
[Trait(Category.AcceptanceType, Category.CheckIn)]
7570
public void TestUpdatePrivateStorePrivateOffer()
7671
{
77-
TestController.NewInstance.RunPowerShellTest(_logger, "Test-UpdateAzMarketplacePrivateStorePrivateOffer");
72+
TestRunner.RunTestScript("Test-UpdateAzMarketplacePrivateStorePrivateOffer");
7873
}
7974

8075
[Fact]
8176
[Trait(Category.AcceptanceType, Category.CheckIn)]
8277
public void TestGetPrivateStorePrivateOffer()
8378
{
84-
TestController.NewInstance.RunPowerShellTest(_logger, "Test-GetAzMarketplacePrivateStorePrivateOffers");
79+
TestRunner.RunTestScript("Test-GetAzMarketplacePrivateStorePrivateOffers");
8580
}
8681
}
8782
}

src/Marketplace/Marketplace.Test/ScenarioTests/TestController.cs

Lines changed: 0 additions & 90 deletions
This file was deleted.

0 commit comments

Comments
 (0)