public void Return_corrected_account_number_when_a_digit_is_missing_a_bar() { var bankOcrLine = new OcrReader(); var accountAsString = bankOcrLine.ReadAccountsAsStrings(File.ReadAllLines($@"reference_asciiarts\123956189_ILL.txt")).Single(); Check.That(accountAsString).IsEqualTo("123956188"); }
public void Account_123956189_is_an_invalid_account() { var bankOcrLine = new OcrReader(); var actualAccount = bankOcrLine.ReadAccounts(File.ReadAllLines($@"reference_asciiarts\123956189.txt")).Single(); Check.That(actualAccount.IsValid()).IsFalse(); }
public void Return_account_number_123956189_when_file_contains_123956189() { var bankOcrLine = new OcrReader(); var actual = bankOcrLine.ReadAccountsAsStrings(File.ReadAllLines($@"reference_asciiarts\444444444.txt")); Check.That(actual).ContainsExactly("444444444 ERR"); }
public void Returns_account_as_1_questionMark_3956189_when_input_using_123956189_ill() { var bankOcrLine = new OcrReader(); var actualAccount = bankOcrLine.ReadAccounts(File.ReadAllLines($@"reference_asciiarts\0123456789_correct_checksum_but_one_digit_flured.txt")).Single(); Check.That(actualAccount.AsString()).IsEqualTo("123456789"); }
public void Return_invalid_account_as_a_string_tailed_by_ERR() { var bankOcrLine = new OcrReader(); var actualAccount = bankOcrLine.ReadAccounts(File.ReadAllLines($@"reference_asciiarts\444444444.txt")).Single(); Check.That(actualAccount.AsString()).IsEqualTo("444444444 ERR"); }
public void Returns_account_as_a_valid_account_when_input_using_488067775_with_one_flur_digit() { var bankOcrLine = new OcrReader(); var actualAccount = bankOcrLine.ReadAccounts(File.ReadAllLines($@"reference_asciiarts\488067775.txt")).Single(); Check.That(actualAccount.AsString()).IsEqualTo("480067775"); }
public void Returns_3_accounts_when_read_file_contains_12_lines_of_asciiarts() { var readAllLines = File.ReadAllLines(@"reference_asciiarts\list_of_accounts.txt"); var ocrReader = new OcrReader(); var expected = ocrReader.ReadAccountsAsStrings(readAllLines); Check.That(expected).Contains("123456789", "444444444 ERR", "000000000"); }
public void Returns_9_when_read_file_contains_asciiart_is_9() { var readAllLines = File.ReadAllLines(@"reference_asciiarts\9.txt"); var ocrReader = new OcrReader(); int expected = ocrReader.Read(readAllLines); Check.That(expected).IsEqualTo(9); }
public void Throws_when_not_the_4th_line_of_a_digit_source_is_not_blank() { var bankOcrLine = new OcrReader(); Check.ThatCode( () => { bankOcrLine.ReadAccountsAsStrings(File.ReadAllLines($@"reference_asciiarts\invalidAccount_123956189_forAllDigitSource_the_4th_line_should_be_blank.txt")).ToArray(); }) .Throws <ArgumentException>() .WithMessage("Each account is 4 lines long"); }
public void Throws_when_not_all_lines_contains_exactly_27_characters() { var bankOcrLine = new OcrReader(); Check.ThatCode( () => { var actual = bankOcrLine.ReadAccountsAsStrings(File.ReadAllLines($@"reference_asciiarts\invalidAccount_123956189_allLineShouldHaveExactly27Characters.txt")).ToArray(); }) .Throws <ArgumentException>() .WithMessage("All lines should have exactly 27 characters. they are: | _| _||_||_ | _ ||_||_|"); }