public void Parse_ValidInput_Returns_ExpectedResult(string amount, long expected) { AmountParser parser = new AmountParser(); var result = parser.ParseAndGetNumberOfHalfPence(amount); Assert.AreEqual(expected, result); }
public void GetAmountInWordsTest_Should_Return_Valid_Amount_In_Words() { var amountParser = new AmountParser(); var result = amountParser.GetAmountInWords(5523345.67); Assert.AreEqual(result, "FIVE MILLION AND FIVE TWENTY-THREE THOUSAND AND THREE HUNDRED AND FORTY-FIVE DOLLARS AND SIXTY-SEVEN CENTS"); }
public void GetAmountInWordsTest_Should_Return_Valid_Amount_In_Words_When_Only_Decimal() { var amountParser = new AmountParser(); var result = amountParser.GetAmountInWords(.22); Assert.AreEqual(result, "TWENTY-TWO CENTS"); }
public void GetAmountInWordsTest_Should_Return_Valid_Amount_In_Words_When_Only_Digits() { var amountParser = new AmountParser(); var result = amountParser.GetAmountInWords(11); Assert.AreEqual(result, "ELEVEN DOLLARS"); }
static void Main(string[] args) { string argument = args.Length > 0 ? args[0] : string.Empty; IMagicPurse purse = null; switch (argument) { case "-a": purse = new MagicPurseAsync(new Splitter()); break; case "-q": purse = new MagicPurseQueue(new Splitter()); break; case "-s": case "": purse = new MagicPurseSync(new Splitter()); break; default: PrintInvalidArguments(); return; } Console.WriteLine("Welcome to the MagicPurse"); var terminate = false; var parser = new AmountParser(); while (!terminate) { terminate = ReadAmountFromConsole(out var amount); if (!terminate) { try { var halfPence = parser.ParseAndGetNumberOfHalfPence(amount); Console.WriteLine("Calculation in progress, please wait."); var startTime = DateTime.Now; var makeEvenChange = purse.GetAllSplits(halfPence); var duration = DateTime.Now - startTime; Console.WriteLine($"Number of possibilities: {makeEvenChange} (took {duration.TotalMilliseconds}ms)"); } catch (ArgumentException a) { Console.WriteLine(a.Message); } } } }
public void Parse_ValidInput_Throws_ArgumentException(string amount) { AmountParser parser = new AmountParser(); Assert.Throws <ArgumentException>(() => parser.ParseAndGetNumberOfHalfPence(amount)); }