Ejemplo n.º 1
0
        protected void AssertIdCard(IdentificationCard expected, IdentificationCard actual)
        {
            Assert.IsNotNull(expected);
            Assert.IsNotNull(actual);

            Assert.AreEqual(expected.Name.First, actual.Name.First, nameof(actual.Name.First));
            Assert.AreEqual(expected.Name.Middle, actual.Name.Middle, nameof(actual.Name.Middle));
            Assert.AreEqual(expected.Name.Last, actual.Name.Last, nameof(actual.Name.Last));
            Assert.AreEqual(expected.Name.Suffix, actual.Name.Suffix, nameof(actual.Name.Suffix));

            Assert.AreEqual(expected.Name.WasFirstTruncated, actual.Name.WasFirstTruncated, nameof(actual.Name.WasFirstTruncated));
            Assert.AreEqual(expected.Name.WasMiddleTruncated, actual.Name.WasMiddleTruncated, nameof(actual.Name.WasMiddleTruncated));
            Assert.AreEqual(expected.Name.WasLastTruncated, actual.Name.WasLastTruncated, nameof(actual.Name.WasLastTruncated));

            Assert.AreEqual(expected.Address.City, actual.Address.City, nameof(actual.Address.City));
            Assert.AreEqual(expected.Address.StreetLine1, actual.Address.StreetLine1, nameof(actual.Address.StreetLine1));
            Assert.AreEqual(expected.Address.StreetLine2, actual.Address.StreetLine2, nameof(actual.Address.StreetLine2));
            Assert.AreEqual(expected.Address.JurisdictionCode, actual.Address.JurisdictionCode, nameof(actual.Address.JurisdictionCode));
            Assert.AreEqual(expected.Address.JurisdictionCode, actual.IssuerIdentificationNumber.GetAbbreviation(), nameof(actual.IssuerIdentificationNumber));
            Assert.AreEqual(expected.Address.PostalCode, actual.Address.PostalCode, nameof(actual.Address.PostalCode));
            Assert.AreEqual(expected.Address.Country, actual.Address.Country, nameof(actual.Address.Country));

            Assert.AreEqual(expected.DateOfBirth, actual.DateOfBirth, nameof(actual.DateOfBirth));
            Assert.AreEqual(expected.PlaceOfBirth, actual.PlaceOfBirth, nameof(actual.PlaceOfBirth));
            Assert.AreEqual(expected.Sex, actual.Sex, nameof(actual.Sex));
            Assert.AreEqual(expected.Height, actual.Height, nameof(actual.Height));
            Assert.AreEqual(expected.Weight, actual.Weight, nameof(actual.Weight));

            Assert.AreEqual(expected.EyeColor, actual.EyeColor, nameof(actual.EyeColor));
            Assert.AreEqual(expected.HairColor, actual.HairColor, nameof(actual.HairColor));
            Assert.AreEqual(expected.Ethnicity, actual.Ethnicity, nameof(actual.Ethnicity));

            Assert.AreEqual(expected.IdNumber, actual.IdNumber, nameof(actual.IdNumber));
            Assert.AreEqual(expected.AamvaVersionNumber, actual.AamvaVersionNumber, nameof(actual.AamvaVersionNumber));

            Assert.AreEqual(expected.IssueDate, actual.IssueDate, nameof(actual.IssueDate));
            Assert.AreEqual(expected.ExpirationDate, actual.ExpirationDate, nameof(actual.ExpirationDate));
            Assert.AreEqual(expected.RevisionDate, actual.RevisionDate, nameof(actual.RevisionDate));

            Assert.AreEqual(expected.Under18Until, actual.Under18Until, nameof(actual.Under18Until));
            Assert.AreEqual(expected.Under19Until, actual.Under19Until, nameof(actual.Under19Until));
            Assert.AreEqual(expected.Under21Until, actual.Under21Until, nameof(actual.Under21Until));

            Assert.AreEqual(expected.ComplianceType, actual.ComplianceType, nameof(actual.ComplianceType));
            Assert.AreEqual(expected.HasTemporaryLawfulStatus, actual.HasTemporaryLawfulStatus, nameof(actual.HasTemporaryLawfulStatus));
            Assert.AreEqual(expected.IsOrganDonor, actual.IsOrganDonor, nameof(actual.IsOrganDonor));
            Assert.AreEqual(expected.IsVeteran, actual.IsVeteran, nameof(actual.IsVeteran));
        }
