Skip to content

Commit

Permalink
Add PolicyInsightsTestRunner and replace TestController (#18198)
Browse files Browse the repository at this point in the history
  • Loading branch information
CaptainFanZzz authored May 17, 2022
1 parent bc6a5f6 commit fbaa9e8
Show file tree
Hide file tree
Showing 8 changed files with 124 additions and 204 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -12,92 +12,85 @@
// limitations under the License.
// ----------------------------------------------------------------------------------

using Microsoft.Azure.Commands.ScenarioTest;
using Microsoft.Azure.ServiceManagement.Common.Models;
using Microsoft.WindowsAzure.Commands.ScenarioTest;
using Xunit;

namespace Microsoft.Azure.Commands.PolicyInsights.Test.ScenarioTests
{
public class PolicyEventTests
public class PolicyEventTests : PolicyInsightsTestRunner
{
private readonly XunitTracingInterceptor _logger;

public PolicyEventTests(Xunit.Abstractions.ITestOutputHelper output)
public PolicyEventTests(Xunit.Abstractions.ITestOutputHelper output) : base(output)
{
_logger = new XunitTracingInterceptor(output);
XunitTracingInterceptor.AddToContext(_logger);
TestExecutionHelpers.SetUpSessionAndProfile();
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void ManagementGroupScope()
{
TestController.NewInstance.RunPowerShellTest(_logger, "Get-AzureRmPolicyEvent-ManagementGroupScope");
TestRunner.RunTestScript("Get-AzureRmPolicyEvent-ManagementGroupScope");
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void ManagementGroupScope_Paging()
{
TestController.NewInstance.RunPowerShellTest(_logger, "Get-AzureRmPolicyEvent-ManagementGroupScope-Paging");
TestRunner.RunTestScript("Get-AzureRmPolicyEvent-ManagementGroupScope-Paging");
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void SubscriptionScope()
{
TestController.NewInstance.RunPowerShellTest(_logger, "Get-AzureRmPolicyEvent-SubscriptionScope");
TestRunner.RunTestScript("Get-AzureRmPolicyEvent-SubscriptionScope");
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void SubscriptionScope_Paging()
{
TestController.NewInstance.RunPowerShellTest(_logger, "Get-AzureRmPolicyEvent-SubscriptionScope-Paging");
TestRunner.RunTestScript("Get-AzureRmPolicyEvent-SubscriptionScope-Paging");
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void ResourceGroupScope()
{
TestController.NewInstance.RunPowerShellTest(_logger, "Get-AzureRmPolicyEvent-ResourceGroupScope");
TestRunner.RunTestScript("Get-AzureRmPolicyEvent-ResourceGroupScope");
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void ResourceScope()
{
TestController.NewInstance.RunPowerShellTest(_logger, "Get-AzureRmPolicyEvent-ResourceScope");
TestRunner.RunTestScript("Get-AzureRmPolicyEvent-ResourceScope");
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void PolicySetDefinitionScope()
{
TestController.NewInstance.RunPowerShellTest(_logger, "Get-AzureRmPolicyEvent-PolicySetDefinitionScope");
TestRunner.RunTestScript("Get-AzureRmPolicyEvent-PolicySetDefinitionScope");
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void PolicyDefinitionScope()
{
TestController.NewInstance.RunPowerShellTest(_logger, "Get-AzureRmPolicyEvent-PolicyDefinitionScope");
TestRunner.RunTestScript("Get-AzureRmPolicyEvent-PolicyDefinitionScope");
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void SubscriptionLevelPolicyAssignmentScope()
{
TestController.NewInstance.RunPowerShellTest(_logger, "Get-AzureRmPolicyEvent-SubscriptionLevelPolicyAssignmentScope");
TestRunner.RunTestScript("Get-AzureRmPolicyEvent-SubscriptionLevelPolicyAssignmentScope");
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void ResourceGroupLevelPolicyAssignmentScope()
{
TestController.NewInstance.RunPowerShellTest(_logger, "Get-AzureRmPolicyEvent-ResourceGroupLevelPolicyAssignmentScope");
TestRunner.RunTestScript("Get-AzureRmPolicyEvent-ResourceGroupLevelPolicyAssignmentScope");
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
// ----------------------------------------------------------------------------------
//
// Copyright Microsoft Corporation
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// ----------------------------------------------------------------------------------

using System.Collections.Generic;
using Microsoft.Azure.Commands.TestFx;
using Xunit.Abstractions;

namespace Microsoft.Azure.Commands.PolicyInsights.Test.ScenarioTests
{
public class PolicyInsightsTestRunner
{
protected readonly ITestRunner TestRunner;

protected PolicyInsightsTestRunner(ITestOutputHelper output)
{
TestRunner = TestManager.CreateInstance(output)
.WithNewPsScriptFilename($"{GetType().Name}.ps1")
.WithProjectSubfolderForTests("ScenarioTests")
.WithCommonPsScripts(new[]
{
@"Common.ps1"
})
.WithNewRmModules(helper => new[]
{
helper.RMProfileModule,
helper.GetRMModulePath("Az.PolicyInsights.psd1")
})
.WithNewRecordMatcherArguments(
userAgentsToIgnore: new Dictionary<string, string>(),
resourceProviders: new Dictionary<string, string>
{
{ "Microsoft.Resources", null },
{ "Microsoft.Features", null },
{ "Microsoft.Authorization", null }
}
)
.Build();
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,6 @@
// limitations under the License.
// ----------------------------------------------------------------------------------

using Microsoft.Azure.Commands.ScenarioTest;
using Microsoft.Azure.ServiceManagement.Common.Models;
using Microsoft.WindowsAzure.Commands.ScenarioTest;
using Xunit;

Expand All @@ -22,36 +20,31 @@ namespace Microsoft.Azure.Commands.PolicyInsights.Test.ScenarioTests
/// <summary>
/// Policy metadata scenario tests.
/// </summary>
public class PolicyMetadataTests
public class PolicyMetadataTests : PolicyInsightsTestRunner
{
private readonly XunitTracingInterceptor _logger;

public PolicyMetadataTests(Xunit.Abstractions.ITestOutputHelper output)
public PolicyMetadataTests(Xunit.Abstractions.ITestOutputHelper output) : base(output)
{
_logger = new XunitTracingInterceptor(output);
XunitTracingInterceptor.AddToContext(_logger);
TestExecutionHelpers.SetUpSessionAndProfile();
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void ListAll()
{
TestController.NewInstance.RunPowerShellTest(_logger, "PolicyMetadata-ListAll");
TestRunner.RunTestScript("PolicyMetadata-ListAll");
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void ListTop()
{
TestController.NewInstance.RunPowerShellTest(_logger, "PolicyMetadata-ListTop");
TestRunner.RunTestScript("PolicyMetadata-ListTop");
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void GetNamedResource()
{
TestController.NewInstance.RunPowerShellTest(_logger, "PolicyMetadata-GetNamedResource");
TestRunner.RunTestScript("PolicyMetadata-GetNamedResource");
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -12,78 +12,71 @@
// limitations under the License.
// ----------------------------------------------------------------------------------

using Microsoft.Azure.Commands.ScenarioTest;
using Microsoft.Azure.ServiceManagement.Common.Models;
using Microsoft.WindowsAzure.Commands.ScenarioTest;
using Xunit;

namespace Microsoft.Azure.Commands.PolicyInsights.Test.ScenarioTests
{
public class PolicyStateSummaryTests
public class PolicyStateSummaryTests : PolicyInsightsTestRunner
{
private readonly XunitTracingInterceptor _logger;

public PolicyStateSummaryTests(Xunit.Abstractions.ITestOutputHelper output)
public PolicyStateSummaryTests(Xunit.Abstractions.ITestOutputHelper output) : base(output)
{
_logger = new XunitTracingInterceptor(output);
XunitTracingInterceptor.AddToContext(_logger);
TestExecutionHelpers.SetUpSessionAndProfile();
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void ManagementGroupScope()
{
TestController.NewInstance.RunPowerShellTest(_logger, "Get-AzureRmPolicyStateSummary-ManagementGroupScope");
TestRunner.RunTestScript("Get-AzureRmPolicyStateSummary-ManagementGroupScope");
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void SubscriptionScope()
{
TestController.NewInstance.RunPowerShellTest(_logger, "Get-AzureRmPolicyStateSummary-SubscriptionScope");
TestRunner.RunTestScript("Get-AzureRmPolicyStateSummary-SubscriptionScope");
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void ResourceGroupScope()
{
TestController.NewInstance.RunPowerShellTest(_logger, "Get-AzureRmPolicyStateSummary-ResourceGroupScope");
TestRunner.RunTestScript("Get-AzureRmPolicyStateSummary-ResourceGroupScope");
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void ResourceScope()
{
TestController.NewInstance.RunPowerShellTest(_logger, "Get-AzureRmPolicyStateSummary-ResourceScope");
TestRunner.RunTestScript("Get-AzureRmPolicyStateSummary-ResourceScope");
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void PolicySetDefinitionScope()
{
TestController.NewInstance.RunPowerShellTest(_logger, "Get-AzureRmPolicyStateSummary-PolicySetDefinitionScope");
TestRunner.RunTestScript("Get-AzureRmPolicyStateSummary-PolicySetDefinitionScope");
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void PolicyDefinitionScope()
{
TestController.NewInstance.RunPowerShellTest(_logger, "Get-AzureRmPolicyStateSummary-PolicyDefinitionScope");
TestRunner.RunTestScript("Get-AzureRmPolicyStateSummary-PolicyDefinitionScope");
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void SubscriptionLevelPolicyAssignmentScope()
{
TestController.NewInstance.RunPowerShellTest(_logger, "Get-AzureRmPolicyStateSummary-SubscriptionLevelPolicyAssignmentScope");
TestRunner.RunTestScript("Get-AzureRmPolicyStateSummary-SubscriptionLevelPolicyAssignmentScope");
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
public void ResourceGroupLevelPolicyAssignmentScope()
{
TestController.NewInstance.RunPowerShellTest(_logger, "Get-AzureRmPolicyStateSummary-ResourceGroupLevelPolicyAssignmentScope");
TestRunner.RunTestScript("Get-AzureRmPolicyStateSummary-ResourceGroupLevelPolicyAssignmentScope");
}
}
}
Loading

0 comments on commit fbaa9e8

Please sign in to comment.