internal void SetPrices(PointOfSaleTerminalService terminal) { terminal.SetPricing("A", 1.25, true, 3, 3); terminal.SetPricing("B", 4.25, false, 0, 0); terminal.SetPricing("C", 1, true, 6, 5); terminal.SetPricing("D", 0.75, false, 0, 0); }
public void ExampleTest5() { PointOfSaleTerminalService terminal = new PointOfSaleTerminalService(); this.SetPrices(terminal); // series: (7 A, 1 B, 5 C, 1 D) terminal.ScanProduct("A"); terminal.ScanProduct("B"); terminal.ScanProduct("A"); terminal.ScanProduct("A"); terminal.ScanProduct("A"); terminal.ScanProduct("A"); terminal.ScanProduct("A"); terminal.ScanProduct("A"); terminal.ScanProduct("C"); terminal.ScanProduct("C"); terminal.ScanProduct("C"); terminal.ScanProduct("C"); terminal.ScanProduct("C"); terminal.ScanProduct("D"); decimal expected = 17.25M; decimal result = terminal.CalculateTotal(); Assert.Equal(expected, result); output.WriteLine("Example 5 result: $" + result); }
public void ExampleTest2() { PointOfSaleTerminalService terminal = new PointOfSaleTerminalService(); this.SetPrices(terminal); terminal.ScanProduct("C"); terminal.ScanProduct("C"); terminal.ScanProduct("C"); terminal.ScanProduct("C"); terminal.ScanProduct("C"); terminal.ScanProduct("C"); terminal.ScanProduct("C"); decimal expected = 6.00M; decimal result = terminal.CalculateTotal(); Assert.Equal(expected, result); output.WriteLine("Example 2 result: $" + result); }
public void ExampleTest4() { string scanResult; PointOfSaleTerminalService terminal = new PointOfSaleTerminalService(); this.SetPrices(terminal); // series of scans: FABBAACACCCCCDD (F:1 A:4 B:2 C:6 D:2) scanResult = terminal.ScanProduct("F"); // Product doesn´t exist (It hasn´t been registered as a valid product before hand) if (scanResult != "OK") { output.WriteLine(scanResult); } scanResult = terminal.ScanProduct("A"); scanResult = terminal.ScanProduct("B"); scanResult = terminal.ScanProduct("B"); scanResult = terminal.ScanProduct("A"); scanResult = terminal.ScanProduct("A"); scanResult = terminal.ScanProduct("C"); scanResult = terminal.ScanProduct("A"); scanResult = terminal.ScanProduct("C"); scanResult = terminal.ScanProduct("C"); scanResult = terminal.ScanProduct("C"); scanResult = terminal.ScanProduct("C"); scanResult = terminal.ScanProduct("C"); scanResult = terminal.ScanProduct("D"); scanResult = terminal.ScanProduct("D"); decimal expected = 19.25M; decimal result = terminal.CalculateTotal(); Assert.Equal(expected, result); output.WriteLine("Example 4 result: $" + result); }