public void ReturnFromServicesModelBinderTypeWhenCallBinderType() { var fromServices = new FromServicesAttribute(); var modelBinder = fromServices.BinderType; Assert.AreEqual(typeof(FromServicesModelBinder), modelBinder); }
public async Task <RunSummary> RunAsync(IXunitTestCase testCase, IServiceProvider provider, IMessageSink diagnosticMessageSink, IMessageBus messageBus, object?[] constructorArguments, ExceptionAggregator aggregator, CancellationTokenSource cancellationTokenSource) { var scope = provider.CreateScope(); await using var _ = scope.AsAsyncDisposable().ConfigureAwait(false); var raw = new Dictionary <int, object>(); foreach (var kv in FromServicesAttribute.CreateFromServices(testCase.Method.ToRuntimeMethod())) { raw[kv.Key] = testCase.TestMethodArguments[kv.Key]; testCase.TestMethodArguments[kv.Key] = kv.Value == typeof(ITestOutputHelper) ? throw new NotSupportedException("Can't inject ITestOutputHelper via method arguments when use StaFact") : provider.GetService(kv.Value); } constructorArguments = DependencyInjectionTestMethodRunner.CreateTestClassConstructorArguments(scope.ServiceProvider, constructorArguments, aggregator); var summary = await testCase.RunAsync(diagnosticMessageSink, messageBus, constructorArguments, aggregator, cancellationTokenSource).ConfigureAwait(false); foreach (var kv in raw) { testCase.TestMethodArguments[kv.Key] = kv.Value; } return(summary); }
public void ReturnInstanceOfTypeFromServicesModelBinder() { var fromServices = new FromServicesAttribute(); var modelBinder = fromServices.GetBinder(); Assert.IsInstanceOfType(modelBinder, typeof(FromServicesModelBinder)); }
public void InheriteOfModelBinderAttribute() { var fromServices = new FromServicesAttribute(); Assert.IsInstanceOfType(fromServices, typeof(ModelBinderAttribute)); }