" " Version: 1.0.0 " Before: unlet! input span expected Execute (finds the largest product if span equals length): let input = "29" let span = 2 let expected = 18 AssertEqual expected, LargestProduct(input, span) Execute (can find the largest product of 2 with numbers in order): let input = "0123456789" let span = 2 let expected = 72 AssertEqual expected, LargestProduct(input, span) Execute (can find the largest product of 2): let input = "576802143" let span = 2 let expected = 48 AssertEqual expected, LargestProduct(input, span) Execute (can find the largest product of 3 with numbers in order): let input = "0123456789" let span = 3 let expected = 504 AssertEqual expected, LargestProduct(input, span) Execute (can find the largest product of 3): let input = "1027839564" let span = 3 let expected = 270 AssertEqual expected, LargestProduct(input, span) Execute (can find the largest product of 5 with numbers in order): let input = "0123456789" let span = 5 let expected = 15120 AssertEqual expected, LargestProduct(input, span) Execute (can get the largest product of a big number): let input = "73167176531330624919225119674426574742355349194934" let span = 6 let expected = 23520 AssertEqual expected, LargestProduct(input, span) Execute (reports zero if the only digits are zero): let input = "0000" let span = 2 let expected = 0 AssertEqual expected, LargestProduct(input, span) Execute (reports zero if all spans include zero): let input = "99099" let span = 3 let expected = 0 AssertEqual expected, LargestProduct(input, span) Execute (rejects span longer than string length): let input = "123" let span = 4 let expected = -1 AssertEqual expected, LargestProduct(input, span) Execute (reports 1 for empty string and empty product (0 span)): let input = "" let span = 0 let expected = 1 AssertEqual expected, LargestProduct(input, span) Execute (reports 1 for nonempty string and empty product (0 span)): let input = "123" let span = 0 let expected = 1 AssertEqual expected, LargestProduct(input, span) Execute (rejects empty string and nonzero span): let input = "" let span = 1 let expected = -1 AssertEqual expected, LargestProduct(input, span) Execute (rejects invalid character in digits): AssertThrows call LargestProduct('1234a5', 2) AssertEqual 'invalid input', g:vader_exception Execute (rejects negative span): let input = "12345" let span = -1 let expected = -1 AssertEqual expected, LargestProduct(input, span)