public async Task RunActionAsync(int input, bool hasErrors) { //SETUP var options = EfInMemory.CreateNewContextOptions(); using (var context = new EfCoreContext(options)) { var action = new MockBizActionAsync(context); var runner = new RunnerWriteDbAsync <int, string>(action, context); //ATTEMPT var output = await runner.RunActionAsync(input); //VERIFY output.ShouldEqual(input.ToString()); runner.HasErrors.ShouldEqual(hasErrors); context.Authors.Count().ShouldEqual(hasErrors ? 0 : 1); } }