Ejemplo n.º 2
0
        public void TestTNIdCard()
        {
            var expected = new IdentificationCard
            {
                Name = new Name
                {
                    First  = "ELIZABETH",
                    Middle = "MOTORIST",
                    Last   = "SMITH",

                    WasFirstTruncated  = false,
                    WasMiddleTruncated = false,
                    WasLastTruncated   = false
                },

                Address = new Address
                {
                    StreetLine1      = "21078 MAGNOLIA RD",
                    City             = "NASHVILLE",
                    JurisdictionCode = "TN",
                    PostalCode       = "370115509",
                    Country          = Country.Usa
                },

                DateOfBirth = new DateTime(1961, 12, 13),
                Sex         = Sex.Female,
                EyeColor    = EyeColor.Green,
                Height      = Height.FromImperial(63),

                IdNumber           = "115775955",
                AamvaVersionNumber = Version.Aamva2011,

                IssueDate      = new DateTime(2018, 02, 06),
                ExpirationDate = new DateTime(2026, 02, 06),
                RevisionDate   = new DateTime(2011, 12, 02),

                IsOrganDonor = true
            };

            var file   = Id("TN");
            var idCard = Barcode.Parse(file, Validation.None);

            AssertIdCard(expected, idCard);

            Assert.AreEqual("37011-5509", idCard.Address.PostalCodeDisplay);
            Assert.AreEqual("Tennessee", idCard.IssuerIdentificationNumber.GetDescription());
        }
Ejemplo n.º 3
0
        protected void AssertLicense(DriversLicense expected, IdentificationCard actualId)
        {
            Assert.IsNotNull(expected);
            Assert.IsNotNull(actualId);
            Assert.IsInstanceOfType(actualId, typeof(DriversLicense));

            var actual = (DriversLicense)actualId;

            Assert.IsNotNull(actual.Jurisdiction);

            Assert.AreEqual(expected.Jurisdiction.VehicleClass, actual.Jurisdiction.VehicleClass, nameof(actual.Jurisdiction.VehicleClass));
            Assert.AreEqual(expected.Jurisdiction.RestrictionCodes, actual.Jurisdiction.RestrictionCodes, nameof(actual.Jurisdiction.RestrictionCodes));
            Assert.AreEqual(expected.Jurisdiction.EndorsementCodes, actual.Jurisdiction.EndorsementCodes, nameof(actual.Jurisdiction.EndorsementCodes));
            Assert.AreEqual(expected.Jurisdiction.VehicleClassificationDescription, actual.Jurisdiction.VehicleClassificationDescription, nameof(actual.Jurisdiction.VehicleClassificationDescription));
            Assert.AreEqual(expected.Jurisdiction.EndorsementCodeDescription, actual.Jurisdiction.EndorsementCodeDescription, nameof(actual.Jurisdiction.EndorsementCodeDescription));
            Assert.AreEqual(expected.Jurisdiction.RestrictionCodeDescription, actual.Jurisdiction.RestrictionCodeDescription, nameof(actual.Jurisdiction.RestrictionCodeDescription));

            Assert.AreEqual(expected.StandardVehicleClassification, actual.StandardVehicleClassification, nameof(actual.StandardVehicleClassification));
            Assert.AreEqual(expected.StandardEndorsementCode, actual.StandardEndorsementCode, nameof(actual.StandardEndorsementCode));
            Assert.AreEqual(expected.StandardRestrictionCode, actual.StandardRestrictionCode, nameof(actual.StandardRestrictionCode));
            Assert.AreEqual(expected.HazmatEndorsementExpirationDate, actual.HazmatEndorsementExpirationDate, nameof(actual.HazmatEndorsementExpirationDate));
        }
 public StandardEndorsementCodeParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 5
