diff --git a/Directory.Build.props b/Directory.Build.props index 9d86b4fa778..33383a24a88 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -55,7 +55,7 @@ - + diff --git a/eng/ProjectReferences.props b/eng/ProjectReferences.props index 4340aa36c00..f5d77a5ec8f 100644 --- a/eng/ProjectReferences.props +++ b/eng/ProjectReferences.props @@ -56,7 +56,6 @@ - diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 74bceb7221f..48175e9ca66 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -10,73 +10,73 @@ --> - + https://github.com/dotnet/runtime - f57d49bb711fda8ac0bd231229d91919f4fca8e8 + 5c9338e09ad0a2f282c3dd14b0cc06aab37887a0 - + https://github.com/dotnet/runtime - f57d49bb711fda8ac0bd231229d91919f4fca8e8 + 5c9338e09ad0a2f282c3dd14b0cc06aab37887a0 - + https://github.com/dotnet/runtime - f57d49bb711fda8ac0bd231229d91919f4fca8e8 + 5c9338e09ad0a2f282c3dd14b0cc06aab37887a0 - + https://github.com/dotnet/runtime - f57d49bb711fda8ac0bd231229d91919f4fca8e8 + 5c9338e09ad0a2f282c3dd14b0cc06aab37887a0 - + https://github.com/dotnet/runtime - f57d49bb711fda8ac0bd231229d91919f4fca8e8 + 5c9338e09ad0a2f282c3dd14b0cc06aab37887a0 - + https://github.com/dotnet/runtime - f57d49bb711fda8ac0bd231229d91919f4fca8e8 + 5c9338e09ad0a2f282c3dd14b0cc06aab37887a0 - + https://github.com/dotnet/runtime - f57d49bb711fda8ac0bd231229d91919f4fca8e8 + 5c9338e09ad0a2f282c3dd14b0cc06aab37887a0 - + https://github.com/dotnet/runtime - f57d49bb711fda8ac0bd231229d91919f4fca8e8 + 5c9338e09ad0a2f282c3dd14b0cc06aab37887a0 - + https://github.com/dotnet/runtime - f57d49bb711fda8ac0bd231229d91919f4fca8e8 + 5c9338e09ad0a2f282c3dd14b0cc06aab37887a0 - + https://github.com/dotnet/runtime - f57d49bb711fda8ac0bd231229d91919f4fca8e8 + 5c9338e09ad0a2f282c3dd14b0cc06aab37887a0 - + https://github.com/dotnet/runtime - f57d49bb711fda8ac0bd231229d91919f4fca8e8 + 5c9338e09ad0a2f282c3dd14b0cc06aab37887a0 - + https://github.com/dotnet/runtime - f57d49bb711fda8ac0bd231229d91919f4fca8e8 + 5c9338e09ad0a2f282c3dd14b0cc06aab37887a0 - + https://github.com/dotnet/runtime - f57d49bb711fda8ac0bd231229d91919f4fca8e8 + 5c9338e09ad0a2f282c3dd14b0cc06aab37887a0 - + https://github.com/dotnet/runtime - f57d49bb711fda8ac0bd231229d91919f4fca8e8 + 5c9338e09ad0a2f282c3dd14b0cc06aab37887a0 - + https://github.com/dotnet/runtime - f57d49bb711fda8ac0bd231229d91919f4fca8e8 + 5c9338e09ad0a2f282c3dd14b0cc06aab37887a0 - + https://github.com/dotnet/runtime - f57d49bb711fda8ac0bd231229d91919f4fca8e8 + 5c9338e09ad0a2f282c3dd14b0cc06aab37887a0 https://github.com/dotnet/corefx @@ -96,9 +96,9 @@ https://github.com/dotnet/arcade 250782df013aa8586e21bb225f8efd715372dcf1 - + https://github.com/dotnet/runtime - f57d49bb711fda8ac0bd231229d91919f4fca8e8 + 5c9338e09ad0a2f282c3dd14b0cc06aab37887a0 https://github.com/dotnet/roslyn diff --git a/eng/Versions.props b/eng/Versions.props index c3844def76c..cd301920684 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -55,26 +55,26 @@ --> - 5.0.0-alpha.1.20064.4 - 5.0.0-alpha.1.20064.4 - 5.0.0-alpha.1.20064.4 - 2.1.0-alpha.1.20064.4 + 5.0.0-alpha.1.20065.4 + 5.0.0-alpha.1.20065.4 + 5.0.0-alpha.1.20065.4 + 2.1.0-alpha.1.20065.4 1.0.0 - 5.0.0-alpha.1.20064.4 - 5.0.0-alpha.1.20064.4 - 5.0.0-alpha.1.20064.4 - 5.0.0-alpha.1.20064.4 - 5.0.0-alpha.1.20064.4 - 5.0.0-alpha.1.20064.4 - 5.0.0-alpha.1.20064.4 - 5.0.0-alpha.1.20064.4 - 5.0.0-alpha.1.20064.4 - 5.0.0-alpha.1.20064.4 - 5.0.0-alpha.1.20064.4 - 5.0.0-alpha.1.20064.4 + 5.0.0-alpha.1.20065.4 + 5.0.0-alpha.1.20065.4 + 5.0.0-alpha.1.20065.4 + 5.0.0-alpha.1.20065.4 + 5.0.0-alpha.1.20065.4 + 5.0.0-alpha.1.20065.4 + 5.0.0-alpha.1.20065.4 + 5.0.0-alpha.1.20065.4 + 5.0.0-alpha.1.20065.4 + 5.0.0-alpha.1.20065.4 + 5.0.0-alpha.1.20065.4 + 5.0.0-alpha.1.20065.4 - 5.0.0-alpha.1.20064.4 + 5.0.0-alpha.1.20065.4 5.0.0-beta.20062.1 diff --git a/src/Hosting/IntegrationTesting/src/Microsoft.Extensions.Hosting.IntegrationTesting.csproj b/src/Hosting/IntegrationTesting/src/Microsoft.Extensions.Hosting.IntegrationTesting.csproj index 74e72701e30..1bc0de97a55 100644 --- a/src/Hosting/IntegrationTesting/src/Microsoft.Extensions.Hosting.IntegrationTesting.csproj +++ b/src/Hosting/IntegrationTesting/src/Microsoft.Extensions.Hosting.IntegrationTesting.csproj @@ -15,7 +15,6 @@ - diff --git a/src/HttpClientFactory/Http/src/DependencyInjection/HttpClientBuilderExtensions.cs b/src/HttpClientFactory/Http/src/DependencyInjection/HttpClientBuilderExtensions.cs index 3dd496394ad..5adcd907972 100644 --- a/src/HttpClientFactory/Http/src/DependencyInjection/HttpClientBuilderExtensions.cs +++ b/src/HttpClientFactory/Http/src/DependencyInjection/HttpClientBuilderExtensions.cs @@ -324,7 +324,13 @@ public static IHttpClientBuilder AddTypedClient(this IHttpClientBuilder throw new ArgumentNullException(nameof(builder)); } - ReserveClient(builder, typeof(TClient), builder.Name); + return AddTypedClientCore(builder, validateSingleType: false); + } + + internal static IHttpClientBuilder AddTypedClientCore(this IHttpClientBuilder builder, bool validateSingleType) + where TClient : class + { + ReserveClient(builder, typeof(TClient), builder.Name, validateSingleType); builder.Services.AddTransient(s => { @@ -378,7 +384,14 @@ public static IHttpClientBuilder AddTypedClient(this I throw new ArgumentNullException(nameof(builder)); } - ReserveClient(builder, typeof(TClient), builder.Name); + return AddTypedClientCore(builder, validateSingleType: false); + } + + internal static IHttpClientBuilder AddTypedClientCore(this IHttpClientBuilder builder, bool validateSingleType) + where TClient : class + where TImplementation : class, TClient + { + ReserveClient(builder, typeof(TClient), builder.Name, validateSingleType); builder.Services.AddTransient(s => { @@ -426,7 +439,13 @@ public static IHttpClientBuilder AddTypedClient(this IHttpClientBuilder throw new ArgumentNullException(nameof(factory)); } - ReserveClient(builder, typeof(TClient), builder.Name); + return AddTypedClientCore(builder, factory, validateSingleType: false); + } + + internal static IHttpClientBuilder AddTypedClientCore(this IHttpClientBuilder builder, Func factory, bool validateSingleType) + where TClient : class + { + ReserveClient(builder, typeof(TClient), builder.Name, validateSingleType); builder.Services.AddTransient(s => { @@ -473,7 +492,23 @@ public static IHttpClientBuilder AddTypedClient(this IHttpClientBuilder throw new ArgumentNullException(nameof(factory)); } - ReserveClient(builder, typeof(TClient), builder.Name); + return AddTypedClientCore(builder, factory, validateSingleType: false); + } + + internal static IHttpClientBuilder AddTypedClientCore(this IHttpClientBuilder builder, Func factory, bool validateSingleType) + where TClient : class + { + if (builder == null) + { + throw new ArgumentNullException(nameof(builder)); + } + + if (factory == null) + { + throw new ArgumentNullException(nameof(factory)); + } + + ReserveClient(builder, typeof(TClient), builder.Name, validateSingleType); builder.Services.AddTransient(s => { @@ -583,23 +618,19 @@ public static IHttpClientBuilder SetHandlerLifetime(this IHttpClientBuilder buil } // See comments on HttpClientMappingRegistry. - private static void ReserveClient(IHttpClientBuilder builder, Type type, string name) + private static void ReserveClient(IHttpClientBuilder builder, Type type, string name, bool validateSingleType) { var registry = (HttpClientMappingRegistry)builder.Services.Single(sd => sd.ServiceType == typeof(HttpClientMappingRegistry)).ImplementationInstance; Debug.Assert(registry != null); - // Check for same type registered twice. This can't work because typed clients have to be unique for DI to function. - if (registry.TypedClientRegistrations.TryGetValue(type, out var otherName)) - { - var message = - $"The HttpClient factory already has a registered client with the type '{type.FullName}'. " + - $"Client types must be unique. " + - $"Consider using inheritance to create multiple unique types with the same API surface."; - throw new InvalidOperationException(message); - } - // Check for same name registered to two types. This won't work because we rely on named options for the configuration. - if (registry.NamedClientRegistrations.TryGetValue(name, out var otherType)) + if (registry.NamedClientRegistrations.TryGetValue(name, out var otherType) && + + // Allow using the same name with multiple types in some cases (see callers). + validateSingleType && + + // Allow registering the same name twice to the same type. + type != otherType) { var message = $"The HttpClient factory already has a registered client with the name '{name}', bound to the type '{otherType.FullName}'. " + @@ -608,8 +639,10 @@ private static void ReserveClient(IHttpClientBuilder builder, Type type, string throw new InvalidOperationException(message); } - registry.TypedClientRegistrations[type] = name; - registry.NamedClientRegistrations[name] = type; + if (validateSingleType) + { + registry.NamedClientRegistrations[name] = type; + } } } } diff --git a/src/HttpClientFactory/Http/src/DependencyInjection/HttpClientFactoryServiceCollectionExtensions.cs b/src/HttpClientFactory/Http/src/DependencyInjection/HttpClientFactoryServiceCollectionExtensions.cs index 9351aef3b68..eda6e893099 100644 --- a/src/HttpClientFactory/Http/src/DependencyInjection/HttpClientFactoryServiceCollectionExtensions.cs +++ b/src/HttpClientFactory/Http/src/DependencyInjection/HttpClientFactoryServiceCollectionExtensions.cs @@ -210,7 +210,7 @@ public static IHttpClientBuilder AddHttpClient(this IServiceCollection var name = TypeNameHelper.GetTypeDisplayName(typeof(TClient), fullName: false); var builder = new DefaultHttpClientBuilder(services, name); - builder.AddTypedClient(); + builder.AddTypedClientCore(validateSingleType: true); return builder; } @@ -253,7 +253,7 @@ public static IHttpClientBuilder AddHttpClient(this IS var name = TypeNameHelper.GetTypeDisplayName(typeof(TClient), fullName: false); var builder = new DefaultHttpClientBuilder(services, name); - builder.AddTypedClient(); + builder.AddTypedClientCore(validateSingleType: true); return builder; } @@ -298,7 +298,7 @@ public static IHttpClientBuilder AddHttpClient(this IServiceCollection AddHttpClient(services); var builder = new DefaultHttpClientBuilder(services, name); - builder.AddTypedClient(); + builder.AddTypedClientCore(validateSingleType: false); // Name was explicitly provided. return builder; } @@ -349,7 +349,7 @@ public static IHttpClientBuilder AddHttpClient(this IS AddHttpClient(services); var builder = new DefaultHttpClientBuilder(services, name); - builder.AddTypedClient(); + builder.AddTypedClientCore(validateSingleType: false); // name was explicitly provided return builder; } @@ -394,7 +394,7 @@ public static IHttpClientBuilder AddHttpClient(this IServiceCollection var name = TypeNameHelper.GetTypeDisplayName(typeof(TClient), fullName: false); var builder = new DefaultHttpClientBuilder(services, name); builder.ConfigureHttpClient(configureClient); - builder.AddTypedClient(); + builder.AddTypedClientCore(validateSingleType: true); return builder; } @@ -439,7 +439,7 @@ public static IHttpClientBuilder AddHttpClient(this IServiceCollection var name = TypeNameHelper.GetTypeDisplayName(typeof(TClient), fullName: false); var builder = new DefaultHttpClientBuilder(services, name); builder.ConfigureHttpClient(configureClient); - builder.AddTypedClient(); + builder.AddTypedClientCore(validateSingleType: true); return builder; } @@ -489,7 +489,7 @@ public static IHttpClientBuilder AddHttpClient(this IS var name = TypeNameHelper.GetTypeDisplayName(typeof(TClient), fullName: false); var builder = new DefaultHttpClientBuilder(services, name); builder.ConfigureHttpClient(configureClient); - builder.AddTypedClient(); + builder.AddTypedClientCore(validateSingleType: true); return builder; } @@ -539,7 +539,7 @@ public static IHttpClientBuilder AddHttpClient(this IS var name = TypeNameHelper.GetTypeDisplayName(typeof(TClient), fullName: false); var builder = new DefaultHttpClientBuilder(services, name); builder.ConfigureHttpClient(configureClient); - builder.AddTypedClient(); + builder.AddTypedClientCore(validateSingleType: true); return builder; } @@ -591,7 +591,7 @@ public static IHttpClientBuilder AddHttpClient(this IServiceCollection var builder = new DefaultHttpClientBuilder(services, name); builder.ConfigureHttpClient(configureClient); - builder.AddTypedClient(); + builder.AddTypedClientCore(validateSingleType: false); // name was explicitly provided return builder; } @@ -643,7 +643,7 @@ public static IHttpClientBuilder AddHttpClient(this IServiceCollection var builder = new DefaultHttpClientBuilder(services, name); builder.ConfigureHttpClient(configureClient); - builder.AddTypedClient(); + builder.AddTypedClientCore(validateSingleType: false); // name was explictly provided return builder; } @@ -700,7 +700,7 @@ public static IHttpClientBuilder AddHttpClient(this IS var builder = new DefaultHttpClientBuilder(services, name); builder.ConfigureHttpClient(configureClient); - builder.AddTypedClient(); + builder.AddTypedClientCore(validateSingleType: false); // name was explicitly provided return builder; } @@ -757,7 +757,7 @@ public static IHttpClientBuilder AddHttpClient(this IS var builder = new DefaultHttpClientBuilder(services, name); builder.ConfigureHttpClient(configureClient); - builder.AddTypedClient(); + builder.AddTypedClientCore(validateSingleType: false); // name was explicitly provided return builder; } } diff --git a/src/HttpClientFactory/Http/src/DependencyInjection/HttpClientMappingRegistry.cs b/src/HttpClientFactory/Http/src/DependencyInjection/HttpClientMappingRegistry.cs index 7537293808d..42839d675bb 100644 --- a/src/HttpClientFactory/Http/src/DependencyInjection/HttpClientMappingRegistry.cs +++ b/src/HttpClientFactory/Http/src/DependencyInjection/HttpClientMappingRegistry.cs @@ -13,8 +13,6 @@ namespace Microsoft.Extensions.DependencyInjection // See: https://github.com/dotnet/extensions/issues/960 internal class HttpClientMappingRegistry { - public Dictionary TypedClientRegistrations { get; } = new Dictionary(); - public Dictionary NamedClientRegistrations { get; } = new Dictionary(); } } diff --git a/src/HttpClientFactory/Http/test/DependencyInjection/HttpClientFactoryServiceCollectionExtensionsTest.cs b/src/HttpClientFactory/Http/test/DependencyInjection/HttpClientFactoryServiceCollectionExtensionsTest.cs index 0f2efd748fc..82f5b811e1b 100644 --- a/src/HttpClientFactory/Http/test/DependencyInjection/HttpClientFactoryServiceCollectionExtensionsTest.cs +++ b/src/HttpClientFactory/Http/test/DependencyInjection/HttpClientFactoryServiceCollectionExtensionsTest.cs @@ -2,6 +2,9 @@ // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using System; +using System.Collections.Concurrent; +using System.Collections.Generic; +using System.Linq; using System.Net; using System.Net.Http; using System.Threading; @@ -26,7 +29,7 @@ public void AddHttpClient_IsSelfContained_CanCreateClient() var serviceCollection = new ServiceCollection(); // Act1 - serviceCollection.AddHttpClient(); + serviceCollection.AddHttpClient(); var services = serviceCollection.BuildServiceProvider(); var options = services.GetRequiredService>(); @@ -383,39 +386,82 @@ public void AddHttpClient_AddTypedClient_WithDelegate_ConfiguresNamedClient() } [Fact] - public void AddHttpClient_AddSameTypedClientTwice_ThrowsError() + public void AddHttpClient_AddSameTypedClientTwice_WithSameName_Works() { // Arrange var serviceCollection = new ServiceCollection(); serviceCollection.AddHttpClient(); // Act - var ex = Assert.Throws(() => serviceCollection.AddHttpClient("Test")); + serviceCollection.AddHttpClient(c => + { + c.BaseAddress = new Uri("http://example.com"); + }); + + var services = serviceCollection.BuildServiceProvider(); + + // Act2 + var client = services.GetRequiredService(); // Assert - Assert.Equal( - "The HttpClient factory already has a registered client with the type 'Microsoft.Extensions.Http.TestTypedClient'. " + - "Client types must be unique. " + - "Consider using inheritance to create multiple unique types with the same API surface.", - ex.Message); + Assert.Equal("http://example.com/", client.HttpClient.BaseAddress.AbsoluteUri); } [Fact] - public void AddHttpClient_AddSameTypedClientTwice_WithAddTypedClient_ThrowsError() + public void AddHttpClient_AddSameTypedClientTwice_WithSameName_WithAddTypedClient_Works() { // Arrange var serviceCollection = new ServiceCollection(); serviceCollection.AddHttpClient(); // Act - var ex = Assert.Throws(() => serviceCollection.AddHttpClient("Test").AddTypedClient()); + serviceCollection.AddHttpClient(nameof(TestTypedClient), c => + { + c.BaseAddress = new Uri("http://example.com"); + }) + .AddTypedClient(); + + var services = serviceCollection.BuildServiceProvider(); + + // Act2 + var client = services.GetRequiredService(); // Assert - Assert.Equal( - "The HttpClient factory already has a registered client with the type 'Microsoft.Extensions.Http.TestTypedClient'. " + - "Client types must be unique. " + - "Consider using inheritance to create multiple unique types with the same API surface.", - ex.Message); + Assert.Equal("http://example.com/", client.HttpClient.BaseAddress.AbsoluteUri); + } + + [Fact] + public void AddHttpClient_AddSameTypedClientTwice_WithDifferentNames_IsAllowed() + { + // Arrange + var serviceCollection = new ServiceCollection(); + serviceCollection.AddHttpClient("Test1"); + serviceCollection.AddHttpClient("Test2"); + + var services = serviceCollection.BuildServiceProvider(); + + // Act + var clients = services.GetRequiredService>(); + + // Assert + Assert.Equal(2, clients.Count()); + } + + [Fact] + public void AddHttpClient_AddSameTypedClientTwice_WithDifferentNames_WithAddTypedClient_IsAllowed() + { + // Arrange + var serviceCollection = new ServiceCollection(); + serviceCollection.AddHttpClient(); + serviceCollection.AddHttpClient("Test").AddTypedClient(); + + var services = serviceCollection.BuildServiceProvider(); + + // Act + var clients = services.GetRequiredService>(); + + // Assert + Assert.Equal(2, clients.Count()); } [Fact] @@ -437,21 +483,88 @@ public void AddHttpClient_AddSameNameWithTypedClientTwice_ThrowsError() } [Fact] - public void AddHttpClient_AddSameNameWithTypedClientTwice_WithAddTypedClient_ThrowsError() + public void AddHttpClient_AddSameNameWithTypedClientTwice_WithAddTypedClient_IsAllowed() { // Arrange var serviceCollection = new ServiceCollection(); - serviceCollection.AddHttpClient(); + serviceCollection.AddHttpClient(c => + { + c.BaseAddress = new Uri("http://example.com"); + }); + + // Act + serviceCollection.AddHttpClient("TestTypedClient").AddTypedClient(); + + var services = serviceCollection.BuildServiceProvider(); // Act - var ex = Assert.Throws(() => serviceCollection.AddHttpClient("TestTypedClient").AddTypedClient()); + var client = services.GetRequiredService(); // Assert - Assert.Equal( - "The HttpClient factory already has a registered client with the name 'TestTypedClient', bound to the type 'Microsoft.Extensions.Http.TestTypedClient'. " + - "Client names are computed based on the type name without considering the namespace ('TestTypedClient'). " + - "Use an overload of AddHttpClient that accepts a string and provide a unique name to resolve the conflict.", - ex.Message); + Assert.Equal("http://example.com/", client.HttpClient.BaseAddress.AbsoluteUri); + + // Act + var client2 = services.GetRequiredService(); + + // Assert + Assert.Equal("http://example.com/", client2.HttpClient.BaseAddress.AbsoluteUri); + } + + [Fact] + public void AddHttpClient_AddSameNameWithTypedClientTwice_WithExplicitName_IsAllowed() + { + // Arrange + var serviceCollection = new ServiceCollection(); + serviceCollection.AddHttpClient(c => + { + c.BaseAddress = new Uri("http://example.com"); + }); + + // Act + serviceCollection.AddHttpClient("TestTypedClient"); + + var services = serviceCollection.BuildServiceProvider(); + + // Act + var client = services.GetRequiredService(); + + // Assert + Assert.Equal("http://example.com/", client.HttpClient.BaseAddress.AbsoluteUri); + + // Act + var client2 = services.GetRequiredService(); + + // Assert + Assert.Equal("http://example.com/", client2.HttpClient.BaseAddress.AbsoluteUri); + } + + [Fact] + public void AddHttpClient_RegisteringMultipleTypes_WithAddTypedClient_IsAllowed() + { + // Arrange + var serviceCollection = new ServiceCollection(); + + // Act + serviceCollection.AddHttpClient("Test", c => + { + c.BaseAddress = new Uri("http://example.com"); + }) + .AddTypedClient() + .AddTypedClient(); + + var services = serviceCollection.BuildServiceProvider(); + + // Act + var client = services.GetRequiredService(); + + // Assert + Assert.Equal("http://example.com/", client.HttpClient.BaseAddress.AbsoluteUri); + + // Act + var client2 = services.GetRequiredService(); + + // Assert + Assert.Equal("http://example.com/", client2.HttpClient.BaseAddress.AbsoluteUri); } [Fact] @@ -466,7 +579,7 @@ public void AddHttpClient_AddTypedClient_WithServiceDelegate_ConfiguresNamedClie }); // Act - serviceCollection.AddHttpClient("test").AddTypedClient((c,s) => + serviceCollection.AddHttpClient("test").AddTypedClient((c, s) => { Assert.Equal("http://example.com/", c.BaseAddress.AbsoluteUri); c.BaseAddress = new Uri("http://example2.com"); @@ -555,7 +668,7 @@ public void AddHttpClient_WithTypedClient_AndServiceDelegate_ConfiguresClient() }); // Act1 - serviceCollection.AddHttpClient((s,c) => + serviceCollection.AddHttpClient((s, c) => { var options = s.GetRequiredService>(); c.BaseAddress = new Uri(options.Value.BaseAddress); @@ -565,7 +678,7 @@ public void AddHttpClient_WithTypedClient_AndServiceDelegate_ConfiguresClient() // Act2 var client = services.GetRequiredService(); - + // Assert Assert.Equal("http://example.com/", client.HttpClient.BaseAddress.AbsoluteUri); } @@ -582,7 +695,7 @@ public void AddHttpClient_WithTypedClientAndImplementation_AndServiceDelegate_Co }); // Act1 - serviceCollection.AddHttpClient((s,c) => + serviceCollection.AddHttpClient((s, c) => { var options = s.GetRequiredService>(); c.BaseAddress = new Uri(options.Value.BaseAddress); @@ -592,7 +705,7 @@ public void AddHttpClient_WithTypedClientAndImplementation_AndServiceDelegate_Co // Act2 var client = services.GetRequiredService(); - + // Assert Assert.Equal("http://example.com/", client.HttpClient.BaseAddress.AbsoluteUri); } @@ -609,7 +722,7 @@ public void AddHttpClient_WithTypedClient_AndServiceDelegate_ConfiguresNamedClie }); // Act1 - serviceCollection.AddHttpClient("test", (s,c) => + serviceCollection.AddHttpClient("test", (s, c) => { var options = s.GetRequiredService>(); c.BaseAddress = new Uri(options.Value.BaseAddress); @@ -619,7 +732,7 @@ public void AddHttpClient_WithTypedClient_AndServiceDelegate_ConfiguresNamedClie // Act2 var client = services.GetRequiredService(); - + // Assert Assert.Equal("http://example.com/", client.HttpClient.BaseAddress.AbsoluteUri); } @@ -636,7 +749,7 @@ public void AddHttpClient_WithTypedClientAndImplementation_AndServiceDelegate_Co }); // Act1 - serviceCollection.AddHttpClient("test", (s,c) => + serviceCollection.AddHttpClient("test", (s, c) => { var options = s.GetRequiredService>(); c.BaseAddress = new Uri(options.Value.BaseAddress); @@ -646,7 +759,7 @@ public void AddHttpClient_WithTypedClientAndImplementation_AndServiceDelegate_Co // Act2 var client = services.GetRequiredService(); - + // Assert Assert.Equal("http://example.com/", client.HttpClient.BaseAddress.AbsoluteUri); } @@ -1162,6 +1275,9 @@ public class TestTypedClient { public TestTypedClient(HttpClient httpClient) { + HttpClient = httpClient; } + + public HttpClient HttpClient { get; } } } diff --git a/src/Logging/Logging.Testing/src/Microsoft.Extensions.Logging.Testing.csproj b/src/Logging/Logging.Testing/src/Microsoft.Extensions.Logging.Testing.csproj index 0670cffcc90..0c07c01c103 100644 --- a/src/Logging/Logging.Testing/src/Microsoft.Extensions.Logging.Testing.csproj +++ b/src/Logging/Logging.Testing/src/Microsoft.Extensions.Logging.Testing.csproj @@ -18,7 +18,7 @@ - + diff --git a/src/TestingUtils/Microsoft.AspNetCore.Testing/ref/Microsoft.AspNetCore.Testing.csproj b/src/TestingUtils/Microsoft.AspNetCore.Testing/ref/Microsoft.AspNetCore.Testing.csproj deleted file mode 100644 index 4606a541110..00000000000 --- a/src/TestingUtils/Microsoft.AspNetCore.Testing/ref/Microsoft.AspNetCore.Testing.csproj +++ /dev/null @@ -1,32 +0,0 @@ - - - - netstandard2.0;net46 - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/TestingUtils/Microsoft.AspNetCore.Testing/ref/Microsoft.AspNetCore.Testing.net46.cs b/src/TestingUtils/Microsoft.AspNetCore.Testing/ref/Microsoft.AspNetCore.Testing.net46.cs deleted file mode 100644 index 17a922a6c7b..00000000000 --- a/src/TestingUtils/Microsoft.AspNetCore.Testing/ref/Microsoft.AspNetCore.Testing.net46.cs +++ /dev/null @@ -1,374 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -namespace Microsoft.AspNetCore.Testing -{ - public partial class AspNetTestAssemblyRunner : Xunit.Sdk.XunitTestAssemblyRunner - { - public AspNetTestAssemblyRunner(Xunit.Abstractions.ITestAssembly testAssembly, System.Collections.Generic.IEnumerable testCases, Xunit.Abstractions.IMessageSink diagnosticMessageSink, Xunit.Abstractions.IMessageSink executionMessageSink, Xunit.Abstractions.ITestFrameworkExecutionOptions executionOptions) : base (default(Xunit.Abstractions.ITestAssembly), default(System.Collections.Generic.IEnumerable), default(Xunit.Abstractions.IMessageSink), default(Xunit.Abstractions.IMessageSink), default(Xunit.Abstractions.ITestFrameworkExecutionOptions)) { } - [System.Diagnostics.DebuggerStepThroughAttribute] - protected override System.Threading.Tasks.Task AfterTestAssemblyStartingAsync() { throw null; } - protected override System.Threading.Tasks.Task BeforeTestAssemblyFinishedAsync() { throw null; } - protected override System.Threading.Tasks.Task RunTestCollectionAsync(Xunit.Sdk.IMessageBus messageBus, Xunit.Abstractions.ITestCollection testCollection, System.Collections.Generic.IEnumerable testCases, System.Threading.CancellationTokenSource cancellationTokenSource) { throw null; } - } - public partial class AspNetTestCollectionRunner : Xunit.Sdk.XunitTestCollectionRunner - { - public AspNetTestCollectionRunner(System.Collections.Generic.Dictionary assemblyFixtureMappings, Xunit.Abstractions.ITestCollection testCollection, System.Collections.Generic.IEnumerable testCases, Xunit.Abstractions.IMessageSink diagnosticMessageSink, Xunit.Sdk.IMessageBus messageBus, Xunit.Sdk.ITestCaseOrderer testCaseOrderer, Xunit.Sdk.ExceptionAggregator aggregator, System.Threading.CancellationTokenSource cancellationTokenSource) : base (default(Xunit.Abstractions.ITestCollection), default(System.Collections.Generic.IEnumerable), default(Xunit.Abstractions.IMessageSink), default(Xunit.Sdk.IMessageBus), default(Xunit.Sdk.ITestCaseOrderer), default(Xunit.Sdk.ExceptionAggregator), default(System.Threading.CancellationTokenSource)) { } - [System.Diagnostics.DebuggerStepThroughAttribute] - protected override System.Threading.Tasks.Task AfterTestCollectionStartingAsync() { throw null; } - protected override System.Threading.Tasks.Task BeforeTestCollectionFinishedAsync() { throw null; } - protected override System.Threading.Tasks.Task RunTestClassAsync(Xunit.Abstractions.ITestClass testClass, Xunit.Abstractions.IReflectionTypeInfo @class, System.Collections.Generic.IEnumerable testCases) { throw null; } - } - public partial class AspNetTestFramework : Xunit.Sdk.XunitTestFramework - { - public AspNetTestFramework(Xunit.Abstractions.IMessageSink messageSink) : base (default(Xunit.Abstractions.IMessageSink)) { } - protected override Xunit.Abstractions.ITestFrameworkExecutor CreateExecutor(System.Reflection.AssemblyName assemblyName) { throw null; } - } - public partial class AspNetTestFrameworkExecutor : Xunit.Sdk.XunitTestFrameworkExecutor - { - public AspNetTestFrameworkExecutor(System.Reflection.AssemblyName assemblyName, Xunit.Abstractions.ISourceInformationProvider sourceInformationProvider, Xunit.Abstractions.IMessageSink diagnosticMessageSink) : base (default(System.Reflection.AssemblyName), default(Xunit.Abstractions.ISourceInformationProvider), default(Xunit.Abstractions.IMessageSink)) { } - [System.Diagnostics.DebuggerStepThroughAttribute] - protected override void RunTestCases(System.Collections.Generic.IEnumerable testCases, Xunit.Abstractions.IMessageSink executionMessageSink, Xunit.Abstractions.ITestFrameworkExecutionOptions executionOptions) { } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Assembly, AllowMultiple=true)] - public partial class AssemblyFixtureAttribute : System.Attribute - { - public AssemblyFixtureAttribute(System.Type fixtureType) { } - public System.Type FixtureType { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Method, AllowMultiple=false)] - [Xunit.Sdk.XunitTestCaseDiscovererAttribute("Microsoft.AspNetCore.Testing.ConditionalFactDiscoverer", "Microsoft.AspNetCore.Testing")] - public partial class ConditionalFactAttribute : Xunit.FactAttribute - { - public ConditionalFactAttribute() { } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Method, AllowMultiple=false)] - [Xunit.Sdk.XunitTestCaseDiscovererAttribute("Microsoft.AspNetCore.Testing.ConditionalTheoryDiscoverer", "Microsoft.AspNetCore.Testing")] - public partial class ConditionalTheoryAttribute : Xunit.TheoryAttribute - { - public ConditionalTheoryAttribute() { } - } - public partial class CultureReplacer : System.IDisposable - { - public CultureReplacer(System.Globalization.CultureInfo culture, System.Globalization.CultureInfo uiCulture) { } - public CultureReplacer(string culture = "en-GB", string uiCulture = "en-US") { } - public static System.Globalization.CultureInfo DefaultCulture { get { throw null; } } - public static string DefaultCultureName { get { throw null; } } - public static string DefaultUICultureName { get { throw null; } } - public void Dispose() { } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Method, Inherited=true, AllowMultiple=false)] - public sealed partial class DockerOnlyAttribute : System.Attribute, Microsoft.AspNetCore.Testing.ITestCondition - { - public DockerOnlyAttribute() { } - public bool IsMet { get { throw null; } } - public string SkipReason { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true)] - public partial class EnvironmentVariableSkipConditionAttribute : System.Attribute, Microsoft.AspNetCore.Testing.ITestCondition - { - public EnvironmentVariableSkipConditionAttribute(string variableName, params string[] values) { } - public bool IsMet { get { throw null; } } - public bool RunOnMatch { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute] set { } } - public string SkipReason { get { throw null; } } - } - public static partial class ExceptionAssert - { - public static System.ArgumentException ThrowsArgument(System.Action testCode, string paramName, string exceptionMessage) { throw null; } - public static System.Threading.Tasks.Task ThrowsArgumentAsync(System.Func testCode, string paramName, string exceptionMessage) { throw null; } - public static System.ArgumentNullException ThrowsArgumentNull(System.Action testCode, string paramName) { throw null; } - public static System.ArgumentException ThrowsArgumentNullOrEmpty(System.Action testCode, string paramName) { throw null; } - public static System.Threading.Tasks.Task ThrowsArgumentNullOrEmptyAsync(System.Func testCode, string paramName) { throw null; } - public static System.ArgumentException ThrowsArgumentNullOrEmptyString(System.Action testCode, string paramName) { throw null; } - public static System.Threading.Tasks.Task ThrowsArgumentNullOrEmptyStringAsync(System.Func testCode, string paramName) { throw null; } - public static System.ArgumentOutOfRangeException ThrowsArgumentOutOfRange(System.Action testCode, string paramName, string exceptionMessage, object actualValue = null) { throw null; } - [System.Diagnostics.DebuggerStepThroughAttribute] - public static System.Threading.Tasks.Task ThrowsAsync(System.Func testCode, string exceptionMessage) where TException : System.Exception { throw null; } - public static TException Throws(System.Action testCode) where TException : System.Exception { throw null; } - public static TException Throws(System.Action testCode, string exceptionMessage) where TException : System.Exception { throw null; } - public static TException Throws(System.Func testCode, string exceptionMessage) where TException : System.Exception { throw null; } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Method)] - [Xunit.Sdk.TraitDiscovererAttribute("Microsoft.AspNetCore.Testing.FlakyTraitDiscoverer", "Microsoft.AspNetCore.Testing")] - public sealed partial class FlakyAttribute : System.Attribute, Xunit.Sdk.ITraitAttribute - { - public FlakyAttribute(string gitHubIssueUrl, string firstFilter, params string[] additionalFilters) { } - public System.Collections.Generic.IReadOnlyList Filters { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public string GitHubIssueUrl { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - } - public static partial class FlakyOn - { - public const string All = "All"; - public static partial class AzP - { - public const string All = "AzP:All"; - public const string Linux = "AzP:OS:Linux"; - public const string macOS = "AzP:OS:Darwin"; - public const string Windows = "AzP:OS:Windows_NT"; - } - public static partial class Helix - { - public const string All = "Helix:Queue:All"; - public const string Centos7Amd64 = "Helix:Queue:Centos.7.Amd64.Open"; - public const string Debian8Amd64 = "Helix:Queue:Debian.8.Amd64.Open"; - public const string Debian9Amd64 = "Helix:Queue:Debian.9.Amd64.Open"; - public const string Fedora27Amd64 = "Helix:Queue:Fedora.27.Amd64.Open"; - public const string Fedora28Amd64 = "Helix:Queue:Fedora.28.Amd64.Open"; - public const string macOS1012Amd64 = "Helix:Queue:OSX.1012.Amd64.Open"; - public const string Redhat7Amd64 = "Helix:Queue:Redhat.7.Amd64.Open"; - public const string Ubuntu1604Amd64 = "Helix:Queue:Ubuntu.1604.Amd64.Open"; - public const string Ubuntu1810Amd64 = "Helix:Queue:Ubuntu.1810.Amd64.Open"; - public const string Windows10Amd64 = "Helix:Queue:Windows.10.Amd64.ClientRS4.VS2017.Open"; - } - } - public partial class FlakyTraitDiscoverer : Xunit.Sdk.ITraitDiscoverer - { - public FlakyTraitDiscoverer() { } - public System.Collections.Generic.IEnumerable> GetTraits(Xunit.Abstractions.IAttributeInfo traitAttribute) { throw null; } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Method, AllowMultiple=false)] - public partial class FrameworkSkipConditionAttribute : System.Attribute, Microsoft.AspNetCore.Testing.ITestCondition - { - public FrameworkSkipConditionAttribute(Microsoft.AspNetCore.Testing.RuntimeFrameworks excludedFrameworks) { } - public bool IsMet { get { throw null; } } - public string SkipReason { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute] set { } } - } - public static partial class HelixQueues - { - public const string Centos7Amd64 = "Centos.7.Amd64.Open"; - public const string Debian8Amd64 = "Debian.8.Amd64.Open"; - public const string Debian9Amd64 = "Debian.9.Amd64.Open"; - public const string Fedora27Amd64 = "Fedora.27.Amd64.Open"; - public const string Fedora28Amd64 = "Fedora.28.Amd64.Open"; - public const string macOS1012Amd64 = "OSX.1012.Amd64.Open"; - public const string Redhat7Amd64 = "Redhat.7.Amd64.Open"; - public const string Ubuntu1604Amd64 = "Ubuntu.1604.Amd64.Open"; - public const string Ubuntu1810Amd64 = "Ubuntu.1810.Amd64.Open"; - public const string Windows10Amd64 = "Windows.10.Amd64.ClientRS4.VS2017.Open"; - } - public static partial class HttpClientSlim - { - [System.Diagnostics.DebuggerStepThroughAttribute] - public static System.Threading.Tasks.Task GetSocket(System.Uri requestUri) { throw null; } - [System.Diagnostics.DebuggerStepThroughAttribute] - public static System.Threading.Tasks.Task GetStringAsync(string requestUri, bool validateCertificate = true) { throw null; } - [System.Diagnostics.DebuggerStepThroughAttribute] - public static System.Threading.Tasks.Task GetStringAsync(System.Uri requestUri, bool validateCertificate = true) { throw null; } - [System.Diagnostics.DebuggerStepThroughAttribute] - public static System.Threading.Tasks.Task PostAsync(string requestUri, System.Net.Http.HttpContent content, bool validateCertificate = true) { throw null; } - [System.Diagnostics.DebuggerStepThroughAttribute] - public static System.Threading.Tasks.Task PostAsync(System.Uri requestUri, System.Net.Http.HttpContent content, bool validateCertificate = true) { throw null; } - } - public partial interface ITestCondition - { - bool IsMet { get; } - string SkipReason { get; } - } - public partial interface ITestMethodLifecycle - { - System.Threading.Tasks.Task OnTestEndAsync(Microsoft.AspNetCore.Testing.TestContext context, System.Exception exception, System.Threading.CancellationToken cancellationToken); - System.Threading.Tasks.Task OnTestStartAsync(Microsoft.AspNetCore.Testing.TestContext context, System.Threading.CancellationToken cancellationToken); - } - [System.AttributeUsageAttribute(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true)] - public partial class MaximumOSVersionAttribute : System.Attribute, Microsoft.AspNetCore.Testing.ITestCondition - { - public MaximumOSVersionAttribute(Microsoft.AspNetCore.Testing.OperatingSystems operatingSystem, string maxVersion) { } - public bool IsMet { get { throw null; } } - public string SkipReason { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute] set { } } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true)] - public partial class MinimumOSVersionAttribute : System.Attribute, Microsoft.AspNetCore.Testing.ITestCondition - { - public MinimumOSVersionAttribute(Microsoft.AspNetCore.Testing.OperatingSystems operatingSystem, string minVersion) { } - public bool IsMet { get { throw null; } } - public string SkipReason { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute] set { } } - } - [System.FlagsAttribute] - public enum OperatingSystems - { - Linux = 1, - MacOSX = 2, - Windows = 4, - } - [System.AttributeUsageAttribute(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true)] - public partial class OSSkipConditionAttribute : System.Attribute, Microsoft.AspNetCore.Testing.ITestCondition - { - public OSSkipConditionAttribute(Microsoft.AspNetCore.Testing.OperatingSystems operatingSystem) { } - [System.ObsoleteAttribute("Use the Minimum/MaximumOSVersionAttribute for version checks.", true)] - public OSSkipConditionAttribute(Microsoft.AspNetCore.Testing.OperatingSystems operatingSystem, params string[] versions) { } - public bool IsMet { get { throw null; } } - public string SkipReason { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute] set { } } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=false)] - [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] - public partial class RepeatAttribute : System.Attribute - { - public RepeatAttribute(int runCount = 10) { } - public int RunCount { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - } - public partial class RepeatContext - { - public RepeatContext(int limit) { } - public static Microsoft.AspNetCore.Testing.RepeatContext Current { get { throw null; } } - public int CurrentIteration { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute] set { } } - public int Limit { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Method)] - public partial class ReplaceCultureAttribute : Xunit.Sdk.BeforeAfterTestAttribute - { - public ReplaceCultureAttribute() { } - public ReplaceCultureAttribute(string currentCulture, string currentUICulture) { } - public System.Globalization.CultureInfo Culture { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public System.Globalization.CultureInfo UICulture { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public override void After(System.Reflection.MethodInfo methodUnderTest) { } - public override void Before(System.Reflection.MethodInfo methodUnderTest) { } - } - [System.FlagsAttribute] - public enum RuntimeFrameworks - { - None = 0, - Mono = 1, - CLR = 2, - CoreCLR = 4, - } - [System.AttributeUsageAttribute(System.AttributeTargets.Assembly | System.AttributeTargets.Class, AllowMultiple=false)] - public partial class ShortClassNameAttribute : System.Attribute - { - public ShortClassNameAttribute() { } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=false)] - public partial class SkipOnCIAttribute : System.Attribute, Microsoft.AspNetCore.Testing.ITestCondition - { - public SkipOnCIAttribute(string issueUrl = "") { } - public bool IsMet { get { throw null; } } - public string IssueUrl { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public string SkipReason { get { throw null; } } - public static string GetIfOnAzdo() { throw null; } - public static string GetTargetHelixQueue() { throw null; } - public static bool OnAzdo() { throw null; } - public static bool OnCI() { throw null; } - public static bool OnHelix() { throw null; } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=false)] - public partial class SkipOnHelixAttribute : System.Attribute, Microsoft.AspNetCore.Testing.ITestCondition - { - public SkipOnHelixAttribute(string issueUrl) { } - public bool IsMet { get { throw null; } } - public string IssueUrl { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public string Queues { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute] set { } } - public string SkipReason { get { throw null; } } - public static string GetTargetHelixQueue() { throw null; } - public static bool OnHelix() { throw null; } - } - public partial class SkippedTestCase : Xunit.Sdk.XunitTestCase - { - [System.ObsoleteAttribute("Called by the de-serializer; should only be called by deriving classes for de-serialization purposes")] - public SkippedTestCase() { } - public SkippedTestCase(string skipReason, Xunit.Abstractions.IMessageSink diagnosticMessageSink, Xunit.Sdk.TestMethodDisplay defaultMethodDisplay, Xunit.Sdk.TestMethodDisplayOptions defaultMethodDisplayOptions, Xunit.Abstractions.ITestMethod testMethod, object[] testMethodArguments = null) { } - public override void Deserialize(Xunit.Abstractions.IXunitSerializationInfo data) { } - protected override string GetSkipReason(Xunit.Abstractions.IAttributeInfo factAttribute) { throw null; } - public override void Serialize(Xunit.Abstractions.IXunitSerializationInfo data) { } - } - public static partial class TaskExtensions - { - [System.Diagnostics.DebuggerStepThroughAttribute] - public static System.Threading.Tasks.Task TimeoutAfter(this System.Threading.Tasks.Task task, System.TimeSpan timeout, [System.Runtime.CompilerServices.CallerFilePathAttribute] string filePath = null, [System.Runtime.CompilerServices.CallerLineNumberAttribute] int lineNumber = 0) { throw null; } - [System.Diagnostics.DebuggerStepThroughAttribute] - public static System.Threading.Tasks.Task TimeoutAfter(this System.Threading.Tasks.Task task, System.TimeSpan timeout, [System.Runtime.CompilerServices.CallerFilePathAttribute] string filePath = null, [System.Runtime.CompilerServices.CallerLineNumberAttribute] int lineNumber = 0) { throw null; } - } - public sealed partial class TestContext - { - public TestContext(System.Type testClass, object[] constructorArguments, System.Reflection.MethodInfo testMethod, object[] methodArguments, Xunit.Abstractions.ITestOutputHelper output) { } - public object[] ConstructorArguments { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public Microsoft.AspNetCore.Testing.TestFileOutputContext FileOutput { get { throw null; } } - public object[] MethodArguments { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public Xunit.Abstractions.ITestOutputHelper Output { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public System.Type TestClass { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public System.Reflection.MethodInfo TestMethod { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - } - public sealed partial class TestFileOutputContext - { - public TestFileOutputContext(Microsoft.AspNetCore.Testing.TestContext parent) { } - public string AssemblyOutputDirectory { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public string TestClassName { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public string TestClassOutputDirectory { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public string TestName { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public static string GetAssemblyBaseDirectory(System.Reflection.Assembly assembly, string baseDirectory = null) { throw null; } - public static string GetOutputDirectory(System.Reflection.Assembly assembly) { throw null; } - public static bool GetPreserveExistingLogsInOutput(System.Reflection.Assembly assembly) { throw null; } - public static string GetTestClassName(System.Type type) { throw null; } - public static string GetTestMethodName(System.Reflection.MethodInfo method, object[] arguments) { throw null; } - public string GetUniqueFileName(string prefix, string extension) { throw null; } - public static string RemoveIllegalFileChars(string s) { throw null; } - } - public static partial class TestMethodExtensions - { - public static string EvaluateSkipConditions(this Xunit.Abstractions.ITestMethod testMethod) { throw null; } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Assembly, AllowMultiple=false, Inherited=true)] - public partial class TestOutputDirectoryAttribute : System.Attribute - { - public TestOutputDirectoryAttribute(string preserveExistingLogsInOutput, string targetFramework, string baseDirectory = null) { } - public string BaseDirectory { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public bool PreserveExistingLogsInOutput { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public string TargetFramework { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - } - [System.ObsoleteAttribute("This API is obsolete and the pattern its usage encouraged should not be used anymore. See https://github.com/dotnet/extensions/issues/1697 for details.")] - public partial class TestPathUtilities - { - public TestPathUtilities() { } - public static string GetRepoRootDirectory() { throw null; } - public static string GetSolutionRootDirectory(string solution) { throw null; } - } - public static partial class TestPlatformHelper - { - public static bool IsLinux { get { throw null; } } - public static bool IsMac { get { throw null; } } - public static bool IsMono { get { throw null; } } - public static bool IsWindows { get { throw null; } } - } - public static partial class WindowsVersions - { - public const string Win10 = "10.0"; - public const string Win10_19H1 = "10.0.18362"; - public const string Win10_19H2 = "10.0.18363"; - public const string Win10_20H1 = "10.0.19033"; - public const string Win10_RS4 = "10.0.17134"; - public const string Win10_RS5 = "10.0.17763"; - [System.ObsoleteAttribute("Use Win7 instead.", true)] - public const string Win2008R2 = "6.1"; - public const string Win7 = "6.1"; - public const string Win8 = "6.2"; - public const string Win81 = "6.3"; - } -} -namespace Microsoft.AspNetCore.Testing.Tracing -{ - public partial class CollectingEventListener : System.Diagnostics.Tracing.EventListener - { - public CollectingEventListener() { } - public void CollectFrom(System.Diagnostics.Tracing.EventSource eventSource) { } - public void CollectFrom(string eventSourceName) { } - public System.Collections.Generic.IReadOnlyList GetEventsWritten() { throw null; } - protected override void OnEventSourceCreated(System.Diagnostics.Tracing.EventSource eventSource) { } - protected override void OnEventWritten(System.Diagnostics.Tracing.EventWrittenEventArgs eventData) { } - } - public partial class EventAssert - { - public EventAssert(int expectedId, string expectedName, System.Diagnostics.Tracing.EventLevel expectedLevel) { } - public static void Collection(System.Collections.Generic.IEnumerable events, params Microsoft.AspNetCore.Testing.Tracing.EventAssert[] asserts) { } - public static Microsoft.AspNetCore.Testing.Tracing.EventAssert Event(int id, string name, System.Diagnostics.Tracing.EventLevel level) { throw null; } - public Microsoft.AspNetCore.Testing.Tracing.EventAssert Payload(string name, System.Action asserter) { throw null; } - public Microsoft.AspNetCore.Testing.Tracing.EventAssert Payload(string name, object expectedValue) { throw null; } - } - [Xunit.CollectionAttribute("Microsoft.AspNetCore.Testing.Tracing.EventSourceTestCollection")] - public abstract partial class EventSourceTestBase : System.IDisposable - { - public const string CollectionName = "Microsoft.AspNetCore.Testing.Tracing.EventSourceTestCollection"; - public EventSourceTestBase() { } - protected void CollectFrom(System.Diagnostics.Tracing.EventSource eventSource) { } - protected void CollectFrom(string eventSourceName) { } - public void Dispose() { } - protected System.Collections.Generic.IReadOnlyList GetEvents() { throw null; } - } -} diff --git a/src/TestingUtils/Microsoft.AspNetCore.Testing/ref/Microsoft.AspNetCore.Testing.netstandard2.0.cs b/src/TestingUtils/Microsoft.AspNetCore.Testing/ref/Microsoft.AspNetCore.Testing.netstandard2.0.cs deleted file mode 100644 index 17a922a6c7b..00000000000 --- a/src/TestingUtils/Microsoft.AspNetCore.Testing/ref/Microsoft.AspNetCore.Testing.netstandard2.0.cs +++ /dev/null @@ -1,374 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -namespace Microsoft.AspNetCore.Testing -{ - public partial class AspNetTestAssemblyRunner : Xunit.Sdk.XunitTestAssemblyRunner - { - public AspNetTestAssemblyRunner(Xunit.Abstractions.ITestAssembly testAssembly, System.Collections.Generic.IEnumerable testCases, Xunit.Abstractions.IMessageSink diagnosticMessageSink, Xunit.Abstractions.IMessageSink executionMessageSink, Xunit.Abstractions.ITestFrameworkExecutionOptions executionOptions) : base (default(Xunit.Abstractions.ITestAssembly), default(System.Collections.Generic.IEnumerable), default(Xunit.Abstractions.IMessageSink), default(Xunit.Abstractions.IMessageSink), default(Xunit.Abstractions.ITestFrameworkExecutionOptions)) { } - [System.Diagnostics.DebuggerStepThroughAttribute] - protected override System.Threading.Tasks.Task AfterTestAssemblyStartingAsync() { throw null; } - protected override System.Threading.Tasks.Task BeforeTestAssemblyFinishedAsync() { throw null; } - protected override System.Threading.Tasks.Task RunTestCollectionAsync(Xunit.Sdk.IMessageBus messageBus, Xunit.Abstractions.ITestCollection testCollection, System.Collections.Generic.IEnumerable testCases, System.Threading.CancellationTokenSource cancellationTokenSource) { throw null; } - } - public partial class AspNetTestCollectionRunner : Xunit.Sdk.XunitTestCollectionRunner - { - public AspNetTestCollectionRunner(System.Collections.Generic.Dictionary assemblyFixtureMappings, Xunit.Abstractions.ITestCollection testCollection, System.Collections.Generic.IEnumerable testCases, Xunit.Abstractions.IMessageSink diagnosticMessageSink, Xunit.Sdk.IMessageBus messageBus, Xunit.Sdk.ITestCaseOrderer testCaseOrderer, Xunit.Sdk.ExceptionAggregator aggregator, System.Threading.CancellationTokenSource cancellationTokenSource) : base (default(Xunit.Abstractions.ITestCollection), default(System.Collections.Generic.IEnumerable), default(Xunit.Abstractions.IMessageSink), default(Xunit.Sdk.IMessageBus), default(Xunit.Sdk.ITestCaseOrderer), default(Xunit.Sdk.ExceptionAggregator), default(System.Threading.CancellationTokenSource)) { } - [System.Diagnostics.DebuggerStepThroughAttribute] - protected override System.Threading.Tasks.Task AfterTestCollectionStartingAsync() { throw null; } - protected override System.Threading.Tasks.Task BeforeTestCollectionFinishedAsync() { throw null; } - protected override System.Threading.Tasks.Task RunTestClassAsync(Xunit.Abstractions.ITestClass testClass, Xunit.Abstractions.IReflectionTypeInfo @class, System.Collections.Generic.IEnumerable testCases) { throw null; } - } - public partial class AspNetTestFramework : Xunit.Sdk.XunitTestFramework - { - public AspNetTestFramework(Xunit.Abstractions.IMessageSink messageSink) : base (default(Xunit.Abstractions.IMessageSink)) { } - protected override Xunit.Abstractions.ITestFrameworkExecutor CreateExecutor(System.Reflection.AssemblyName assemblyName) { throw null; } - } - public partial class AspNetTestFrameworkExecutor : Xunit.Sdk.XunitTestFrameworkExecutor - { - public AspNetTestFrameworkExecutor(System.Reflection.AssemblyName assemblyName, Xunit.Abstractions.ISourceInformationProvider sourceInformationProvider, Xunit.Abstractions.IMessageSink diagnosticMessageSink) : base (default(System.Reflection.AssemblyName), default(Xunit.Abstractions.ISourceInformationProvider), default(Xunit.Abstractions.IMessageSink)) { } - [System.Diagnostics.DebuggerStepThroughAttribute] - protected override void RunTestCases(System.Collections.Generic.IEnumerable testCases, Xunit.Abstractions.IMessageSink executionMessageSink, Xunit.Abstractions.ITestFrameworkExecutionOptions executionOptions) { } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Assembly, AllowMultiple=true)] - public partial class AssemblyFixtureAttribute : System.Attribute - { - public AssemblyFixtureAttribute(System.Type fixtureType) { } - public System.Type FixtureType { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Method, AllowMultiple=false)] - [Xunit.Sdk.XunitTestCaseDiscovererAttribute("Microsoft.AspNetCore.Testing.ConditionalFactDiscoverer", "Microsoft.AspNetCore.Testing")] - public partial class ConditionalFactAttribute : Xunit.FactAttribute - { - public ConditionalFactAttribute() { } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Method, AllowMultiple=false)] - [Xunit.Sdk.XunitTestCaseDiscovererAttribute("Microsoft.AspNetCore.Testing.ConditionalTheoryDiscoverer", "Microsoft.AspNetCore.Testing")] - public partial class ConditionalTheoryAttribute : Xunit.TheoryAttribute - { - public ConditionalTheoryAttribute() { } - } - public partial class CultureReplacer : System.IDisposable - { - public CultureReplacer(System.Globalization.CultureInfo culture, System.Globalization.CultureInfo uiCulture) { } - public CultureReplacer(string culture = "en-GB", string uiCulture = "en-US") { } - public static System.Globalization.CultureInfo DefaultCulture { get { throw null; } } - public static string DefaultCultureName { get { throw null; } } - public static string DefaultUICultureName { get { throw null; } } - public void Dispose() { } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Method, Inherited=true, AllowMultiple=false)] - public sealed partial class DockerOnlyAttribute : System.Attribute, Microsoft.AspNetCore.Testing.ITestCondition - { - public DockerOnlyAttribute() { } - public bool IsMet { get { throw null; } } - public string SkipReason { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true)] - public partial class EnvironmentVariableSkipConditionAttribute : System.Attribute, Microsoft.AspNetCore.Testing.ITestCondition - { - public EnvironmentVariableSkipConditionAttribute(string variableName, params string[] values) { } - public bool IsMet { get { throw null; } } - public bool RunOnMatch { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute] set { } } - public string SkipReason { get { throw null; } } - } - public static partial class ExceptionAssert - { - public static System.ArgumentException ThrowsArgument(System.Action testCode, string paramName, string exceptionMessage) { throw null; } - public static System.Threading.Tasks.Task ThrowsArgumentAsync(System.Func testCode, string paramName, string exceptionMessage) { throw null; } - public static System.ArgumentNullException ThrowsArgumentNull(System.Action testCode, string paramName) { throw null; } - public static System.ArgumentException ThrowsArgumentNullOrEmpty(System.Action testCode, string paramName) { throw null; } - public static System.Threading.Tasks.Task ThrowsArgumentNullOrEmptyAsync(System.Func testCode, string paramName) { throw null; } - public static System.ArgumentException ThrowsArgumentNullOrEmptyString(System.Action testCode, string paramName) { throw null; } - public static System.Threading.Tasks.Task ThrowsArgumentNullOrEmptyStringAsync(System.Func testCode, string paramName) { throw null; } - public static System.ArgumentOutOfRangeException ThrowsArgumentOutOfRange(System.Action testCode, string paramName, string exceptionMessage, object actualValue = null) { throw null; } - [System.Diagnostics.DebuggerStepThroughAttribute] - public static System.Threading.Tasks.Task ThrowsAsync(System.Func testCode, string exceptionMessage) where TException : System.Exception { throw null; } - public static TException Throws(System.Action testCode) where TException : System.Exception { throw null; } - public static TException Throws(System.Action testCode, string exceptionMessage) where TException : System.Exception { throw null; } - public static TException Throws(System.Func testCode, string exceptionMessage) where TException : System.Exception { throw null; } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Method)] - [Xunit.Sdk.TraitDiscovererAttribute("Microsoft.AspNetCore.Testing.FlakyTraitDiscoverer", "Microsoft.AspNetCore.Testing")] - public sealed partial class FlakyAttribute : System.Attribute, Xunit.Sdk.ITraitAttribute - { - public FlakyAttribute(string gitHubIssueUrl, string firstFilter, params string[] additionalFilters) { } - public System.Collections.Generic.IReadOnlyList Filters { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public string GitHubIssueUrl { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - } - public static partial class FlakyOn - { - public const string All = "All"; - public static partial class AzP - { - public const string All = "AzP:All"; - public const string Linux = "AzP:OS:Linux"; - public const string macOS = "AzP:OS:Darwin"; - public const string Windows = "AzP:OS:Windows_NT"; - } - public static partial class Helix - { - public const string All = "Helix:Queue:All"; - public const string Centos7Amd64 = "Helix:Queue:Centos.7.Amd64.Open"; - public const string Debian8Amd64 = "Helix:Queue:Debian.8.Amd64.Open"; - public const string Debian9Amd64 = "Helix:Queue:Debian.9.Amd64.Open"; - public const string Fedora27Amd64 = "Helix:Queue:Fedora.27.Amd64.Open"; - public const string Fedora28Amd64 = "Helix:Queue:Fedora.28.Amd64.Open"; - public const string macOS1012Amd64 = "Helix:Queue:OSX.1012.Amd64.Open"; - public const string Redhat7Amd64 = "Helix:Queue:Redhat.7.Amd64.Open"; - public const string Ubuntu1604Amd64 = "Helix:Queue:Ubuntu.1604.Amd64.Open"; - public const string Ubuntu1810Amd64 = "Helix:Queue:Ubuntu.1810.Amd64.Open"; - public const string Windows10Amd64 = "Helix:Queue:Windows.10.Amd64.ClientRS4.VS2017.Open"; - } - } - public partial class FlakyTraitDiscoverer : Xunit.Sdk.ITraitDiscoverer - { - public FlakyTraitDiscoverer() { } - public System.Collections.Generic.IEnumerable> GetTraits(Xunit.Abstractions.IAttributeInfo traitAttribute) { throw null; } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Method, AllowMultiple=false)] - public partial class FrameworkSkipConditionAttribute : System.Attribute, Microsoft.AspNetCore.Testing.ITestCondition - { - public FrameworkSkipConditionAttribute(Microsoft.AspNetCore.Testing.RuntimeFrameworks excludedFrameworks) { } - public bool IsMet { get { throw null; } } - public string SkipReason { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute] set { } } - } - public static partial class HelixQueues - { - public const string Centos7Amd64 = "Centos.7.Amd64.Open"; - public const string Debian8Amd64 = "Debian.8.Amd64.Open"; - public const string Debian9Amd64 = "Debian.9.Amd64.Open"; - public const string Fedora27Amd64 = "Fedora.27.Amd64.Open"; - public const string Fedora28Amd64 = "Fedora.28.Amd64.Open"; - public const string macOS1012Amd64 = "OSX.1012.Amd64.Open"; - public const string Redhat7Amd64 = "Redhat.7.Amd64.Open"; - public const string Ubuntu1604Amd64 = "Ubuntu.1604.Amd64.Open"; - public const string Ubuntu1810Amd64 = "Ubuntu.1810.Amd64.Open"; - public const string Windows10Amd64 = "Windows.10.Amd64.ClientRS4.VS2017.Open"; - } - public static partial class HttpClientSlim - { - [System.Diagnostics.DebuggerStepThroughAttribute] - public static System.Threading.Tasks.Task GetSocket(System.Uri requestUri) { throw null; } - [System.Diagnostics.DebuggerStepThroughAttribute] - public static System.Threading.Tasks.Task GetStringAsync(string requestUri, bool validateCertificate = true) { throw null; } - [System.Diagnostics.DebuggerStepThroughAttribute] - public static System.Threading.Tasks.Task GetStringAsync(System.Uri requestUri, bool validateCertificate = true) { throw null; } - [System.Diagnostics.DebuggerStepThroughAttribute] - public static System.Threading.Tasks.Task PostAsync(string requestUri, System.Net.Http.HttpContent content, bool validateCertificate = true) { throw null; } - [System.Diagnostics.DebuggerStepThroughAttribute] - public static System.Threading.Tasks.Task PostAsync(System.Uri requestUri, System.Net.Http.HttpContent content, bool validateCertificate = true) { throw null; } - } - public partial interface ITestCondition - { - bool IsMet { get; } - string SkipReason { get; } - } - public partial interface ITestMethodLifecycle - { - System.Threading.Tasks.Task OnTestEndAsync(Microsoft.AspNetCore.Testing.TestContext context, System.Exception exception, System.Threading.CancellationToken cancellationToken); - System.Threading.Tasks.Task OnTestStartAsync(Microsoft.AspNetCore.Testing.TestContext context, System.Threading.CancellationToken cancellationToken); - } - [System.AttributeUsageAttribute(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true)] - public partial class MaximumOSVersionAttribute : System.Attribute, Microsoft.AspNetCore.Testing.ITestCondition - { - public MaximumOSVersionAttribute(Microsoft.AspNetCore.Testing.OperatingSystems operatingSystem, string maxVersion) { } - public bool IsMet { get { throw null; } } - public string SkipReason { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute] set { } } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true)] - public partial class MinimumOSVersionAttribute : System.Attribute, Microsoft.AspNetCore.Testing.ITestCondition - { - public MinimumOSVersionAttribute(Microsoft.AspNetCore.Testing.OperatingSystems operatingSystem, string minVersion) { } - public bool IsMet { get { throw null; } } - public string SkipReason { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute] set { } } - } - [System.FlagsAttribute] - public enum OperatingSystems - { - Linux = 1, - MacOSX = 2, - Windows = 4, - } - [System.AttributeUsageAttribute(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true)] - public partial class OSSkipConditionAttribute : System.Attribute, Microsoft.AspNetCore.Testing.ITestCondition - { - public OSSkipConditionAttribute(Microsoft.AspNetCore.Testing.OperatingSystems operatingSystem) { } - [System.ObsoleteAttribute("Use the Minimum/MaximumOSVersionAttribute for version checks.", true)] - public OSSkipConditionAttribute(Microsoft.AspNetCore.Testing.OperatingSystems operatingSystem, params string[] versions) { } - public bool IsMet { get { throw null; } } - public string SkipReason { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute] set { } } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=false)] - [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] - public partial class RepeatAttribute : System.Attribute - { - public RepeatAttribute(int runCount = 10) { } - public int RunCount { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - } - public partial class RepeatContext - { - public RepeatContext(int limit) { } - public static Microsoft.AspNetCore.Testing.RepeatContext Current { get { throw null; } } - public int CurrentIteration { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute] set { } } - public int Limit { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Method)] - public partial class ReplaceCultureAttribute : Xunit.Sdk.BeforeAfterTestAttribute - { - public ReplaceCultureAttribute() { } - public ReplaceCultureAttribute(string currentCulture, string currentUICulture) { } - public System.Globalization.CultureInfo Culture { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public System.Globalization.CultureInfo UICulture { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public override void After(System.Reflection.MethodInfo methodUnderTest) { } - public override void Before(System.Reflection.MethodInfo methodUnderTest) { } - } - [System.FlagsAttribute] - public enum RuntimeFrameworks - { - None = 0, - Mono = 1, - CLR = 2, - CoreCLR = 4, - } - [System.AttributeUsageAttribute(System.AttributeTargets.Assembly | System.AttributeTargets.Class, AllowMultiple=false)] - public partial class ShortClassNameAttribute : System.Attribute - { - public ShortClassNameAttribute() { } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=false)] - public partial class SkipOnCIAttribute : System.Attribute, Microsoft.AspNetCore.Testing.ITestCondition - { - public SkipOnCIAttribute(string issueUrl = "") { } - public bool IsMet { get { throw null; } } - public string IssueUrl { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public string SkipReason { get { throw null; } } - public static string GetIfOnAzdo() { throw null; } - public static string GetTargetHelixQueue() { throw null; } - public static bool OnAzdo() { throw null; } - public static bool OnCI() { throw null; } - public static bool OnHelix() { throw null; } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=false)] - public partial class SkipOnHelixAttribute : System.Attribute, Microsoft.AspNetCore.Testing.ITestCondition - { - public SkipOnHelixAttribute(string issueUrl) { } - public bool IsMet { get { throw null; } } - public string IssueUrl { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public string Queues { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute] set { } } - public string SkipReason { get { throw null; } } - public static string GetTargetHelixQueue() { throw null; } - public static bool OnHelix() { throw null; } - } - public partial class SkippedTestCase : Xunit.Sdk.XunitTestCase - { - [System.ObsoleteAttribute("Called by the de-serializer; should only be called by deriving classes for de-serialization purposes")] - public SkippedTestCase() { } - public SkippedTestCase(string skipReason, Xunit.Abstractions.IMessageSink diagnosticMessageSink, Xunit.Sdk.TestMethodDisplay defaultMethodDisplay, Xunit.Sdk.TestMethodDisplayOptions defaultMethodDisplayOptions, Xunit.Abstractions.ITestMethod testMethod, object[] testMethodArguments = null) { } - public override void Deserialize(Xunit.Abstractions.IXunitSerializationInfo data) { } - protected override string GetSkipReason(Xunit.Abstractions.IAttributeInfo factAttribute) { throw null; } - public override void Serialize(Xunit.Abstractions.IXunitSerializationInfo data) { } - } - public static partial class TaskExtensions - { - [System.Diagnostics.DebuggerStepThroughAttribute] - public static System.Threading.Tasks.Task TimeoutAfter(this System.Threading.Tasks.Task task, System.TimeSpan timeout, [System.Runtime.CompilerServices.CallerFilePathAttribute] string filePath = null, [System.Runtime.CompilerServices.CallerLineNumberAttribute] int lineNumber = 0) { throw null; } - [System.Diagnostics.DebuggerStepThroughAttribute] - public static System.Threading.Tasks.Task TimeoutAfter(this System.Threading.Tasks.Task task, System.TimeSpan timeout, [System.Runtime.CompilerServices.CallerFilePathAttribute] string filePath = null, [System.Runtime.CompilerServices.CallerLineNumberAttribute] int lineNumber = 0) { throw null; } - } - public sealed partial class TestContext - { - public TestContext(System.Type testClass, object[] constructorArguments, System.Reflection.MethodInfo testMethod, object[] methodArguments, Xunit.Abstractions.ITestOutputHelper output) { } - public object[] ConstructorArguments { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public Microsoft.AspNetCore.Testing.TestFileOutputContext FileOutput { get { throw null; } } - public object[] MethodArguments { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public Xunit.Abstractions.ITestOutputHelper Output { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public System.Type TestClass { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public System.Reflection.MethodInfo TestMethod { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - } - public sealed partial class TestFileOutputContext - { - public TestFileOutputContext(Microsoft.AspNetCore.Testing.TestContext parent) { } - public string AssemblyOutputDirectory { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public string TestClassName { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public string TestClassOutputDirectory { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public string TestName { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public static string GetAssemblyBaseDirectory(System.Reflection.Assembly assembly, string baseDirectory = null) { throw null; } - public static string GetOutputDirectory(System.Reflection.Assembly assembly) { throw null; } - public static bool GetPreserveExistingLogsInOutput(System.Reflection.Assembly assembly) { throw null; } - public static string GetTestClassName(System.Type type) { throw null; } - public static string GetTestMethodName(System.Reflection.MethodInfo method, object[] arguments) { throw null; } - public string GetUniqueFileName(string prefix, string extension) { throw null; } - public static string RemoveIllegalFileChars(string s) { throw null; } - } - public static partial class TestMethodExtensions - { - public static string EvaluateSkipConditions(this Xunit.Abstractions.ITestMethod testMethod) { throw null; } - } - [System.AttributeUsageAttribute(System.AttributeTargets.Assembly, AllowMultiple=false, Inherited=true)] - public partial class TestOutputDirectoryAttribute : System.Attribute - { - public TestOutputDirectoryAttribute(string preserveExistingLogsInOutput, string targetFramework, string baseDirectory = null) { } - public string BaseDirectory { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public bool PreserveExistingLogsInOutput { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - public string TargetFramework { [System.Runtime.CompilerServices.CompilerGeneratedAttribute] get { throw null; } } - } - [System.ObsoleteAttribute("This API is obsolete and the pattern its usage encouraged should not be used anymore. See https://github.com/dotnet/extensions/issues/1697 for details.")] - public partial class TestPathUtilities - { - public TestPathUtilities() { } - public static string GetRepoRootDirectory() { throw null; } - public static string GetSolutionRootDirectory(string solution) { throw null; } - } - public static partial class TestPlatformHelper - { - public static bool IsLinux { get { throw null; } } - public static bool IsMac { get { throw null; } } - public static bool IsMono { get { throw null; } } - public static bool IsWindows { get { throw null; } } - } - public static partial class WindowsVersions - { - public const string Win10 = "10.0"; - public const string Win10_19H1 = "10.0.18362"; - public const string Win10_19H2 = "10.0.18363"; - public const string Win10_20H1 = "10.0.19033"; - public const string Win10_RS4 = "10.0.17134"; - public const string Win10_RS5 = "10.0.17763"; - [System.ObsoleteAttribute("Use Win7 instead.", true)] - public const string Win2008R2 = "6.1"; - public const string Win7 = "6.1"; - public const string Win8 = "6.2"; - public const string Win81 = "6.3"; - } -} -namespace Microsoft.AspNetCore.Testing.Tracing -{ - public partial class CollectingEventListener : System.Diagnostics.Tracing.EventListener - { - public CollectingEventListener() { } - public void CollectFrom(System.Diagnostics.Tracing.EventSource eventSource) { } - public void CollectFrom(string eventSourceName) { } - public System.Collections.Generic.IReadOnlyList GetEventsWritten() { throw null; } - protected override void OnEventSourceCreated(System.Diagnostics.Tracing.EventSource eventSource) { } - protected override void OnEventWritten(System.Diagnostics.Tracing.EventWrittenEventArgs eventData) { } - } - public partial class EventAssert - { - public EventAssert(int expectedId, string expectedName, System.Diagnostics.Tracing.EventLevel expectedLevel) { } - public static void Collection(System.Collections.Generic.IEnumerable events, params Microsoft.AspNetCore.Testing.Tracing.EventAssert[] asserts) { } - public static Microsoft.AspNetCore.Testing.Tracing.EventAssert Event(int id, string name, System.Diagnostics.Tracing.EventLevel level) { throw null; } - public Microsoft.AspNetCore.Testing.Tracing.EventAssert Payload(string name, System.Action asserter) { throw null; } - public Microsoft.AspNetCore.Testing.Tracing.EventAssert Payload(string name, object expectedValue) { throw null; } - } - [Xunit.CollectionAttribute("Microsoft.AspNetCore.Testing.Tracing.EventSourceTestCollection")] - public abstract partial class EventSourceTestBase : System.IDisposable - { - public const string CollectionName = "Microsoft.AspNetCore.Testing.Tracing.EventSourceTestCollection"; - public EventSourceTestBase() { } - protected void CollectFrom(System.Diagnostics.Tracing.EventSource eventSource) { } - protected void CollectFrom(string eventSourceName) { } - public void Dispose() { } - protected System.Collections.Generic.IReadOnlyList GetEvents() { throw null; } - } -} diff --git a/src/TestingUtils/Microsoft.AspNetCore.Testing/src/Microsoft.AspNetCore.Testing.csproj b/src/TestingUtils/Microsoft.AspNetCore.Testing/src/Microsoft.AspNetCore.Testing.csproj index 448351fee56..a27f74f21a1 100644 --- a/src/TestingUtils/Microsoft.AspNetCore.Testing/src/Microsoft.AspNetCore.Testing.csproj +++ b/src/TestingUtils/Microsoft.AspNetCore.Testing/src/Microsoft.AspNetCore.Testing.csproj @@ -9,10 +9,9 @@ false true - true - true true + false diff --git a/src/TestingUtils/Microsoft.AspNetCore.Testing/test/Microsoft.AspNetCore.Testing.Tests.csproj b/src/TestingUtils/Microsoft.AspNetCore.Testing/test/Microsoft.AspNetCore.Testing.Tests.csproj index 5a7366503d6..654d48dcb1d 100644 --- a/src/TestingUtils/Microsoft.AspNetCore.Testing/test/Microsoft.AspNetCore.Testing.Tests.csproj +++ b/src/TestingUtils/Microsoft.AspNetCore.Testing/test/Microsoft.AspNetCore.Testing.Tests.csproj @@ -14,7 +14,6 @@ -