public async Task SelectProduct_CompletedTransaction_ExpectPrintGratitude() { var product = new Product { Name = "Item", Cost = 5 }; _mockPurchaseHandler.Stub(pH => pH.SelectProductAsync(Arg <Product> .Matches(p => p.Name.Equals(product.Name, StringComparison.OrdinalIgnoreCase)))) .ReturnAsync(new PurchaseResult { Accepted = true, AmountDue = 3 }); await _sut.SelectProductAsync(product); _mockVendingMachineDisplay.AssertWasCalled(d => d.PrintGratitude(), options => options.Repeat.Once()); }