0
 public HairColorParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 6
0
 public Under18UntilParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 7
0
 public LastNameParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 8
0
 public WeightRangeParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 9
0
 public RestrictionCodesParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 10
0
 public WeightInKilogramsParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
 public DocumentDiscriminatorParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 12
0
        static void Main()
        {
            Console.WriteLine("Reading barcode(s) from image {0}", Path.GetFullPath(InputFile));

            Reader reader = new Reader();

            reader.RegistrationName = "demo";
            reader.RegistrationKey  = "demo";

            // Set barcode type to find
            reader.BarcodeTypesToFind.PDF417 = true;

            /* -----------------------------------------------------------------------
            *  NOTE: We can read barcodes from specific page to increase performance.
            *  For sample please refer to "Decoding barcodes from PDF by pages" program.
            *  ----------------------------------------------------------------------- */

            // Read barcodes
            FoundBarcode[] barcodes = reader.ReadFrom(InputFile);

            if (barcodes.Length > 0)
            {
                FoundBarcode barcode = barcodes[0];

                // Get specific fields:

                IdentificationCard identificationCard = barcode.Metadata as IdentificationCard;

                if (identificationCard != null)
                {
                    Console.WriteLine("ID Numer: " + identificationCard.IdNumber);
                    Console.WriteLine("First Name: " + identificationCard.Name.First);
                    Console.WriteLine("Middle Name: " + identificationCard.Name.Middle);
                    Console.WriteLine("Last Name: " + identificationCard.Name.Last);
                    Console.WriteLine("Sex: " + identificationCard.Sex);
                    Console.WriteLine("Date Of Birth: " + identificationCard.DateOfBirth);
                    Console.WriteLine("Address: " + identificationCard.Address);

                    if (identificationCard is DriversLicense)
                    {
                        DriversLicense driverLicense = (DriversLicense)identificationCard;

                        Console.WriteLine("Vehicle Class: " + driverLicense.Jurisdiction.VehicleClass);
                        Console.WriteLine("Endorsement Codes: " + driverLicense.Jurisdiction.EndorsementCodes);
                        Console.WriteLine("Restriction Codes: " + driverLicense.Jurisdiction.RestrictionCodes);
                    }
                }
                else
                {
                    Console.WriteLine("Could not retrieve AAMVA data from this barcode. Raw value: \r\n" + barcode.Value);
                }

                // ... or get the full information as JSON:
                Console.WriteLine("\n\n-----------------\n");

                string jsonString = reader.ExportFoundBarcodesToJSON();
                Console.WriteLine(jsonString);
            }
            else
            {
                Console.WriteLine("No barcodes found!");
            }

            // Cleanup
            reader.Dispose();

            Console.WriteLine("Press any key to exit..");
            Console.ReadKey();
        }
Ejemplo n.º 13
0
 public ComplianceTypeParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
 public HazmatEndorsementExpirationDateParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
 public HasTemporaryLawfulStatusParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 16
0
 public StreetLine2Parser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 17
0
 public IsOrganDonorParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 18
0
 public WasLastNameTruncatedParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 19
0
 public DateOfBirthParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 20
0
 public VehicleClassLegacyParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 21
0
 public StandardVehicleClassificationParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 22
0
 public RevisionDate(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 23
0
 protected AbstractParser(IdentificationCard idCard, Version version, Country?country)
 {
     IdCard  = idCard;
     Version = version;
     Country = country;
 }
Ejemplo n.º 24
0
 public AuditInformationParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 25
0
 public IdNumberParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
 public EndorsementCodeDescriptionParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 27
0
 public IsVeteranParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 28
0
 public EthnicityParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 29
0
 public AliasSuffixParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }
Ejemplo n.º 30
0
 public JurisdictionCodeParser(IdentificationCard idCard, Version version, Country country) : base(idCard, version, country)
 {
 }