Example #1
0
        public void Decode_WhenPassedAValidCodedStringWithNoTrack2_ShouldUseTrack1()
        {
            string raw = "%B1234567890123456^SMITH/R E.MR      ^1611201165600106000000?";

            var decoder = new SwipeCardDecoder();

            CardDetails details = decoder.Decode(raw);

            Assert.AreEqual("1234567890123456", details.Number);
            Assert.AreEqual("SMITH/R E.MR", details.Name);
            Assert.AreEqual("16", details.ExpiryYear);
            Assert.AreEqual("11", details.ExpiryMonth);
        }
Example #2
0
        public void Decode_WhenPassedAValidCodedStringWithTrack2DisagreeingWithTrack1_ShouldUseTrack2()
        {
            string raw = "%B1234567890123456^SMITH/R E.MR      ^1611201165600106000000?;2345678901234567=151220116561060250?";

            var decoder = new SwipeCardDecoder();

            CardDetails details = decoder.Decode(raw);

            Assert.AreEqual("2345678901234567", details.Number);
            Assert.AreEqual("SMITH/R E.MR", details.Name);
            Assert.AreEqual("15", details.ExpiryYear);
            Assert.AreEqual("12", details.ExpiryMonth);
        }
Example #3
0
        public void Decode_WhenPassedAValidCodedStringWithWhitespaceOnName_ShouldTrimName()
        {
            string raw = "%B1234567890123456^SMITH/R E.MR      ^1611201165600106000000?;1234567890123456=161120116561060250?";

            var decoder = new SwipeCardDecoder();

            CardDetails details = decoder.Decode(raw);

            Assert.AreEqual("1234567890123456", details.Number);
            Assert.AreEqual("SMITH/R E.MR", details.Name);
            Assert.AreEqual("16", details.ExpiryYear);
            Assert.AreEqual("11", details.ExpiryMonth);
        }
Example #4
0
        public void Decode_WhenPassedAValidCodedStringWithAlternateSeparator_ShouldDecodeCorrectly()
        {
            string raw = "%B1234567890123456=SMITH/R E.MR=1611201165600106000000?;1234567890123456=161120116561060250?";

            var decoder = new SwipeCardDecoder();

            CardDetails details = decoder.Decode(raw);

            Assert.AreEqual("1234567890123456", details.Number);
            Assert.AreEqual("SMITH/R E.MR", details.Name);
            Assert.AreEqual("16", details.ExpiryYear);
            Assert.AreEqual("11", details.ExpiryMonth);
        }
Example #5
0
        private void DecodeDetails()
        {
            string raw = builder.ToString();

            var decoder = new SwipeCardDecoder();

            try
            {
                CardDetails details = decoder.Decode(raw);
                details.Validate();

                number.Text = details.Number;
                name.Text   = details.Name;
                month.Text  = details.ExpiryMonth;
                year.Text   = details.ExpiryYear;
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message);
            }


            builder.Clear();
        }
Example #6
0
 public void Setup()
 {
     decoder = new SwipeCardDecoder();
 }