public void CalculateChange_InValidData_ThrowsException() { // Arrange const double amount = 10; const double productPrice = 20; // Act var calculator = new ConsoleApp.ChangeCalculator(); // Assert Assert.Throws <ArgumentException>(() => calculator.CalculateChange(amount, productPrice)); }
public void CalculateChange_ValidData_ReturnsCorrectly(double amount, double productPrice, Dictionary <double, int> expectedResult) { // Arrange // Act var calculator = new ConsoleApp.ChangeCalculator(); calculator.CalculateChange(amount, productPrice); // Assert var dict = calculator.GetChange(); Assert.NotNull(dict); Assert.Equal(expectedResult.Count, dict.Count); foreach (var item in dict) { Assert.Contains(item, expectedResult); } }