diff options
author | CGantert345 <57003061+CGantert345@users.noreply.github.com> | 2021-02-25 11:02:26 +0100 |
---|---|---|
committer | CGantert345 <57003061+CGantert345@users.noreply.github.com> | 2021-02-25 11:02:26 +0100 |
commit | 425bd35c736b7e1c0dbe5b3f9162e195b3be6018 (patch) | |
tree | bc4668aa125fb0a15518d464a1738c6b05e56d07 /src/org/uic/ticket/api/test | |
parent | issuerOnLine changed from int to Integer as it is optional (diff) | |
download | UIC-barcode-425bd35c736b7e1c0dbe5b3f9162e195b3be6018.tar UIC-barcode-425bd35c736b7e1c0dbe5b3f9162e195b3be6018.tar.gz UIC-barcode-425bd35c736b7e1c0dbe5b3f9162e195b3be6018.tar.bz2 UIC-barcode-425bd35c736b7e1c0dbe5b3f9162e195b3be6018.tar.lz UIC-barcode-425bd35c736b7e1c0dbe5b3f9162e195b3be6018.tar.xz UIC-barcode-425bd35c736b7e1c0dbe5b3f9162e195b3be6018.tar.zst UIC-barcode-425bd35c736b7e1c0dbe5b3f9162e195b3be6018.zip |
Diffstat (limited to 'src/org/uic/ticket/api/test')
4 files changed, 0 insertions, 535 deletions
diff --git a/src/org/uic/ticket/api/test/DateTimeUtilsTest.java b/src/org/uic/ticket/api/test/DateTimeUtilsTest.java deleted file mode 100644 index 1b809dd..0000000 --- a/src/org/uic/ticket/api/test/DateTimeUtilsTest.java +++ /dev/null @@ -1,45 +0,0 @@ -package org.uic.ticket.api.test; - -import java.util.Calendar; -import java.util.TimeZone; -import org.junit.Test; -import org.uic.ticket.api.asn.omv1.DateTimeUtils; - - -public class DateTimeUtilsTest{ - - - - @Test public void testDateDiff1() throws IllegalArgumentException, IllegalAccessException { - - Calendar issuing = Calendar.getInstance(); - issuing.setTimeZone(TimeZone.getTimeZone("UTC")); - issuing.set(Calendar.YEAR,2017); - issuing.set(Calendar.DAY_OF_MONTH, 31); - issuing.set(Calendar.MONTH, 12); - issuing.set(Calendar.HOUR_OF_DAY, 23); - issuing.set(Calendar.MINUTE, 5); - - Calendar local = Calendar.getInstance(); - local.set(Calendar.YEAR,2018); - local.set(Calendar.DAY_OF_MONTH, 1); - local.set(Calendar.MONTH, 1); - issuing.set(Calendar.HOUR_OF_DAY, 0); - issuing.set(Calendar.MINUTE, 5); - - Long diff = DateTimeUtils.getDateDifference(issuing.getTime(), local.getTime()); - - - assert(diff.intValue() == 1); - } - - - - - - - - - - -} diff --git a/src/org/uic/ticket/api/test/SimpleUicTestTicket.java b/src/org/uic/ticket/api/test/SimpleUicTestTicket.java deleted file mode 100644 index a4788d3..0000000 --- a/src/org/uic/ticket/api/test/SimpleUicTestTicket.java +++ /dev/null @@ -1,245 +0,0 @@ -package org.uic.ticket.api.test;
-
-import org.uic.ticket.api.asn.omv1.CardReferenceType;
-import org.uic.ticket.api.asn.omv1.ControlData;
-import org.uic.ticket.api.asn.omv1.CustomerStatusType;
-import org.uic.ticket.api.asn.omv1.DocumentData;
-import org.uic.ticket.api.asn.omv1.ExtensionData;
-import org.uic.ticket.api.asn.omv1.IssuingData;
-import org.uic.ticket.api.asn.omv1.OpenTicketData;
-import org.uic.ticket.api.asn.omv1.SequenceOfCardReferenceType;
-import org.uic.ticket.api.asn.omv1.SequenceOfCustomerStatusType;
-import org.uic.ticket.api.asn.omv1.SequenceOfDocumentData;
-import org.uic.ticket.api.asn.omv1.SequenceOfExtensionData;
-import org.uic.ticket.api.asn.omv1.SequenceOfTicketLinkType;
-import org.uic.ticket.api.asn.omv1.SequenceOfTravelerType;
-import org.uic.ticket.api.asn.omv1.StationPassageData;
-import org.uic.ticket.api.asn.omv1.TicketDetailData;
-import org.uic.ticket.api.asn.omv1.TicketLinkType;
-import org.uic.ticket.api.asn.omv1.TokenType;
-import org.uic.ticket.api.asn.omv1.TravelerData;
-import org.uic.ticket.api.asn.omv1.TravelerType;
-import org.uic.ticket.api.asn.omv1.UicRailTicketData;
-
-import net.gcdc.asn1.datatypesimpl.SequenceOfStringUTF8;
-
-public class SimpleUicTestTicket {
-
-
- public static UicRailTicketData getUicTestTicket() {
- UicRailTicketData ticket = new UicRailTicketData();
- populateTicket(ticket);
- return ticket;
- }
-
-
-
- private static void populateTicket(UicRailTicketData ticket) {
-
- ticket.setControlDetail(new ControlData());
- populate(ticket.getControlDetail());
-
-
- ticket.setIssuingDetail(new IssuingData());
- populateIssuingData(ticket.getIssuingDetail());
-
- TravelerData td = new TravelerData();
- populateTravelerData(td);
- ticket.setTravelerDetail(td);
-
- SequenceOfDocumentData ds = new SequenceOfDocumentData();
-
-
- //OpenTicket
- DocumentData do1 = new DocumentData();
- addOpenTicketData(do1);
- ds.add(do1);
-
- //StationPassage
- DocumentData do2 = new DocumentData();
- addStationPassage(do2);
- ds.add(do2);
-
- ticket.setTransportDocument(ds);
-
- SequenceOfExtensionData ed = new SequenceOfExtensionData();
- populateExtensionSequence(ed);
- ticket.setExtension(ed);
-
- }
-
- /*
- ticket stationPassage : {
- productName "passage"
- ,stationNameUTF8 { "Amsterdam" }
- ,validFromDay 0
- ,numberOfDaysValid 123
- }
- */
- private static void addStationPassage(DocumentData dd) {
- TicketDetailData tdd = new TicketDetailData();
- StationPassageData sp = new StationPassageData();
- sp.setProductName("passage");
- sp.setValidFromDay(0L);
- sp.setNumberOfDaysValid(123L);
- SequenceOfStringUTF8 ss = new SequenceOfStringUTF8();
- ss.add("Amsterdam");
- sp.setStationNameUTF8(ss);
- tdd.setStationPassage(sp);
- dd.setTicket(tdd);
- }
-
- /*
- {
- token {tokenProviderIA5 "VDV", token '82DA'H }
- ,ticket openTicket : {
- returnIncluded FALSE
- infoText "openTicketInfo"
- }
- }
- */
-
- private static void addOpenTicketData(DocumentData dd) {
- TokenType to = new TokenType();
- to.setTokenProviderIA5("VDV");
- byte[] ba = { (byte) 0x82, (byte) 0xDA };
- to.setToken(ba);
- dd.setToken(to);
-
- TicketDetailData tdd = new TicketDetailData();
- OpenTicketData otd = new OpenTicketData();
- otd.setInfoText("openTicketInfo");
- otd.setReturnIncluded(false);
- tdd.setOpenTicket(otd);
- dd.setTicket(tdd);
- }
-
-
- /*
- ,travelerDetail{
- traveler {
- {
- firstName "John"
- ,secondName "Dow"
- ,idCard "12345"
- ,ticketHolder TRUE
- ,status {{customerStatusDescr "senior" }}
- }
- }
- ,groupName "myGroup"
- }
- */
-
- private static void populateTravelerData(TravelerData td) {
- td.setGroupName("myGroup");
- SequenceOfTravelerType trs = new SequenceOfTravelerType();
- TravelerType tr = new TravelerType();
- tr.setIdCard("12345");
- tr.setFirstName("John");
- tr.setSecondName("Dow");
- tr.setTicketHolder(true);
- SequenceOfCustomerStatusType ts = new SequenceOfCustomerStatusType();
- CustomerStatusType cst = new CustomerStatusType();
- cst.setCustomerStatusDescr("senior");
- ts.add(cst);
- tr.setStatus(ts);
- trs.add(tr);
- td.setTraveler(trs);
- }
-
- /*
- ,issuingDetail {
- issuingYear 2018
- issuingDay 1
- specimen TRUE,
- securePaperTicket FALSE,
- activated TRUE,
- issuerPNR "issuerTestPNR",
- issuedOnLine 12
- }
- */
- private static void populateIssuingData(IssuingData issuingDetail) {
- issuingDetail.setIssuingYear(2018L);
- issuingDetail.setIssuingDay(1L);
- issuingDetail.setIssuerPNR("issuerTestPNR");
- issuingDetail.setSpecimen(true);
- issuingDetail.setSecurePaperTicket(false);
- issuingDetail.setActivated(true);
- issuingDetail.setIssuedOnLine(12L);
- }
-
- /*
- ,extension {
- { extensionId "1", extensionData '82DA'H }
- ,{ extensionId "2", extensionData '83DA'H }
- }
- */
- private static void populateExtensionSequence(SequenceOfExtensionData ed) {
- ExtensionData ed1 = new ExtensionData();
- ed1.setExtensionId("1");
- byte[] ba1 = { (byte) 0x82, (byte) 0xDA };
- ed1.setExtensionData(ba1);
- ExtensionData ed2 = new ExtensionData();
- ed2.setExtensionId("2");
- byte[] ba2 = { (byte) 0x83, (byte) 0xDA };
- ed2.setExtensionData(ba2);
- ed.add(ed1);
- ed.add(ed2);
- }
-
- /*
- ,controlDetail {
- identificationByCardReference {
- { trailingCardIdNum 100 }
- }
- ,identificationByIdCard FALSE
- ,identificationByPassportId FALSE
- ,passportValidationRequired FALSE
- ,onlineValidationRequired FALSE
- ,ageCheckRequired FALSE
- ,reductionCardCheckRequired FALSE
- ,infoText "cd"
- ,includedTickets {
- { productOwnerIA5 "test" }
- }
- }
- */
- private static void populate(ControlData controlDetail) {
- controlDetail.infoText = "cd";
- controlDetail.setAgeCheckRequired(false);
- controlDetail.setIdentificationByIdCard(false);
- controlDetail.setIdentificationByPassportId(false);
- controlDetail.setOnlineValidationRequired(false);
- controlDetail.setPassportValidationRequired(false);
- controlDetail.setReductionCardCheckRequired(false);
- controlDetail.setIdentificationByCardReference(new SequenceOfCardReferenceType());
- controlDetail.getIdentificationByCardReference().add(populateCardRefrence());
- SequenceOfTicketLinkType sit = new SequenceOfTicketLinkType();
- populateIncludedTickets(sit);
- controlDetail.setIncludedTickets(sit);
- }
-
-
- /*
- *
- */
- private static void populateIncludedTickets(SequenceOfTicketLinkType sequenceOfTicketLinkType) {
- TicketLinkType tlt = new TicketLinkType();
- tlt.productOwnerIA5="test";
- sequenceOfTicketLinkType.add(tlt);
- }
-
- /*
- {
- trailingCardIdNum 100
- }
- */
- private static CardReferenceType populateCardRefrence() {
- CardReferenceType cr = new CardReferenceType();
- cr.setTrailingCardIdNum(100L);
- return cr;
- }
-
-
-
-}
diff --git a/src/org/uic/ticket/api/test/UperEncodeTicketTestV1.java b/src/org/uic/ticket/api/test/UperEncodeTicketTestV1.java deleted file mode 100644 index 419981f..0000000 --- a/src/org/uic/ticket/api/test/UperEncodeTicketTestV1.java +++ /dev/null @@ -1,118 +0,0 @@ -package org.uic.ticket.api.test; - -import static org.junit.Assert.assertEquals; - -import java.util.logging.Level; - -import net.gcdc.asn1.uper.UperEncoder; - -import org.junit.Test; -import org.uic.ticket.api.asn.omv1.UicRailTicketData; - - -public class UperEncodeTicketTestV1 { - - /** - * Example from the Standard on UPER. - <pre> - value UicRailTicketData ::= { - issuingDetail { - issuingYear 2018 - issuingDay 1 - specimen TRUE, - securePaperTicket FALSE, - activated TRUE, - issuerPNR "issuerTestPNR", - issuedOnLine 12 - } - ,travelerDetail{ - traveler { - { - firstName "John" - ,secondName "Dow" - ,idCard "12345" - ,ticketHolder TRUE - ,status {{customerStatusDescr "senior" }} - } - } - ,groupName "myGroup" - } - ,transportDocument { - { - token {tokenProviderIA5 "VDV", token '82DA'H } - ,ticket openTicket : { - returnIncluded FALSE - infoText "openTicketInfo" - } - } - ,{ - ticket stationPassage : { - productName "passage" - ,stationNameUTF8 { "Amsterdam" } - ,validFromDay 0 - ,numberOfDaysValid 123 - } - } - } - ,controlDetail { - identificationByCardReference { - { trailingCardIdNum 100 } - } - ,identificationByIdCard FALSE - ,identificationByPassportId FALSE - ,passportValidationRequired FALSE - ,onlineValidationRequired FALSE - ,ageCheckRequired FALSE - ,reductionCardCheckRequired FALSE - ,infoText "cd" - ,includedTickets { - { productOwnerIA5 "test" } - } - } - ,extension { - { extensionId "1", extensionData '82DA'H } - ,{ extensionId "2", extensionData '83DA'H } - } - } - - -78022020 050DD3CF 9F5CBCAA 65E7D284 EA40218A 02D00082 2537B437 01A237BB -82B164CD A3580883 73CBBB4E FE40EDAF 28EE4DEE AE004A03 AD12B014 16D08000 -00000403 9BDC195B 951A58DA D95D125B 999BC480 88040EE0 C2E6E6C2 CECA0212 -82DAE6E8 CAE4C8C2 DA0080BD A6010040 2C800131 B2008101 3A65E7D0 08058814 -16D00B20 283DA0 - - </pre> - */ - - - - @Test public void testEncodeTicket() throws IllegalArgumentException, IllegalAccessException { - UicRailTicketData ticket = SimpleUicTestTicket.getUicTestTicket(); - byte[] encoded = UperEncoder.encode(ticket); - String hex = UperEncoder.hexStringFromBytes(encoded); - UperEncoder.logger.log(Level.FINEST,String.format("data hex: %s", hex)); - - String expectedHex = "78022020050DD3CF9F5CBCAA65E7D284EA40218A02D000822537B43701A237BB82B164CDA358088373CBBB4EFE40EDAF28EE4DEEAE004A03AD12B01416D08000000004039BDC195B951A58DAD95D125B999BC48088040EE0C2E6E6C2CECA021282DAE6E8CAE4C8C2DA0080BDA60100402C800131B20081013A65E7D00805881416D00B20283DA0"; - UperEncoder.logger.debug(String.format("first difference at index: %d",hex.compareTo(expectedHex))); - UperEncoder.logger.debug(String.format("data returned: %s",hex)); - UperEncoder.logger.debug(String.format("data expected: %s",expectedHex)); - assert(hex.equals(expectedHex)); - } - - @Test public void testDecodeTicket() throws IllegalArgumentException, IllegalAccessException { - UicRailTicketData ticket = SimpleUicTestTicket.getUicTestTicket(); - byte[] encoded = UperEncoder.encode(ticket); - String hex = UperEncoder.hexStringFromBytes(encoded); - UperEncoder.logger.log(Level.FINEST,String.format("data hex: %s", hex)); - String expectedHex = "78022020050DD3CF9F5CBCAA65E7D284EA40218A02D000822537B43701A237BB82B164CDA358088373CBBB4EFE40EDAF28EE4DEEAE004A03AD12B01416D08000000004039BDC195B951A58DAD95D125B999BC48088040EE0C2E6E6C2CECA021282DAE6E8CAE4C8C2DA0080BDA60100402C800131B20081013A65E7D00805881416D00B20283DA0"; - assertEquals(hex,expectedHex); - UicRailTicketData decodedTicket = UperEncoder.decode(encoded, UicRailTicketData.class); - assert(decodedTicket != null); - assertEquals(decodedTicket.controlDetail.ageCheckRequired , false ); - assertEquals(decodedTicket.controlDetail.getInfoText() , "cd" ); - assertEquals(decodedTicket.controlDetail.getIncludedTickets().get(0).getProductOwnerIA5() , "test" ); - assert(decodedTicket.controlDetail.getIdentificationByCardReference().get(0).getTrailingCardIdNum() == 100L ); - } - -} diff --git a/src/org/uic/ticket/api/test/UperEncodeUICTicketExtensionTest.java b/src/org/uic/ticket/api/test/UperEncodeUICTicketExtensionTest.java deleted file mode 100644 index 3874b4e..0000000 --- a/src/org/uic/ticket/api/test/UperEncodeUICTicketExtensionTest.java +++ /dev/null @@ -1,127 +0,0 @@ -package org.uic.ticket.api.test; - -import static org.junit.Assert.assertEquals; - -import java.util.logging.Level; - -import net.gcdc.asn1.datatypes.Asn1Optional; -import net.gcdc.asn1.datatypes.Sequence; -import net.gcdc.asn1.uper.UperEncoder; - -import org.junit.Test; -import org.uic.ticket.api.asn.omv1.ExtensionData; -import org.uic.ticket.api.asn.omv1.SequenceOfExtensionData; - - -public class UperEncodeUICTicketExtensionTest { - - /** - * Example from the Standard on UPER. - <pre> - World-Schema DEFINITIONS AUTOMATIC TAGS ::= - BEGIN - TestRecord ::= [APPLICATION 0] IMPLICIT SEQUENCE { - extensionList SEQUENCE OF ExtensionData OPTIONAL - } - ExtensionData ::= SEQUENCE { - extensionId IA5String, - extensionData OCTET STRING - } - END - - - value TestRecord ::= { extensionList { - { extensionId "1", extensionData '82DA'H } - ,{ extensionId "2", extensionData '83DA'H } - } - } - -Encoding to the file 'data.uper' using PER UNALIGNED encoding rule... -TestRecord SEQUENCE [fieldcount (not encoded) = 1] - extensionList SEQUENCE OF [count = 2] - ExtensionData SEQUENCE [fieldcount (not encoded) = 2] - extensionId IA5String [length = 1.0] - "1" - extensionData OCTET STRING [length = 2.0] - 0x82da - ExtensionData SEQUENCE [fieldcount (not encoded) = 2] - extensionId IA5String [length = 1.0] - "2" - extensionData OCTET STRING [length = 2.0] - 0x83da -Total encoded length = 10.7 -Encoded successfully in 11 bytes: -8100B102 82DA0164 0507B4 - </pre> - */ - - - @Sequence - public static class TestRecord { - - @Asn1Optional public SequenceOfExtensionData extension; - - public TestRecord() {} - public void setExtensionList(SequenceOfExtensionData sd){ - this.extension = sd; - } - } - - - @Test public void testEncodeTicket() throws IllegalArgumentException, IllegalAccessException { - TestRecord ticket = new TestRecord(); - populateTicket(ticket); - byte[] encoded = UperEncoder.encode(ticket); - String hex = UperEncoder.hexStringFromBytes(encoded); - UperEncoder.logger.log(Level.FINEST,String.format("data hex: %s", hex)); - String expectedHex = "8100B10282DA01640507B4"; - UperEncoder.logger.debug(String.format("first diference at index: %d",hex.compareTo(expectedHex))); - assertEquals(hex,expectedHex); - } - - @Test public void testDecodeTicket() throws IllegalArgumentException, IllegalAccessException { - TestRecord ticket = new TestRecord(); - populateTicket(ticket); - byte[] encoded = UperEncoder.encode(ticket); - String hex = UperEncoder.hexStringFromBytes(encoded); - UperEncoder.logger.log(Level.FINEST,String.format("data hex: %s", hex)); - String expectedHex = "8100B10282DA01640507B4"; - TestRecord decodedTicket = UperEncoder.decode(encoded, TestRecord.class); - assert(decodedTicket != null); - assertEquals(hex,expectedHex); - } - - private void populateTicket(TestRecord ticket) { - - SequenceOfExtensionData ed = new SequenceOfExtensionData(); - populateExtensionSequence(ed); - ticket.setExtensionList(ed); - - } - - - - /* - ,extension { - { extensionId "1", extensionData '82DA'H } - ,{ extensionId "2", extensionData '83DA'H } - } - */ - private void populateExtensionSequence(SequenceOfExtensionData ed) { - ExtensionData ed1 = new ExtensionData(); - ed1.setExtensionId("1"); - byte[] ba1 = { (byte) 0x82, (byte) 0xDA }; - ed1.setExtensionData(ba1); - ExtensionData ed2 = new ExtensionData(); - ed2.setExtensionId("2"); - byte[] ba2 = { (byte) 0x83, (byte) 0xDA }; - ed2.setExtensionData(ba2); - ed.add(ed1); - ed.add(ed2); - } - - - - - -} |