From 9f9962f595ac66c320664744cdb15a359cc3a528 Mon Sep 17 00:00:00 2001 From: wfurt Date: Mon, 31 Aug 2020 23:57:07 -0700 Subject: [PATCH 1/2] improve test dynamic certificate generation --- .../SslStreamNetworkStreamTest.cs | 17 +++++++---------- .../tests/FunctionalTests/TestHelper.cs | 4 +++- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/src/libraries/System.Net.Security/tests/FunctionalTests/SslStreamNetworkStreamTest.cs b/src/libraries/System.Net.Security/tests/FunctionalTests/SslStreamNetworkStreamTest.cs index 14d61a3d7407bd..570340798aa4be 100644 --- a/src/libraries/System.Net.Security/tests/FunctionalTests/SslStreamNetworkStreamTest.cs +++ b/src/libraries/System.Net.Security/tests/FunctionalTests/SslStreamNetworkStreamTest.cs @@ -16,19 +16,16 @@ namespace System.Net.Security.Tests { using Configuration = System.Net.Test.Common.Configuration; - public class SslStreamNetworkStreamTest : IDisposable + public class SslStreamNetworkStreamTest { - private readonly X509Certificate2 _serverCert; - private readonly X509Certificate2Collection _serverChain; + private static readonly X509Certificate2 _serverCert; + private static readonly X509Certificate2Collection _serverChain; - public SslStreamNetworkStreamTest() + static SslStreamNetworkStreamTest() { - (_serverCert, _serverChain) = TestHelper.GenerateCertificates("localhost", this.GetType().Name); - } - - public void Dispose() - { - TestHelper.CleanupCertificates(this.GetType().Name); + string name = System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name.ToString(); + TestHelper.CleanupCertificates(name); + (_serverCert, _serverChain) = TestHelper.GenerateCertificates("localhost", name); } [Fact] diff --git a/src/libraries/System.Net.Security/tests/FunctionalTests/TestHelper.cs b/src/libraries/System.Net.Security/tests/FunctionalTests/TestHelper.cs index b16bcac29825de..97e3a4a5efb9de 100644 --- a/src/libraries/System.Net.Security/tests/FunctionalTests/TestHelper.cs +++ b/src/libraries/System.Net.Security/tests/FunctionalTests/TestHelper.cs @@ -7,6 +7,7 @@ using System.Security.Cryptography; using System.Security.Cryptography.X509Certificates; using System.Security.Cryptography.X509Certificates.Tests.Common; +using System.Runtime.CompilerServices; using System.Text; namespace System.Net.Security.Tests @@ -107,7 +108,8 @@ internal static void CleanupCertificates(string testName) } catch { }; } - internal static (X509Certificate2 certificate, X509Certificate2Collection) GenerateCertificates(string targetName, string? testName = null) + + internal static (X509Certificate2 certificate, X509Certificate2Collection) GenerateCertificates(string targetName, [CallerMemberName] string? testName = null) { if (PlatformDetection.IsWindows && testName != null) { From 54e56729643b7e1e9423ea92c60599a68d97ceda Mon Sep 17 00:00:00 2001 From: wfurt Date: Tue, 1 Sep 2020 12:38:22 -0700 Subject: [PATCH 2/2] feedback from review --- .../tests/FunctionalTests/SslStreamNetworkStreamTest.cs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/libraries/System.Net.Security/tests/FunctionalTests/SslStreamNetworkStreamTest.cs b/src/libraries/System.Net.Security/tests/FunctionalTests/SslStreamNetworkStreamTest.cs index 570340798aa4be..258b8a1ee28241 100644 --- a/src/libraries/System.Net.Security/tests/FunctionalTests/SslStreamNetworkStreamTest.cs +++ b/src/libraries/System.Net.Security/tests/FunctionalTests/SslStreamNetworkStreamTest.cs @@ -23,9 +23,8 @@ public class SslStreamNetworkStreamTest static SslStreamNetworkStreamTest() { - string name = System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name.ToString(); - TestHelper.CleanupCertificates(name); - (_serverCert, _serverChain) = TestHelper.GenerateCertificates("localhost", name); + TestHelper.CleanupCertificates(nameof(SslStreamNetworkStreamTest)); + (_serverCert, _serverChain) = TestHelper.GenerateCertificates("localhost", nameof(SslStreamNetworkStreamTest)); } [Fact]