Skip to content

Commit 13fe2cf

Browse files
authored
Add ResourceGraphTestRunner to replace TestController (#18227)
* Signed-off-by: [email protected] <[email protected]> * Add ResourceGraphTestRunner to replace TestController
1 parent 8f17f24 commit 13fe2cf

File tree

3 files changed

+61
-114
lines changed

3 files changed

+61
-114
lines changed

src/ResourceGraph/ResourceGraph.Test/ScenarioTests/ResourceGraphQueryTests.cs

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -12,71 +12,64 @@
1212
// limitations under the License.
1313
// ----------------------------------------------------------------------------------
1414

15-
using Microsoft.Azure.Commands.ScenarioTest;
16-
using Microsoft.Azure.ServiceManagement.Common.Models;
1715
using Microsoft.WindowsAzure.Commands.ScenarioTest;
1816
using Xunit;
1917

2018
namespace Microsoft.Azure.Commands.ResourceGraph.Test.ScenarioTests
2119
{
22-
public class ResourceGraphQueryTests
20+
public class ResourceGraphQueryTests : ResourceGraphTestRunner
2321
{
24-
private readonly XunitTracingInterceptor _logger;
25-
26-
public ResourceGraphQueryTests(Xunit.Abstractions.ITestOutputHelper output)
22+
public ResourceGraphQueryTests(Xunit.Abstractions.ITestOutputHelper output) : base(output)
2723
{
28-
_logger = new XunitTracingInterceptor(output);
29-
XunitTracingInterceptor.AddToContext(_logger);
30-
TestExecutionHelpers.SetUpSessionAndProfile();
3124
}
3225

3326
[Fact]
3427
[Trait(Category.AcceptanceType, Category.CheckIn)]
3528
public void Query()
3629
{
37-
TestController.NewInstance.RunPowerShellTest(_logger, "Search-AzureRmGraph-Query");
30+
TestRunner.RunTestScript("Search-AzureRmGraph-Query");
3831
}
3932

4033
[Fact]
4134
[Trait(Category.AcceptanceType, Category.CheckIn)]
4235
public void PagedQuery()
4336
{
44-
TestController.NewInstance.RunPowerShellTest(_logger, "Search-AzureRmGraph-PagedQuery");
37+
TestRunner.RunTestScript("Search-AzureRmGraph-PagedQuery");
4538
}
4639

4740
[Fact]
4841
[Trait(Category.AcceptanceType, Category.CheckIn)]
4942
public void Subscriptions()
5043
{
51-
TestController.NewInstance.RunPowerShellTest(_logger, "Search-AzureRmGraph-Subscriptions");
44+
TestRunner.RunTestScript("Search-AzureRmGraph-Subscriptions");
5245
}
5346

5447
[Fact]
5548
[Trait(Category.AcceptanceType, Category.CheckIn)]
5649
public void ManagementGroups()
5750
{
58-
TestController.NewInstance.RunPowerShellTest(_logger, "Search-AzureRmGraph-ManagementGroups");
51+
TestRunner.RunTestScript("Search-AzureRmGraph-ManagementGroups");
5952
}
6053

6154
[Fact]
6255
[Trait(Category.AcceptanceType, Category.CheckIn)]
6356
public void SkipTokenQuery()
6457
{
65-
TestController.NewInstance.RunPowerShellTest(_logger, "Search-AzureRmGraph-SkipTokenQuery");
58+
TestRunner.RunTestScript("Search-AzureRmGraph-SkipTokenQuery");
6659
}
6760

6861
[Fact]
6962
[Trait(Category.AcceptanceType, Category.CheckIn)]
7063
public void QueryError()
7164
{
72-
TestController.NewInstance.RunPowerShellTest(_logger, "Search-AzureRmGraph-QueryError");
65+
TestRunner.RunTestScript("Search-AzureRmGraph-QueryError");
7366
}
7467

7568
[Fact]
7669
[Trait(Category.AcceptanceType, Category.CheckIn)]
7770
public void SubscriptionAndManagementGroupQueryError()
7871
{
79-
TestController.NewInstance.RunPowerShellTest(_logger, "Search-AzureRmGraph-SubscriptionAndManagementGroupQueryError");
72+
TestRunner.RunTestScript("Search-AzureRmGraph-SubscriptionAndManagementGroupQueryError");
8073
}
8174
}
8275
}
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
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+
using System.Collections.Generic;
16+
using Microsoft.Azure.Commands.TestFx;
17+
using Xunit.Abstractions;
18+
19+
namespace Microsoft.Azure.Commands.ResourceGraph.Test.ScenarioTests
20+
{
21+
public class ResourceGraphTestRunner
22+
{
23+
protected readonly ITestRunner TestRunner;
24+
25+
protected ResourceGraphTestRunner(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.ResourceGraph.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+
}
52+

src/ResourceGraph/ResourceGraph.Test/ScenarioTests/TestController.cs

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

0 commit comments

Comments
 (0)