diff --git a/src/Cdn/Cdn.Test/ScenarioTests/AfdCustomDomainTests.cs b/src/Cdn/Cdn.Test/ScenarioTests/AfdCustomDomainTests.cs index 83dbd0dc23d0..21c400a2c38a 100644 --- a/src/Cdn/Cdn.Test/ScenarioTests/AfdCustomDomainTests.cs +++ b/src/Cdn/Cdn.Test/ScenarioTests/AfdCustomDomainTests.cs @@ -17,28 +17,24 @@ namespace Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest { - public class AfdCustomDomainTests + public class AfdCustomDomainTests : CdnTestRunner { - private ServiceManagement.Common.Models.XunitTracingInterceptor _logger; - - public AfdCustomDomainTests(Xunit.Abstractions.ITestOutputHelper output) + public AfdCustomDomainTests(Xunit.Abstractions.ITestOutputHelper output) : base(output) { - _logger = new ServiceManagement.Common.Models.XunitTracingInterceptor(output); - ServiceManagement.Common.Models.XunitTracingInterceptor.AddToContext(_logger); } [Fact(Skip = "Test is flaky due to creation of custom domain issue which prolongs response time. Will enable once RP issue is resolved.")] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestCreateAfdCustomDomain() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-CreateAfdCustomDomain"); + TestRunner.RunTestScript("Test-CreateAfdCustomDomain"); } [Fact(Skip = "Test is flaky due to RP issue which prolongs response time. Will enable once RP issue is resolved.")] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestGetAfdCustomDomain() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-GetAfdCustomDomain"); + TestRunner.RunTestScript("Test-GetAfdCustomDomain"); } } } diff --git a/src/Cdn/Cdn.Test/ScenarioTests/AfdEndpointTests.cs b/src/Cdn/Cdn.Test/ScenarioTests/AfdEndpointTests.cs index a364d384e5dd..d6b1cd53dc46 100644 --- a/src/Cdn/Cdn.Test/ScenarioTests/AfdEndpointTests.cs +++ b/src/Cdn/Cdn.Test/ScenarioTests/AfdEndpointTests.cs @@ -17,42 +17,38 @@ namespace Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest { - public class AfdEndpointTests + public class AfdEndpointTests : CdnTestRunner { - private ServiceManagement.Common.Models.XunitTracingInterceptor _logger; - - public AfdEndpointTests(Xunit.Abstractions.ITestOutputHelper output) + public AfdEndpointTests(Xunit.Abstractions.ITestOutputHelper output) : base(output) { - _logger = new ServiceManagement.Common.Models.XunitTracingInterceptor(output); - ServiceManagement.Common.Models.XunitTracingInterceptor.AddToContext(_logger); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestCreateAfdEndpoint() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-CreateAfdEndpoint"); + TestRunner.RunTestScript("Test-CreateAfdEndpoint"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestGetAfdEndpoint() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-GetAfdEndpoint"); + TestRunner.RunTestScript("Test-GetAfdEndpoint"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestRemoveAfdEndpoint() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-RemoveAfdEndpoint"); + TestRunner.RunTestScript("Test-RemoveAfdEndpoint"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestSetAfdEndpoint() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-SetAfdEndpoint"); + TestRunner.RunTestScript("Test-SetAfdEndpoint"); } } } diff --git a/src/Cdn/Cdn.Test/ScenarioTests/AfdOriginGroupTests.cs b/src/Cdn/Cdn.Test/ScenarioTests/AfdOriginGroupTests.cs index 43f012909d6f..7c62cb6e3999 100644 --- a/src/Cdn/Cdn.Test/ScenarioTests/AfdOriginGroupTests.cs +++ b/src/Cdn/Cdn.Test/ScenarioTests/AfdOriginGroupTests.cs @@ -17,42 +17,38 @@ namespace Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest { - public class AfdOriginGroupTests + public class AfdOriginGroupTests : CdnTestRunner { - private ServiceManagement.Common.Models.XunitTracingInterceptor _logger; - - public AfdOriginGroupTests(Xunit.Abstractions.ITestOutputHelper output) + public AfdOriginGroupTests(Xunit.Abstractions.ITestOutputHelper output) : base(output) { - _logger = new ServiceManagement.Common.Models.XunitTracingInterceptor(output); - ServiceManagement.Common.Models.XunitTracingInterceptor.AddToContext(_logger); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestCreateAfdOriginGroup() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-CreateAfdOriginGroup"); + TestRunner.RunTestScript("Test-CreateAfdOriginGroup"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestGetAfdOriginGroup() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-GetAfdOriginGroup"); + TestRunner.RunTestScript("Test-GetAfdOriginGroup"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestSetAfdOriginGroup() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-SetAfdOriginGroup"); + TestRunner.RunTestScript("Test-SetAfdOriginGroup"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestRemoveAfdOriginGroup() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-RemoveAfdOriginGroup"); + TestRunner.RunTestScript("Test-RemoveAfdOriginGroup"); } } } diff --git a/src/Cdn/Cdn.Test/ScenarioTests/AfdOriginTests.cs b/src/Cdn/Cdn.Test/ScenarioTests/AfdOriginTests.cs index 1643e17e1039..269ed35fc63b 100644 --- a/src/Cdn/Cdn.Test/ScenarioTests/AfdOriginTests.cs +++ b/src/Cdn/Cdn.Test/ScenarioTests/AfdOriginTests.cs @@ -17,35 +17,31 @@ namespace Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest { - public class AfdOriginTests + public class AfdOriginTests : CdnTestRunner { - private ServiceManagement.Common.Models.XunitTracingInterceptor _logger; - - public AfdOriginTests(Xunit.Abstractions.ITestOutputHelper output) + public AfdOriginTests(Xunit.Abstractions.ITestOutputHelper output) : base(output) { - _logger = new ServiceManagement.Common.Models.XunitTracingInterceptor(output); - ServiceManagement.Common.Models.XunitTracingInterceptor.AddToContext(_logger); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestCreateAfdOrigin() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-CreateAfdOrigin"); + TestRunner.RunTestScript("Test-CreateAfdOrigin"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestGetAfdOrigin() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-GetAfdOrigin"); + TestRunner.RunTestScript("Test-GetAfdOrigin"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestSetAfdOrigin() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-SetAfdOrigin"); + TestRunner.RunTestScript("Test-SetAfdOrigin"); } } } diff --git a/src/Cdn/Cdn.Test/ScenarioTests/AfdProfileTests.cs b/src/Cdn/Cdn.Test/ScenarioTests/AfdProfileTests.cs index 4a87a0445f0c..e290ee20d528 100644 --- a/src/Cdn/Cdn.Test/ScenarioTests/AfdProfileTests.cs +++ b/src/Cdn/Cdn.Test/ScenarioTests/AfdProfileTests.cs @@ -17,42 +17,38 @@ namespace Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest { - public class AfdProfileTests + public class AfdProfileTests : CdnTestRunner { - private ServiceManagement.Common.Models.XunitTracingInterceptor _logger; - - public AfdProfileTests(Xunit.Abstractions.ITestOutputHelper output) + public AfdProfileTests(Xunit.Abstractions.ITestOutputHelper output) : base(output) { - _logger = new ServiceManagement.Common.Models.XunitTracingInterceptor(output); - ServiceManagement.Common.Models.XunitTracingInterceptor.AddToContext(_logger); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestCreateStandardAfdProfile() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-CreateStandardAfdProfile"); + TestRunner.RunTestScript("Test-CreateStandardAfdProfile"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestCreatePremiumAfdProfile() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-CreatePremiumAfdProfile"); + TestRunner.RunTestScript("Test-CreatePremiumAfdProfile"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestGetStandardAfdProfile() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-GetStandardAfdProfile"); + TestRunner.RunTestScript("Test-GetStandardAfdProfile"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestRemovePremiumAfdProfile() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-RemovePremiumAfdProfile"); + TestRunner.RunTestScript("Test-RemovePremiumAfdProfile"); } } } diff --git a/src/Cdn/Cdn.Test/ScenarioTests/AfdRouteTests.cs b/src/Cdn/Cdn.Test/ScenarioTests/AfdRouteTests.cs index 6a3365b91cde..48e52fcfde84 100644 --- a/src/Cdn/Cdn.Test/ScenarioTests/AfdRouteTests.cs +++ b/src/Cdn/Cdn.Test/ScenarioTests/AfdRouteTests.cs @@ -17,28 +17,24 @@ namespace Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest { - public class AfdRouteTests + public class AfdRouteTests : CdnTestRunner { - private ServiceManagement.Common.Models.XunitTracingInterceptor _logger; - - public AfdRouteTests(Xunit.Abstractions.ITestOutputHelper output) + public AfdRouteTests(Xunit.Abstractions.ITestOutputHelper output) : base(output) { - _logger = new ServiceManagement.Common.Models.XunitTracingInterceptor(output); - ServiceManagement.Common.Models.XunitTracingInterceptor.AddToContext(_logger); } [Fact(Skip = "Test is flaky due to creation of custom domain issue which prolongs response time. Will enable once RP issue is resolved.")] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestCreateAfdRoute() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-CreateAfdRoute"); + TestRunner.RunTestScript("Test-CreateAfdRoute"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestGetAfdRoute() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-GetAfdRoute"); + TestRunner.RunTestScript("Test-GetAfdRoute"); } } } diff --git a/src/Cdn/Cdn.Test/ScenarioTests/AfdRuleSetTests.cs b/src/Cdn/Cdn.Test/ScenarioTests/AfdRuleSetTests.cs index 730b44002101..1d3c9cc7b1c5 100644 --- a/src/Cdn/Cdn.Test/ScenarioTests/AfdRuleSetTests.cs +++ b/src/Cdn/Cdn.Test/ScenarioTests/AfdRuleSetTests.cs @@ -17,28 +17,24 @@ namespace Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest { - public class AfdRuleSetTests + public class AfdRuleSetTests : CdnTestRunner { - private ServiceManagement.Common.Models.XunitTracingInterceptor _logger; - - public AfdRuleSetTests(Xunit.Abstractions.ITestOutputHelper output) + public AfdRuleSetTests(Xunit.Abstractions.ITestOutputHelper output) : base(output) { - _logger = new ServiceManagement.Common.Models.XunitTracingInterceptor(output); - ServiceManagement.Common.Models.XunitTracingInterceptor.AddToContext(_logger); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestCreateAfdRuleSet() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-CreateAfdRuleSet"); + TestRunner.RunTestScript("Test-CreateAfdRuleSet"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestRemoveAfdRuleSet() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-RemoveAfdRuleSet"); + TestRunner.RunTestScript("Test-RemoveAfdRuleSet"); } } } diff --git a/src/Cdn/Cdn.Test/ScenarioTests/AfdRuleTests.cs b/src/Cdn/Cdn.Test/ScenarioTests/AfdRuleTests.cs index 81f7c02a00ac..4abfd7791cd6 100644 --- a/src/Cdn/Cdn.Test/ScenarioTests/AfdRuleTests.cs +++ b/src/Cdn/Cdn.Test/ScenarioTests/AfdRuleTests.cs @@ -17,21 +17,17 @@ namespace Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest { - public class AfdRuleTests + public class AfdRuleTests : CdnTestRunner { - private ServiceManagement.Common.Models.XunitTracingInterceptor _logger; - - public AfdRuleTests(Xunit.Abstractions.ITestOutputHelper output) + public AfdRuleTests(Xunit.Abstractions.ITestOutputHelper output) : base(output) { - _logger = new ServiceManagement.Common.Models.XunitTracingInterceptor(output); - ServiceManagement.Common.Models.XunitTracingInterceptor.AddToContext(_logger); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestCreateAfdRule() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-CreateAfdRule"); + TestRunner.RunTestScript("Test-CreateAfdRule"); } } } diff --git a/src/Cdn/Cdn.Test/ScenarioTests/AfdSecurityPolicyTests.cs b/src/Cdn/Cdn.Test/ScenarioTests/AfdSecurityPolicyTests.cs index 03f5d326bfc2..cf0cead9f2a9 100644 --- a/src/Cdn/Cdn.Test/ScenarioTests/AfdSecurityPolicyTests.cs +++ b/src/Cdn/Cdn.Test/ScenarioTests/AfdSecurityPolicyTests.cs @@ -17,21 +17,17 @@ namespace Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest { - public class AfdSecurityPolicyTests + public class AfdSecurityPolicyTests : CdnTestRunner { - private ServiceManagement.Common.Models.XunitTracingInterceptor _logger; - - public AfdSecurityPolicyTests(Xunit.Abstractions.ITestOutputHelper output) + public AfdSecurityPolicyTests(Xunit.Abstractions.ITestOutputHelper output) : base(output) { - _logger = new ServiceManagement.Common.Models.XunitTracingInterceptor(output); - ServiceManagement.Common.Models.XunitTracingInterceptor.AddToContext(_logger); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestGetAfdSecurityPolicy() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-GetAfdSecurityPolicy"); + TestRunner.RunTestScript("Test-GetAfdSecurityPolicy"); } } } diff --git a/src/Cdn/Cdn.Test/ScenarioTests/CdnTestRunner.cs b/src/Cdn/Cdn.Test/ScenarioTests/CdnTestRunner.cs new file mode 100644 index 000000000000..5369aa1cb8fa --- /dev/null +++ b/src/Cdn/Cdn.Test/ScenarioTests/CdnTestRunner.cs @@ -0,0 +1,56 @@ +// ---------------------------------------------------------------------------------- +// +// 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.Cdn.Test.ScenarioTests +{ + public class CdnTestRunner + { + protected readonly ITestRunner TestRunner; + + protected CdnTestRunner(ITestOutputHelper output) + { + TestRunner = TestManager.CreateInstance(output) + .WithNewPsScriptFilename($"{GetType().Name}.ps1") + .WithProjectSubfolderForTests("ScenarioTests") + .WithCommonPsScripts(new[] + { + @"Common.ps1", + @"../AzureRM.Resources.ps1", + }) + .WithNewRmModules(helper => new[] + { + helper.RMProfileModule, + helper.GetRMModulePath("Az.Cdn.psd1") + }) + .WithNewRecordMatcherArguments( + userAgentsToIgnore: new Dictionary + { + {"Microsoft.Azure.Management.Resources.ResourceManagementClient", "2016-02-01"}, + }, + resourceProviders: new Dictionary + { + {"Microsoft.Resources", null}, + {"Microsoft.Features", null}, + {"Microsoft.Authorization", null}, + {"Microsoft.Compute", null} + } + ) + .Build(); + } + } +} \ No newline at end of file diff --git a/src/Cdn/Cdn.Test/ScenarioTests/ChinaCdnProfileTests.cs b/src/Cdn/Cdn.Test/ScenarioTests/ChinaCdnProfileTests.cs index 1f3fe5033f2e..2011d3136642 100644 --- a/src/Cdn/Cdn.Test/ScenarioTests/ChinaCdnProfileTests.cs +++ b/src/Cdn/Cdn.Test/ScenarioTests/ChinaCdnProfileTests.cs @@ -12,27 +12,22 @@ // limitations under the License. // ---------------------------------------------------------------------------------- -using Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest; using Microsoft.WindowsAzure.Commands.ScenarioTest; using Xunit; namespace Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest { - public class ChinaCdnProfileTests + public class ChinaCdnProfileTests : CdnTestRunner { - private ServiceManagement.Common.Models.XunitTracingInterceptor _logger; - - public ChinaCdnProfileTests(Xunit.Abstractions.ITestOutputHelper output) + public ChinaCdnProfileTests(Xunit.Abstractions.ITestOutputHelper output) : base(output) { - _logger = new ServiceManagement.Common.Models.XunitTracingInterceptor(output); - ServiceManagement.Common.Models.XunitTracingInterceptor.AddToContext(_logger); } [Fact(Skip = "Test needs to be run by the China CDN team")] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestProfileList() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-ProfileList"); + TestRunner.RunTestScript("Test-ProfileList"); } } } diff --git a/src/Cdn/Cdn.Test/ScenarioTests/CustomDomainTests.cs b/src/Cdn/Cdn.Test/ScenarioTests/CustomDomainTests.cs index c74c2b4533ce..2d17733ae9be 100644 --- a/src/Cdn/Cdn.Test/ScenarioTests/CustomDomainTests.cs +++ b/src/Cdn/Cdn.Test/ScenarioTests/CustomDomainTests.cs @@ -17,56 +17,52 @@ namespace Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest { - public class CustomDomainTests + public class CustomDomainTests : CdnTestRunner { - private ServiceManagement.Common.Models.XunitTracingInterceptor _logger; - - public CustomDomainTests(Xunit.Abstractions.ITestOutputHelper output) + public CustomDomainTests(Xunit.Abstractions.ITestOutputHelper output) : base(output) { - _logger = new ServiceManagement.Common.Models.XunitTracingInterceptor(output); - ServiceManagement.Common.Models.XunitTracingInterceptor.AddToContext(_logger); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestCustomDomainEnableDisableWithRunningEndpoint() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-CustomDomainEnableDisableWithRunningEndpoint"); + TestRunner.RunTestScript("Test-CustomDomainEnableDisableWithRunningEndpoint"); } [Fact(Skip = "Test is flaky due to creation of custom domain issue which prolongs response time. Will enable once RP issue is resolved.")] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestCustomDomainGetRemoveWithRunningEndpoint() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-CustomDomainGetRemoveWithRunningEndpoint"); + TestRunner.RunTestScript("Test-CustomDomainGetRemoveWithRunningEndpoint"); } [Fact(Skip = "Test is flaky due to creation of custom domain issue which prolongs response time. Will enable once RP issue is resolved.")] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestCustomDomainGetRemoveWithStoppedEndpoint() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-CustomDomainGetRemoveWithStoppedEndpoint"); + TestRunner.RunTestScript("Test-CustomDomainGetRemoveWithStoppedEndpoint"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestVerizonCustomDomainHttpsWithRunningEndpoint() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-VerizonCustomDomainEnableHttpsWithRunningEndpoint"); + TestRunner.RunTestScript("Test-VerizonCustomDomainEnableHttpsWithRunningEndpoint"); } [Fact(Skip = "Test is flaky due to creation of custom domain issue which prolongs response time. Will enable once RP issue is resolved.")] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestAkamaiCustomDomainHttpsWithRunningEndpoint() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-AkamaiCustomDomainEnableHttpsWithRunningEndpoint"); + TestRunner.RunTestScript("Test-AkamaiCustomDomainEnableHttpsWithRunningEndpoint"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestMicrosoftCustomDomainHttpsWithRunningEndpoint() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-MicrosoftCustomDomainEnableHttpsWithRunningEndpoint"); + TestRunner.RunTestScript("Test-MicrosoftCustomDomainEnableHttpsWithRunningEndpoint"); } } } \ No newline at end of file diff --git a/src/Cdn/Cdn.Test/ScenarioTests/EndpointTests.cs b/src/Cdn/Cdn.Test/ScenarioTests/EndpointTests.cs index fcb70e96d7c6..3184441d24c7 100644 --- a/src/Cdn/Cdn.Test/ScenarioTests/EndpointTests.cs +++ b/src/Cdn/Cdn.Test/ScenarioTests/EndpointTests.cs @@ -12,90 +12,85 @@ // limitations under the License. // ---------------------------------------------------------------------------------- -using Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest; using Microsoft.WindowsAzure.Commands.ScenarioTest; using Xunit; namespace Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest { - public class EndpointTests + public class EndpointTests : CdnTestRunner { - private ServiceManagement.Common.Models.XunitTracingInterceptor _logger; - - public EndpointTests(Xunit.Abstractions.ITestOutputHelper output) + public EndpointTests(Xunit.Abstractions.ITestOutputHelper output) : base(output) { - _logger = new ServiceManagement.Common.Models.XunitTracingInterceptor(output); - ServiceManagement.Common.Models.XunitTracingInterceptor.AddToContext(_logger); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestEndpointCrudAndAction() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-EndpointCrudAndAction"); + TestRunner.RunTestScript("Test-EndpointCrudAndAction"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestEndpointCreateWithRulesEngine() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-EndpointCreateWithRulesEngine"); + TestRunner.RunTestScript("Test-EndpointCreateWithRulesEngine"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestEndpointCrudAndActionWithPiping() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-EndpointCrudAndActionWithPiping"); + TestRunner.RunTestScript("Test-EndpointCrudAndActionWithPiping"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestEndpointCrudAndActionWithAllProperties() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-EndpointCrudAndActionWithAllProperties"); + TestRunner.RunTestScript("Test-EndpointCrudAndActionWithAllProperties"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestEndpointCreateWithDsa() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-EndpointCreateWithDSA"); + TestRunner.RunTestScript("Test-EndpointCreateWithDSA"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestEndpointCrudAndActionWithAllPropertiesWithPiping() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-EndpointCrudAndActionWithAllPropertiesWithPiping"); + TestRunner.RunTestScript("Test-EndpointCrudAndActionWithAllPropertiesWithPiping"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestEndpointPipeline() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-EndpointPipeline"); + TestRunner.RunTestScript("Test-EndpointPipeline"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestEndpointGeoFilters() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-EndpointGeoFilters"); + TestRunner.RunTestScript("Test-EndpointGeoFilters"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestEndpointResourceUsage() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-EndpointResourceUsage"); + TestRunner.RunTestScript("Test-EndpointResourceUsage"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void EndpointValidateProbeUrl() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-EndpointValidateProbeUrl"); + TestRunner.RunTestScript("Test-EndpointValidateProbeUrl"); } } } diff --git a/src/Cdn/Cdn.Test/ScenarioTests/OriginGroupTests.cs b/src/Cdn/Cdn.Test/ScenarioTests/OriginGroupTests.cs index 20beea89c334..4341e2ca93a1 100644 --- a/src/Cdn/Cdn.Test/ScenarioTests/OriginGroupTests.cs +++ b/src/Cdn/Cdn.Test/ScenarioTests/OriginGroupTests.cs @@ -12,41 +12,36 @@ // limitations under the License. // ---------------------------------------------------------------------------------- -using Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest; using Microsoft.WindowsAzure.Commands.ScenarioTest; using Xunit; namespace Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest { - public class OriginGroupTests + public class OriginGroupTests : CdnTestRunner { - private ServiceManagement.Common.Models.XunitTracingInterceptor _logger; - - public OriginGroupTests(Xunit.Abstractions.ITestOutputHelper output) + public OriginGroupTests(Xunit.Abstractions.ITestOutputHelper output) : base(output) { - _logger = new ServiceManagement.Common.Models.XunitTracingInterceptor(output); - ServiceManagement.Common.Models.XunitTracingInterceptor.AddToContext(_logger); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestCreateOriginGroup() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-CreateOriginGroup"); + TestRunner.RunTestScript("Test-CreateOriginGroup"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestGetSetOriginGroup() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-GetSetOriginGroup"); + TestRunner.RunTestScript("Test-GetSetOriginGroup"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestRemoveOriginGroup() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-RemoveOriginGroup"); + TestRunner.RunTestScript("Test-RemoveOriginGroup"); } } diff --git a/src/Cdn/Cdn.Test/ScenarioTests/OriginTests.cs b/src/Cdn/Cdn.Test/ScenarioTests/OriginTests.cs index 68ff2a68d074..cb6158a78206 100644 --- a/src/Cdn/Cdn.Test/ScenarioTests/OriginTests.cs +++ b/src/Cdn/Cdn.Test/ScenarioTests/OriginTests.cs @@ -12,48 +12,43 @@ // limitations under the License. // ---------------------------------------------------------------------------------- -using Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest; using Microsoft.WindowsAzure.Commands.ScenarioTest; using Xunit; namespace Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest { - public class OriginTests + public class OriginTests : CdnTestRunner { - private ServiceManagement.Common.Models.XunitTracingInterceptor _logger; - - public OriginTests(Xunit.Abstractions.ITestOutputHelper output) + public OriginTests(Xunit.Abstractions.ITestOutputHelper output) : base(output) { - _logger = new ServiceManagement.Common.Models.XunitTracingInterceptor(output); - ServiceManagement.Common.Models.XunitTracingInterceptor.AddToContext(_logger); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestOriginGetSetWithRunningEndpoint() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-OriginGetSetWithRunningEndpoint"); + TestRunner.RunTestScript("Test-OriginGetSetWithRunningEndpoint"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestOriginGetSetWithStoppedEndpoint() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-OriginGetSetWithStoppedEndpoint"); + TestRunner.RunTestScript("Test-OriginGetSetWithStoppedEndpoint"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestOriginGetSetWhenEndpointDoesnotExist() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-OriginGetSetWhenEndpointDoesnotExist"); + TestRunner.RunTestScript("Test-OriginGetSetWhenEndpointDoesnotExist"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestSetOriginProperties() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-SetOriginProperties"); + TestRunner.RunTestScript("Test-SetOriginProperties"); } } } diff --git a/src/Cdn/Cdn.Test/ScenarioTests/ProfileTests.cs b/src/Cdn/Cdn.Test/ScenarioTests/ProfileTests.cs index 185fb2fe4ced..188f2f1852c0 100644 --- a/src/Cdn/Cdn.Test/ScenarioTests/ProfileTests.cs +++ b/src/Cdn/Cdn.Test/ScenarioTests/ProfileTests.cs @@ -12,69 +12,64 @@ // limitations under the License. // ---------------------------------------------------------------------------------- -using Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest; using Microsoft.WindowsAzure.Commands.ScenarioTest; using Xunit; namespace Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest { - public class ProfileTests + public class ProfileTests : CdnTestRunner { - private ServiceManagement.Common.Models.XunitTracingInterceptor _logger; - - public ProfileTests(Xunit.Abstractions.ITestOutputHelper output) + public ProfileTests(Xunit.Abstractions.ITestOutputHelper output) : base(output) { - _logger = new ServiceManagement.Common.Models.XunitTracingInterceptor(output); - ServiceManagement.Common.Models.XunitTracingInterceptor.AddToContext(_logger); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestProfileCrud() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-ProfileCrud"); + TestRunner.RunTestScript("Test-ProfileCrud"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestSkuCreate() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-SkuCreate"); + TestRunner.RunTestScript("Test-SkuCreate"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestProfileCrudWithPiping() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-ProfileDeleteAndSsoWithPiping"); + TestRunner.RunTestScript("Test-ProfileDeleteAndSsoWithPiping"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestProfilePipeline() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-ProfilePipeline"); + TestRunner.RunTestScript("Test-ProfilePipeline"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestProfileDeleteWithEndpoints() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-ProfileDeleteWithEndpoints"); + TestRunner.RunTestScript("Test-ProfileDeleteWithEndpoints"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestProfileGetResourceUsage() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-ProfileGetResourceUsages"); + TestRunner.RunTestScript("Test-ProfileGetResourceUsages"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void ProfileGetSupportedOptimizationType() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-ProfileGetSupportedOptimizationType"); + TestRunner.RunTestScript("Test-ProfileGetSupportedOptimizationType"); } } } diff --git a/src/Cdn/Cdn.Test/ScenarioTests/SubscriptionTests.cs b/src/Cdn/Cdn.Test/ScenarioTests/SubscriptionTests.cs index 4ba21c1ecc12..d2e421705eac 100644 --- a/src/Cdn/Cdn.Test/ScenarioTests/SubscriptionTests.cs +++ b/src/Cdn/Cdn.Test/ScenarioTests/SubscriptionTests.cs @@ -12,34 +12,29 @@ // limitations under the License. // ---------------------------------------------------------------------------------- -using Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest; using Microsoft.WindowsAzure.Commands.ScenarioTest; using Xunit; namespace Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest { - public class SubscriptionTests + public class SubscriptionTests : CdnTestRunner { - private ServiceManagement.Common.Models.XunitTracingInterceptor _logger; - - public SubscriptionTests(Xunit.Abstractions.ITestOutputHelper output) + public SubscriptionTests(Xunit.Abstractions.ITestOutputHelper output) : base(output) { - _logger = new ServiceManagement.Common.Models.XunitTracingInterceptor(output); - ServiceManagement.Common.Models.XunitTracingInterceptor.AddToContext(_logger); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestSubscriptionGetResourceUsage() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-SubscriptionGetResourceUsage"); + TestRunner.RunTestScript("Test-SubscriptionGetResourceUsage"); } [Fact] [Trait(Category.AcceptanceType, Category.CheckIn)] public void TestSubscriptionEdgeNode() { - TestController.NewInstance.RunPowerShellTest(_logger, "Test-SubscriptionEdgeNode"); + TestRunner.RunTestScript("Test-SubscriptionEdgeNode"); } } } diff --git a/src/Cdn/Cdn.Test/ScenarioTests/TestController.cs b/src/Cdn/Cdn.Test/ScenarioTests/TestController.cs deleted file mode 100644 index b6253ad20a2a..000000000000 --- a/src/Cdn/Cdn.Test/ScenarioTests/TestController.cs +++ /dev/null @@ -1,132 +0,0 @@ -// ---------------------------------------------------------------------------------- -// -// 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; -using System.Collections.Generic; -using System.Diagnostics; -using System.IO; -using System.Linq; -using Microsoft.Azure.Commands.Common.Authentication; -using Microsoft.Azure.Management.Cdn; -using Microsoft.Azure.Management.Internal.Resources; -using Microsoft.Azure.Test.HttpRecorder; -using Microsoft.Rest.ClientRuntime.Azure.TestFramework; -using Microsoft.WindowsAzure.Commands.ScenarioTest; -using Microsoft.WindowsAzure.Commands.Test.Utilities.Common; -using TestEnvironmentFactory = Microsoft.Rest.ClientRuntime.Azure.TestFramework.TestEnvironmentFactory; - -namespace Microsoft.Azure.Commands.Cdn.Test.ScenarioTests.ScenarioTest -{ - public class TestController : RMTestBase - { - private readonly EnvironmentSetupHelper _helper; - - public ResourceManagementClient ResourceManagementClient { get; private set; } - - public CdnManagementClient CdnManagementClient { get; private set; } - - public static TestController NewInstance => new TestController(); - - protected TestController() - { - _helper = new EnvironmentSetupHelper(); - } - - protected void SetupManagementClients(MockContext context) - { - ResourceManagementClient = GetResourceManagementClient(context); - CdnManagementClient = GetCdnManagementClient(context); - - _helper.SetupManagementClients( - ResourceManagementClient, - CdnManagementClient); - } - - public void RunPowerShellTest(ServiceManagement.Common.Models.XunitTracingInterceptor logger, params string[] scripts) - { - var sf = new StackTrace().GetFrame(1); - var callingClassType = sf.GetMethod().ReflectedType?.ToString(); - var mockName = sf.GetMethod().Name; - - _helper.TracingInterceptor = logger; - RunPsTestWorkflow( - () => scripts, - // no custom cleanup - null, - callingClassType, - mockName); - } - - public void RunPsTestWorkflow( - Func scriptBuilder, - Action cleanup, - string callingClassType, - string mockName) - { - - var d = new Dictionary - { - {"Microsoft.Resources", null}, - {"Microsoft.Features", null}, - {"Microsoft.Authorization", null}, - {"Microsoft.Compute", null} - }; - var providersToIgnore = new Dictionary - { - {"Microsoft.Azure.Management.Resources.ResourceManagementClient", "2016-02-01"} - }; - HttpMockServer.Matcher = new PermissiveRecordMatcherWithApiExclusion(true, d, providersToIgnore); - - HttpMockServer.RecordsDirectory = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "SessionRecords"); - - using (var context = MockContext.Start(callingClassType, mockName)) - { - SetupManagementClients(context); - - _helper.SetupEnvironment(AzureModule.AzureResourceManager); - - var callingClassName = callingClassType.Split(new[] { "." }, StringSplitOptions.RemoveEmptyEntries).Last(); - - _helper.SetupModules(AzureModule.AzureResourceManager, - "ScenarioTests\\Common.ps1", - "ScenarioTests\\" + callingClassName + ".ps1", - _helper.RMProfileModule, - _helper.GetRMModulePath("AzureRM.Cdn.psd1"), - "AzureRM.Resources.ps1"); - try - { - var psScripts = scriptBuilder?.Invoke(); - if (psScripts != null) - { - _helper.RunPowerShellTest(psScripts); - } - } - finally - { - cleanup?.Invoke(); - } - } - } - - protected ResourceManagementClient GetResourceManagementClient(MockContext context) - { - return context.GetServiceClient(TestEnvironmentFactory.GetTestEnvironment()); - } - - private static CdnManagementClient GetCdnManagementClient(MockContext context) - { - return context.GetServiceClient(TestEnvironmentFactory.GetTestEnvironment()); - } - } -}