public void Parse_can_successfully_parse_various_fractions()
        {
            var scenarios = new Dictionary <string, Fraction>
            {
                { "3/4", new Fraction(3, 4) },
                { "-3/4", new Fraction(-3, 4) },
                { "-100 3/4", new Fraction(-100, 3, 4) },
                { "123 3/4", new Fraction(123, 3, 4) },
                { "16/4", new Fraction(4, 0, 4) },
            };
            var sut = new FractionParser();

            foreach (var scenario in scenarios)
            {
                Assert.That(() => sut.Parse(scenario.Key), Is.EqualTo(scenario.Value), scenario.Key);
            }
        }
        public void Parse_throws_FormatException_for_an_invalid_string()
        {
            var sut = new FractionParser();

            Assert.That(() => sut.Parse("Foo Bar Baz"), Throws.InstanceOf <FormatException>());
        }