Exemplo n.º 1
0
        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();
        }
Exemplo n.º 2
0
        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++;
            }
        }
Exemplo n.º 3
0
        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();
        }
Exemplo n.º 4
0
 public void TestInvalidInputThrowsInValidateAndCompute()
 {
     AssertEx.Throws <ArgumentException>(() => Luhn.Compute(".123foo456:"));
     AssertEx.Throws <ArgumentException>(() => Luhn.Validate("*789baz012_"));
 }