Exemplo n.º 1
0
        public void FindFirst_ShouldReturnNull_OnNoMatch()
        {
            var tlvs = EmvTlvList.Parse(_validAsciiHexString);
            var _tag = tlvs.FindFirst("5F20");

            Assert.Null(_tag);
        }
Exemplo n.º 2
0
        public void FindAll_ShouldReturnEmptyList_OnNoMatch()
        {
            var tlvs = EmvTlvList.Parse(_validAsciiHexString);
            var _tag = tlvs.FindAll("5F20");

            Assert.Empty(_tag);
        }
Exemplo n.º 3
0
        public void Parse_ShouldHandle_PrimitiveMultiByteExtendedTag_WithPadding()
        {
            var tlvs = EmvTlvList.Parse($"0000{_primitiveMultiByteExtendedTag}0000");

            AssertPrimitiveMultiByteExtendedTag(tlvs);
            Assert.Equal(_primitiveMultiByteExtendedTag, tlvs.Tlv.Hex);
        }
Exemplo n.º 4
0
        public void Parse_ShouldHandle_PrimitiveMultiByteExtendedTag()
        {
            var tlvs = EmvTlvList.Parse(_primitiveMultiByteExtendedTag);

            AssertPrimitiveMultiByteExtendedTag(tlvs);
            Assert.Equal(_primitiveMultiByteExtendedTag, tlvs.Tlv.Hex);
        }
Exemplo n.º 5
0
        public void FindFirst_ShouldReturnNull_OnPartialMatchWithMultiByteTag()
        {
            var tlvs = EmvTlvList.Parse(_validAsciiHexString);
            var _tag = tlvs.FindFirst("5F");

            Assert.Null(_tag);
        }
Exemplo n.º 6
0
        public void FindFirst_ShouldLocate_MultiByteTag()
        {
            var tlvs = EmvTlvList.Parse(_validAsciiHexString);
            var _tag = tlvs.FindFirst("5F2D");

            Assert.NotNull(_tag);
            Assert.True(_tag.Tag.Hex == "5F2D");
        }
Exemplo n.º 7
0
        public void FindFirst_ShouldLocate_SecondLevelChildTag()
        {
            var tlvs = EmvTlvList.Parse(_validAsciiHexString);
            var _tag = tlvs.FindFirst("88");

            Assert.NotNull(_tag);
            Assert.True(_tag.Tag.Hex == "88");
        }
Exemplo n.º 8
0
        public void FindFirst_ShouldLocate_FirstLevelChildTag()
        {
            var tlvs = EmvTlvList.Parse(_validAsciiHexString);
            var _84 = tlvs.FindFirst("84");

            Assert.NotNull(_84);
            Assert.True(_84.Tag.Hex == "84");
        }
Exemplo n.º 9
0
        public void FindFirst_ShouldLocate_ConstructedTag()
        {
            var tlvs = EmvTlvList.Parse(_validAsciiHexString);
            var _tag = tlvs.FindFirst("A5");

            Assert.NotNull(_tag);
            Assert.True(_tag.Tag.Hex == "A5");
        }
Exemplo n.º 10
0
        public void FindFirst_ShouldLocate_RootTag()
        {
            var tlvs = EmvTlvList.Parse(_validAsciiHexString);
            var _6F = tlvs.FindFirst(0x6F);

            Assert.NotNull(_6F);
            Assert.True(_6F.Tag.Hex == "6F");
        }
Exemplo n.º 11
0
 // Validation Methods
 private static void AssertPrimitiveTag(EmvTlvList tlvs)
 {
     Assert.NotNull(tlvs);
     Assert.True(tlvs.Count == 1);
     Assert.True(tlvs[0].Tag.Hex == "9A");
     Assert.True(tlvs[0].Length == 3);
     Assert.True(tlvs[0].Value.Hex == "191122");
 }
Exemplo n.º 12
0
 private static void AssertPrimitiveExtendedTag(EmvTlvList tlvs)
 {
     Assert.NotNull(tlvs);
     Assert.True(tlvs.Count == 1);
     Assert.True(tlvs[0].Tag.Hex == "90");
     Assert.True(tlvs[0].Length == 192);
     Assert.True(tlvs[0].Value.Hex == "1DE9604518D266B23721DBDDBB71CFE21003EFD717324E3B02749EDCA5901CBBFBB1A834594BDA2F3597A0345385E7587051D8350B4F7EFC2913609B855F00F2FEFB161D91A981D65609BE043F36F753011AD7B39956B7FAC1B154787A713F76C289DBDCACE3E3A3643AD7799F391D93124FD89F3D5CB325140B85FB6158315F91AE65C259C3AD19AAEB851270167E078D99A8E364ED12E4B4C7D4F30E38DF6D19CC8756472D12EBC38B6446EF544C626347B15D41DD88A7F61E3970CF6CDE5F");
 }
