summaryrefslogtreecommitdiffstats
path: root/src/org/uic/ticket/api/test
diff options
context:
space:
mode:
Diffstat (limited to 'src/org/uic/ticket/api/test')
-rw-r--r--src/org/uic/ticket/api/test/DateTimeUtilsTest.java45
-rw-r--r--src/org/uic/ticket/api/test/SimpleUicTestTicket.java245
-rw-r--r--src/org/uic/ticket/api/test/UperEncodeTicketTestV1.java118
-rw-r--r--src/org/uic/ticket/api/test/UperEncodeUICTicketExtensionTest.java127
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);
- }
-
-
-
-
-
-}