private void validateButton_Click(object sender, EventArgs e) { var number = inputBox.Text; if (string.IsNullOrEmpty(number)) { return; } LogLn(string.Format("Validating number {0}:", number)); try { var ok = Luhn.Validate(number); if (ok) { LogLn("\tOK"); } else { LogLn(string.Format( "\tKO: correct last number should be {0}", Luhn.Compute(number.Substring(0, number.Length - 1)))); } } catch (Exception ex) { Log(string.Format("\tError: {0}", ex.Message)); } LogLn(); }
public void TestCompute() { var index = 0; foreach (var testCard in testCards) { var input = testCard.Substring(0, testCard.Length - 1); var expected = testCard.Substring(testCard.Length - 1); var result = Luhn.Compute(input); Assert.AreEqual(expected, result.ToString(), "Failed at index #" + index); index++; } }
private void computeButton_Click(object sender, EventArgs e) { var number = inputBox.Text; if (string.IsNullOrEmpty(number)) { return; } LogLn(string.Format("Computing Luhn checksum for number {0}:", number)); try { var result = Luhn.Compute(number); LogLn(string.Format("\tResult: {0} - Complete number is {1}", result, number + result.ToString())); } catch (Exception ex) { Log(string.Format("\tError: {0}", ex.Message)); } LogLn(); }
public void TestInvalidInputThrowsInValidateAndCompute() { AssertEx.Throws <ArgumentException>(() => Luhn.Compute(".123foo456:")); AssertEx.Throws <ArgumentException>(() => Luhn.Validate("*789baz012_")); }