Exemplo n.º 13
0
 private static void AssertPrimitiveMultiByteExtendedTag(EmvTlvList tlvs)
 {
     Assert.NotNull(tlvs);
     Assert.True(tlvs.Count == 1);
     Assert.True(tlvs[0].Tag.Hex == "5F50");
     Assert.True(tlvs[0].Length == 43);
     Assert.True(tlvs[0].Value.Hex == "68747470733A2F2F6769746875622E636F6D2F62657075727375616E742F47726561742E456D7654616773");
 }
Exemplo n.º 14
0
 private static void AssertPrimitiveMultiByteTag(EmvTlvList tlvs)
 {
     Assert.NotNull(tlvs);
     Assert.True(tlvs.Count == 1);
     Assert.True(tlvs[0].Tag.Hex == "5F34");
     Assert.True(tlvs[0].Length == 1);
     Assert.True(tlvs[0].Value.Hex == "12");
 }
Exemplo n.º 15
0
        public void FindAll_ShouldLocate_FirstLevelChildTags()
        {
            var tlvs = EmvTlvList.Parse(_validAsciiHexString);
            tlvs.AddRange(tlvs);

            var _tags = tlvs.FindAll(0x84);

            Assert.NotNull(_tags);
            Assert.True(_tags.Count == 2);
        }
Exemplo n.º 16
0
        private void AssertConstructedNestedTagWithPadding(EmvTlvList tlvs)
        {
            Assert.NotNull(tlvs);
            Assert.True(tlvs.Count == 1);

            Assert.True(tlvs[0].Tag.Hex == "6F");
            Assert.True(tlvs[0].Length == 29);
            Assert.True(tlvs[0].Value.Hex == "840E315041592E5359532E4444463031000000A5088801025F2D02656E");

            Assert.NotNull(tlvs[0].Children);
            Assert.True(tlvs[0].Children.Count == 2);
            Assert.True(tlvs[0].Children[0].Tag.Hex == "84");
            Assert.True(tlvs[0].Children[0].Length == 14);
            Assert.True(tlvs[0].Children[0].Value.Hex == "315041592E5359532E4444463031");

            tlvs[0].Children.RemoveAt(0);
            AssertConstructedTag(tlvs[0].Children);
        }
Exemplo n.º 17
0
        private static void AssertConstructedTag(EmvTlvList tlvs)
        {
            Assert.NotNull(tlvs);
            Assert.True(tlvs.Count == 1);
            Assert.True(tlvs[0].Tag.Hex == "A5");
            Assert.True(tlvs[0].Length == 8);
            Assert.True(tlvs[0].Value.Hex == "8801025F2D02656E");

            Assert.NotNull(tlvs[0].Children);
            Assert.True(tlvs[0].Children.Count == 2);
            Assert.True(tlvs[0].Children[0].Tag.Hex == "88");
            Assert.True(tlvs[0].Children[0].Length == 1);
            Assert.True(tlvs[0].Children[0].Value.Hex == "02");

            Assert.True(tlvs[0].Children[1].Tag.Hex == "5F2D");
            Assert.True(tlvs[0].Children[1].Length == 2);
            Assert.True(tlvs[0].Children[1].Value.Hex == "656E");
        }
Exemplo n.º 18
0
 public void Parse_ShouldReturnEmptyList_OnEmptyHexArray()
 {
     Assert.Empty(EmvTlvList.Parse(new byte[] { }));
 }
Exemplo n.º 19
0
        public void Serialize_ShouldHandle_ConstructedNestedTag()
        {
            var tlvs = EmvTlvList.Parse(_constructedNestedTag);

            string a = tlvs.ObjectToXmlString();
        }
Exemplo n.º 20
0
 public void Parse_ShouldReturnEmptyList_OnEmptyString()
 {
     Assert.Empty(EmvTlvList.Parse(""));
 }
Exemplo n.º 21
0
        public void Parse_ShouldHandle_ConstructedNestedTagWithPadding()
        {
            var tlvs = EmvTlvList.Parse(_constructedNestedTagWithPadding);

            AssertConstructedNestedTagWithPadding(tlvs);
        }