public async Task DisposeAsyncIsPreferred( string expectedResponse, TestLambdaMessage request, ServiceCollection collection, ISerializer serializer, ILogger logger, [Substitute] ILambdaInitializationService initializationService, [Substitute] MultiDisposableLambda lambda, [Substitute] LambdaScope scope, [Substitute] ILambdaContext context ) { collection.AddSingleton(serializer); collection.AddSingleton(initializationService); collection.AddSingleton <TestLambda>(lambda); collection.AddSingleton(scope); using var inputStream = await CreateStreamForRequest(request); var provider = collection.BuildServiceProvider(); await using (var host = new TestLambdaHost(lambdaHost => { lambdaHost.ServiceProvider = provider; lambdaHost.RunInitializationServices = false; lambdaHost.Logger = logger; })) { await host.Run(inputStream, context); } await lambda.Received().DisposeAsync(); lambda.DidNotReceive().Dispose(); }
public async Task FinalizationIsSuppressed( string expectedResponse, TestLambdaMessage request, ServiceCollection collection, ISerializer serializer, ILogger logger, [Substitute] Action <object> suppressor, [Substitute] ILambdaInitializationService initializationService, [Substitute] MultiDisposableLambda lambda, [Substitute] LambdaScope scope, [Substitute] ILambdaContext context ) { collection.AddSingleton(serializer); collection.AddSingleton(initializationService); collection.AddSingleton <TestLambda>(lambda); collection.AddSingleton(scope); TestLambdaHost host; using var inputStream = await CreateStreamForRequest(request); var provider = collection.BuildServiceProvider(); await using (host = new TestLambdaHost(lambdaHost => { lambdaHost.ServiceProvider = provider; lambdaHost.RunInitializationServices = false; lambdaHost.SuppressFinalize = suppressor; lambdaHost.Logger = logger; })) { await host.Run(inputStream, context); } suppressor.Received()(Is(host)); }