summaryrefslogtreecommitdiffstats
path: root/src/test/java/org/uic/barcode/ticket
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java/org/uic/barcode/ticket')
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/AsnLevelAllElementsTestV3.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/AsnLevelCarCarriageTestV3.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/AsnLevelCountermarkComplexTestV1.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/AsnLevelCountermarkComplexTestV3.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/AsnLevelDelayConfirmationTestV3.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/AsnLevelParkingTestV3.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/AsnLevelStationPassageTestV3.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/AsnLevelVoucherTestV3.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/CounterMarkTimeZoneTestV3.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/CustomerCardTimeZoneTestV1.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/CustomerCardTimeZoneTestV2.java4
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/CustomerCardTimeZoneTestV3.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/DateTimeUtilsTest.java7
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/FipTimeZoneTestV1.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/FipTimeZoneTestV2.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/FipTimeZoneTestV3.java697
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/OpenTicketComplexTestV1.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/OpenTicketComplexTestV2.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/OpenTicketComplexTestV3.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/OpenTicketINcludedTicketDateTestV3.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/OpenTicketRestrictedLuggageComplexTestV3.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/OpenTicketTimeZoneTestV1.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/OpenTicketTimeZoneTestV3.java697
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/OpenTicketTrainLinkDateTestV3.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/ParkingTimeZoneTestV1.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/ParkingTimeZoneTestV2.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/ParkingTimeZoneTestV3.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/PassComplexTestV3.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/PassTimeZoneTestV1.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/PassTimeZoneTestV2.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/PassTimeZoneTestV3.java697
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/PassTrainValidityTestV3.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/ReservationTimeZoneTestV1.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/ReservationTimeZoneTestV2.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/ReservationTimeZoneTestV3.java631
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/StationPassageTimeZoneTestV1.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/StationPassageTimeZoneTestV2.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/StationPassageTimeZoneTestV3.java631
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/UperEncodeOpenTicketTestV1.java5
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/UperEncodePassTestV1.java5
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/UperEncodeTicketLinkTestV1.java6
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/UperEncodeTicketTestV1.java6
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/UperEncodeUICTicketExtensionTest.java20
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/VoucherTimeZoneTestV1.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/VoucherTimeZoneTestV2.java3
-rw-r--r--src/test/java/org/uic/barcode/ticket/api/test/VoucherTimeZoneTestV3.java3
46 files changed, 1822 insertions, 1686 deletions
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelAllElementsTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelAllElementsTestV3.java
index a5b4765..c0fb248 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelAllElementsTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelAllElementsTestV3.java
@@ -7,6 +7,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv3.HemisphereLongitudeType;
import org.uic.barcode.ticket.api.asn.omv3.IncludedOpenTicketType;
import org.uic.barcode.ticket.api.asn.omv3.LineType;
@@ -70,6 +71,8 @@ public class AsnLevelAllElementsTestV3 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
//encode in UTC time zone
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelCarCarriageTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelCarCarriageTestV3.java
index 955e2cf..39c4440 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelCarCarriageTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelCarCarriageTestV3.java
@@ -10,6 +10,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv3.CarCarriageReservationData;
import org.uic.barcode.ticket.api.asn.omv3.LoadingDeckType;
import org.uic.barcode.ticket.api.asn.omv3.PriceTypeType;
@@ -41,6 +42,8 @@ public class AsnLevelCarCarriageTestV3 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
//encode in UTC time zone
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelCountermarkComplexTestV1.java b/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelCountermarkComplexTestV1.java
index e7dbd50..21fe946 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelCountermarkComplexTestV1.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelCountermarkComplexTestV1.java
@@ -7,6 +7,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv1.UicRailTicketData;
import org.uic.barcode.ticket.api.test.testtickets.CountermarkTestComplexTicketV1;
@@ -34,6 +35,8 @@ public class AsnLevelCountermarkComplexTestV1 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
//encode in UTC time zone
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelCountermarkComplexTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelCountermarkComplexTestV3.java
index 918615c..60f5375 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelCountermarkComplexTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelCountermarkComplexTestV3.java
@@ -7,6 +7,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv3.CountermarkData;
import org.uic.barcode.ticket.api.asn.omv3.TravelClassType;
import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
@@ -38,6 +39,8 @@ public class AsnLevelCountermarkComplexTestV3 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
//encode in UTC time zone
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelDelayConfirmationTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelDelayConfirmationTestV3.java
index 8a2cbde..3bcd759 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelDelayConfirmationTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelDelayConfirmationTestV3.java
@@ -10,6 +10,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv3.LinkMode;
import org.uic.barcode.ticket.api.asn.omv3.TicketType;
import org.uic.barcode.ticket.api.asn.omv3.DelayConfirmation;
@@ -40,6 +41,8 @@ public class AsnLevelDelayConfirmationTestV3 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
//encode in UTC time zone
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelParkingTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelParkingTestV3.java
index e45ae13..8077a13 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelParkingTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelParkingTestV3.java
@@ -7,6 +7,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv3.ParkingGroundData;
import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
import org.uic.barcode.ticket.api.test.testtickets.ParkingTestTicketV3;
@@ -35,6 +36,8 @@ public class AsnLevelParkingTestV3 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
//encode in UTC time zone
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelStationPassageTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelStationPassageTestV3.java
index a1496c8..b2f1c9b 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelStationPassageTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelStationPassageTestV3.java
@@ -7,6 +7,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
import org.uic.barcode.ticket.api.test.testtickets.StationPassageTestTicketV3;
@@ -34,6 +35,8 @@ public class AsnLevelStationPassageTestV3 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
//encode in UTC time zone
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelVoucherTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelVoucherTestV3.java
index eacdabb..6d25531 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelVoucherTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/AsnLevelVoucherTestV3.java
@@ -7,6 +7,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv3.VoucherData;
import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
import org.uic.barcode.ticket.api.test.testtickets.VoucherTestTicketV3;
@@ -35,6 +36,8 @@ public class AsnLevelVoucherTestV3 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
//encode in UTC time zone
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/CounterMarkTimeZoneTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/CounterMarkTimeZoneTestV3.java
index 1a05e6f..c83c95b 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/CounterMarkTimeZoneTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/CounterMarkTimeZoneTestV3.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.ICounterMark;
@@ -87,6 +88,8 @@ public class CounterMarkTimeZoneTestV3 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
UicRailTicketData ticket1 = CountermarkTestComplexTicketV3.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/CustomerCardTimeZoneTestV1.java b/src/test/java/org/uic/barcode/ticket/api/test/CustomerCardTimeZoneTestV1.java
index 315774e..d9e5ba9 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/CustomerCardTimeZoneTestV1.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/CustomerCardTimeZoneTestV1.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv1.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.ICustomerCard;
@@ -85,6 +86,8 @@ public class CustomerCardTimeZoneTestV1 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
UicRailTicketData ticket1 = CustomerCardTestTicketV1.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/CustomerCardTimeZoneTestV2.java b/src/test/java/org/uic/barcode/ticket/api/test/CustomerCardTimeZoneTestV2.java
index e8857ab..d9ae8dc 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/CustomerCardTimeZoneTestV2.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/CustomerCardTimeZoneTestV2.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv2.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.ICustomerCard;
@@ -85,6 +86,9 @@ public class CustomerCardTimeZoneTestV2 {
*/
@Before public void prepare() {
+
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
UicRailTicketData ticket1 = CustomerCardTestTicketV2.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/CustomerCardTimeZoneTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/CustomerCardTimeZoneTestV3.java
index da0879b..ad1b0da 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/CustomerCardTimeZoneTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/CustomerCardTimeZoneTestV3.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.ICustomerCard;
@@ -87,6 +88,8 @@ public class CustomerCardTimeZoneTestV3 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
UicRailTicketData ticket1 = CustomerCardTestTicketV3.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/DateTimeUtilsTest.java b/src/test/java/org/uic/barcode/ticket/api/test/DateTimeUtilsTest.java
index 5b2e578..b818738 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/DateTimeUtilsTest.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/DateTimeUtilsTest.java
@@ -2,13 +2,18 @@ package org.uic.barcode.ticket.api.test;
import java.util.Calendar;
import java.util.TimeZone;
+
+import org.junit.Before;
import org.junit.Test;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.utils.DateTimeUtils;
public class DateTimeUtilsTest{
-
+ @Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+ }
@Test public void testDateDiff1() throws IllegalArgumentException, IllegalAccessException {
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/FipTimeZoneTestV1.java b/src/test/java/org/uic/barcode/ticket/api/test/FipTimeZoneTestV1.java
index c9b0f31..8cf0736 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/FipTimeZoneTestV1.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/FipTimeZoneTestV1.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv1.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.IFipTicket;
@@ -89,6 +90,8 @@ public class FipTimeZoneTestV1 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
UicRailTicketData ticket1 = FipTimeZoneTestTicketV1.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/FipTimeZoneTestV2.java b/src/test/java/org/uic/barcode/ticket/api/test/FipTimeZoneTestV2.java
index 89b6562..8b8c542 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/FipTimeZoneTestV2.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/FipTimeZoneTestV2.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv2.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.IFipTicket;
@@ -89,6 +90,8 @@ public class FipTimeZoneTestV2 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
UicRailTicketData ticket1 = FipTimeZoneTestTicketV2.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/FipTimeZoneTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/FipTimeZoneTestV3.java
index a4c542e..fca31a9 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/FipTimeZoneTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/FipTimeZoneTestV3.java
@@ -1,347 +1,350 @@
-package org.uic.barcode.ticket.api.test;
-
-import java.io.IOException;
-import java.text.DateFormat;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.TimeZone;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.uic.barcode.asn1.uper.UperEncoder;
-import org.uic.barcode.ticket.EncodingFormatException;
-import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
-import org.uic.barcode.ticket.api.spec.IFipTicket;
-import org.uic.barcode.ticket.api.spec.IUicRailTicket;
-import org.uic.barcode.ticket.api.test.testtickets.FipTimeZoneTestTicketV3;
-import org.uic.barcode.ticket.api.utils.Api2AsnEncoder;
-import org.uic.barcode.ticket.api.utils.Api2OpenAsnEncoderV3;
-import org.uic.barcode.ticket.api.utils.Asn2ApiDecoder;
-import org.uic.barcode.ticket.api.utils.OpenAsn2ApiDecoderV3;
-
-
-/**
- * The Class FipTimeZoneTestV1.
- *
- *
- *
- */
-public class FipTimeZoneTestV3 {
-
- /** The low level encoded test ticket test case 1 . */
- private byte[] encoded1 = null;
-
- /** The low level encoded test ticket test case 2 . */
- private byte[] encoded2 = null;
-
- /** The low level encoded test ticket test case 3 . */
- private byte[] encoded3 = null;
-
- /** The decoder. */
- Asn2ApiDecoder decoder = new OpenAsn2ApiDecoderV3();
-
- /** The encoder. */
- Api2AsnEncoder encoder = new Api2OpenAsnEncoderV3();
-
- /** The API ticket low level encoded for case 1. */
- IUicRailTicket iTicketDecodedFromAsn1Case1 = null;
-
- /** The API ticket low level encoded for case 2. */
- IUicRailTicket iTicketDecodedFromAsn1Case2 = null;
-
- /** The API ticket low level encoded for case 3. */
- IUicRailTicket iTicketDecodedFromAsn1Case3 = null;
-
-
- /** The ticket decoded 1. */
- IUicRailTicket iTicketDecodedCase1 = null;
-
- /** The i ticket decoded 2. */
- IUicRailTicket iTicketDecodedCase2 = null;
-
- /** The i ticket decoded 3. */
- IUicRailTicket iTicketDecodedCase3 = null;
-
- byte[] encodedInTimeZone1 = null;
- byte[] encodedInTimeZone2 = null;
- byte[] encodedInTimeZone3 = null;
-
- String issuingDate1 = null;
- String issuingDate2 = null;
- String issuingDate3 = null;
-
- String validFrom1 = null;
- String validFrom2 = null;
- String validFrom3 = null;
-
- String validUntil1 = null;
- String validUntil2 = null;
- String validUntil3 = null;
-
- String activationDate1 = null;
- String activationDate2 = null;
- String activationDate3 = null;
-
- TimeZone defaulttimeZone = null;
-
- /**
- * Prepare tickets.
- */
- @Before public void prepare() {
-
- defaulttimeZone = TimeZone.getDefault();
-
- UicRailTicketData ticket1 = FipTimeZoneTestTicketV3.getUicTestTicket();
- UicRailTicketData ticket2 = FipTimeZoneTestTicketV3.getUicTestTicket();
- UicRailTicketData ticket3 = FipTimeZoneTestTicketV3.getUicTestTicket();
-
- //encode in UTC time zone
- TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
-
- encoded1 = UperEncoder.encode(ticket1);
- encoded2 = UperEncoder.encode(ticket2);
- encoded3 = UperEncoder.encode(ticket3);
-
- }
-
- /**
- * clean up
- */
- @After public void resetTimeZone() {
- TimeZone.setDefault(defaulttimeZone);
- }
-
-
- /**
- * Test encode test tickets in UTC and decode in CET.
- *
- * @throws IllegalArgumentException the illegal argument exception
- * @throws IllegalAccessException the illegal access exception
- * @throws ParseException
- */
- @Test public void testCETCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
-
- //get tickets
- decodeTestTicketUTC();
-
- //set the dates in the time zone CET
- TimeZone.setDefault(TimeZone.getTimeZone("CET"));
- iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
- iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
- iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
-
- setValidFromTo("2021.03.14-00:00");
- setValidUntilTo("2021.03.24-23:59");
- setActivatedDayTo("2021.03.14-00:00");
-
- encode("CET");
- decode("CET");
- decodedDateToStrings();
-
- assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
- assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
- assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
-
- assert(validFrom1.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(validFrom2.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(validFrom3.equals("Sun Mar 14 00:00:00 CET 2021" ));
-
- assert(validUntil1.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(validUntil2.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(validUntil3.equals("Wed Mar 24 23:59:00 CET 2021" ));
-
- assert(activationDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(activationDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(activationDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
-
- }
-
-
- /**
- * Test encode test tickets in UTC and decode in CET.
- *
- * @throws IllegalArgumentException the illegal argument exception
- * @throws IllegalAccessException the illegal access exception
- * @throws ParseException
- */
- @Test public void testGMTCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
-
- //get tickets
- decodeTestTicketUTC();
-
- //set the dates in the time zone GMT
- TimeZone.setDefault(TimeZone.getTimeZone("GMT"));
- iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
- iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
- iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
-
- setValidFromTo("2021.03.14-00:00");
- setValidUntilTo("2021.03.24-23:59");
- setActivatedDayTo("2021.03.14-00:00");
-
- encode("GMT");
- decode("CET");
- decodedDateToStrings();
-
- assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
- assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
- assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
-
- assert(validFrom1.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(validFrom2.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(validFrom3.equals("Sun Mar 14 00:00:00 CET 2021" ));
-
- assert(validUntil1.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(validUntil2.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(validUntil3.equals("Wed Mar 24 23:59:00 CET 2021" ));
-
- assert(activationDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(activationDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(activationDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
-
- }
-
- /**
- * Test encode test tickets in UTC and decode in CET.
- *
- * @throws IllegalArgumentException the illegal argument exception
- * @throws IllegalAccessException the illegal access exception
- * @throws ParseException
- */
- @Test public void testCETGMTencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
-
- //get tickets
- decodeTestTicketUTC();
-
- //set the dates in the time zone GMT
- TimeZone.setDefault(TimeZone.getTimeZone("CET"));
- iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
- iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
- iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
-
- setValidFromTo("2021.03.14-00:00");
- setValidUntilTo("2021.03.24-23:59");
- setActivatedDayTo("2021.03.14-00:00");
-
- encode("CET");
- decode("GMT");
- decodedDateToStrings();
-
- assert(issuingDate1.equals("Thu Mar 04 12:30:00 GMT 2021" ));
- assert(issuingDate2.equals("Thu Mar 04 00:30:00 GMT 2021" ));
- assert(issuingDate3.equals("Wed Mar 03 23:30:00 GMT 2021" ));
-
- assert(validFrom1.equals("Sun Mar 14 00:00:00 GMT 2021" ));
- assert(validFrom2.equals("Sun Mar 14 00:00:00 GMT 2021" ));
- assert(validFrom3.equals("Sun Mar 14 00:00:00 GMT 2021" ));
-
- assert(validUntil1.equals("Wed Mar 24 23:59:00 GMT 2021" ));
- assert(validUntil2.equals("Wed Mar 24 23:59:00 GMT 2021" ));
- assert(validUntil3.equals("Wed Mar 24 23:59:00 GMT 2021" ));
-
- assert(activationDate1.equals("Sun Mar 14 00:00:00 GMT 2021" ));
- assert(activationDate2.equals("Sun Mar 14 00:00:00 GMT 2021" ));
- assert(activationDate3.equals("Sun Mar 14 00:00:00 GMT 2021" ));
-
- }
-
- private void decodedDateToStrings() {
-
- issuingDate1 = iTicketDecodedCase1.getIssuerDetails().getIssuingDate().toString();
- issuingDate2 = iTicketDecodedCase2.getIssuerDetails().getIssuingDate().toString();
- issuingDate3 = iTicketDecodedCase3.getIssuerDetails().getIssuingDate().toString();
-
- validFrom1 = ((IFipTicket) iTicketDecodedCase1.getDocumentData().iterator().next()).getValidFrom().toString();
- validFrom2 = ((IFipTicket) iTicketDecodedCase2.getDocumentData().iterator().next()).getValidFrom().toString();
- validFrom3 = ((IFipTicket) iTicketDecodedCase3.getDocumentData().iterator().next()).getValidFrom().toString();
-
- validUntil1 = ((IFipTicket) iTicketDecodedCase1.getDocumentData().iterator().next()).getValidUntil().toString();
- validUntil2 = ((IFipTicket) iTicketDecodedCase2.getDocumentData().iterator().next()).getValidUntil().toString();
- validUntil3 = ((IFipTicket) iTicketDecodedCase3.getDocumentData().iterator().next()).getValidUntil().toString();
-
- activationDate1 = ((IFipTicket) iTicketDecodedCase1.getDocumentData().iterator().next()).getActivatedDays().iterator().next().toString();
- activationDate2 = ((IFipTicket) iTicketDecodedCase2.getDocumentData().iterator().next()).getActivatedDays().iterator().next().toString();
- activationDate3 = ((IFipTicket) iTicketDecodedCase3.getDocumentData().iterator().next()).getActivatedDays().iterator().next().toString();
-
- }
-
-
- private void setActivatedDayTo(String dateString) throws ParseException {
- DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
- Date date = dateFormat.parse(dateString);
- ((IFipTicket) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).getActivatedDays().clear();
- ((IFipTicket) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).getActivatedDays().add(date);
-
- ((IFipTicket) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).getActivatedDays().clear();
- ((IFipTicket) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).getActivatedDays().add(date);
-
- ((IFipTicket) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).getActivatedDays().clear();
- ((IFipTicket) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).getActivatedDays().add(date);
-
- }
-
- private void setValidFromTo(String dateString) throws ParseException {
- DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
- Date date = dateFormat.parse(dateString);
- ((IFipTicket) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setValidFrom(date);
- ((IFipTicket) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setValidFrom(date);
- ((IFipTicket) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setValidFrom(date);
- }
-
- private void setValidUntilTo(String dateString) throws ParseException {
- DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
- Date date = dateFormat.parse(dateString);
- ((IFipTicket) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setValidUntil(date);
- ((IFipTicket) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setValidUntil(date);
- ((IFipTicket) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setValidUntil(date);
- }
-
-
- /**
- * Encode in Time Zone
- */
- private void encode(String timeZone) {
- TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
- try {
- encodedInTimeZone1 = encoder.encode(iTicketDecodedFromAsn1Case1);
- encodedInTimeZone2 = encoder.encode(iTicketDecodedFromAsn1Case2);
- encodedInTimeZone3 = encoder.encode(iTicketDecodedFromAsn1Case3);
- } catch (EncodingFormatException e) {
- e.printStackTrace();
- }
- }
-
- /**
- * Decode in Time Zone
- */
- private void decode(String timeZone) {
- TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
-
- try {
- iTicketDecodedCase1 = decoder.decodeFromAsn(encodedInTimeZone1);
- iTicketDecodedCase2 = decoder.decodeFromAsn(encodedInTimeZone2);
- iTicketDecodedCase3 = decoder.decodeFromAsn(encodedInTimeZone3);
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
-
- /**
- * Encode decode.
- */
- private void decodeTestTicketUTC() {
- TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
- try {
- iTicketDecodedFromAsn1Case1 = decoder.decodeFromAsn(encoded1);
- iTicketDecodedFromAsn1Case2 = decoder.decodeFromAsn(encoded2);
- iTicketDecodedFromAsn1Case3 = decoder.decodeFromAsn(encoded3);
- } catch (IOException e) {
- e.printStackTrace();
- }
-
- }
-
-}
+package org.uic.barcode.ticket.api.test;
+
+import java.io.IOException;
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.TimeZone;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
+import org.uic.barcode.ticket.EncodingFormatException;
+import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
+import org.uic.barcode.ticket.api.spec.IFipTicket;
+import org.uic.barcode.ticket.api.spec.IUicRailTicket;
+import org.uic.barcode.ticket.api.test.testtickets.FipTimeZoneTestTicketV3;
+import org.uic.barcode.ticket.api.utils.Api2AsnEncoder;
+import org.uic.barcode.ticket.api.utils.Api2OpenAsnEncoderV3;
+import org.uic.barcode.ticket.api.utils.Asn2ApiDecoder;
+import org.uic.barcode.ticket.api.utils.OpenAsn2ApiDecoderV3;
+
+
+/**
+ * The Class FipTimeZoneTestV1.
+ *
+ *
+ *
+ */
+public class FipTimeZoneTestV3 {
+
+ /** The low level encoded test ticket test case 1 . */
+ private byte[] encoded1 = null;
+
+ /** The low level encoded test ticket test case 2 . */
+ private byte[] encoded2 = null;
+
+ /** The low level encoded test ticket test case 3 . */
+ private byte[] encoded3 = null;
+
+ /** The decoder. */
+ Asn2ApiDecoder decoder = new OpenAsn2ApiDecoderV3();
+
+ /** The encoder. */
+ Api2AsnEncoder encoder = new Api2OpenAsnEncoderV3();
+
+ /** The API ticket low level encoded for case 1. */
+ IUicRailTicket iTicketDecodedFromAsn1Case1 = null;
+
+ /** The API ticket low level encoded for case 2. */
+ IUicRailTicket iTicketDecodedFromAsn1Case2 = null;
+
+ /** The API ticket low level encoded for case 3. */
+ IUicRailTicket iTicketDecodedFromAsn1Case3 = null;
+
+
+ /** The ticket decoded 1. */
+ IUicRailTicket iTicketDecodedCase1 = null;
+
+ /** The i ticket decoded 2. */
+ IUicRailTicket iTicketDecodedCase2 = null;
+
+ /** The i ticket decoded 3. */
+ IUicRailTicket iTicketDecodedCase3 = null;
+
+ byte[] encodedInTimeZone1 = null;
+ byte[] encodedInTimeZone2 = null;
+ byte[] encodedInTimeZone3 = null;
+
+ String issuingDate1 = null;
+ String issuingDate2 = null;
+ String issuingDate3 = null;
+
+ String validFrom1 = null;
+ String validFrom2 = null;
+ String validFrom3 = null;
+
+ String validUntil1 = null;
+ String validUntil2 = null;
+ String validUntil3 = null;
+
+ String activationDate1 = null;
+ String activationDate2 = null;
+ String activationDate3 = null;
+
+ TimeZone defaulttimeZone = null;
+
+ /**
+ * Prepare tickets.
+ */
+ @Before public void prepare() {
+
+ LoggerFactory.setActivateConsoleLog(true);
+
+ defaulttimeZone = TimeZone.getDefault();
+
+ UicRailTicketData ticket1 = FipTimeZoneTestTicketV3.getUicTestTicket();
+ UicRailTicketData ticket2 = FipTimeZoneTestTicketV3.getUicTestTicket();
+ UicRailTicketData ticket3 = FipTimeZoneTestTicketV3.getUicTestTicket();
+
+ //encode in UTC time zone
+ TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
+
+ encoded1 = UperEncoder.encode(ticket1);
+ encoded2 = UperEncoder.encode(ticket2);
+ encoded3 = UperEncoder.encode(ticket3);
+
+ }
+
+ /**
+ * clean up
+ */
+ @After public void resetTimeZone() {
+ TimeZone.setDefault(defaulttimeZone);
+ }
+
+
+ /**
+ * Test encode test tickets in UTC and decode in CET.
+ *
+ * @throws IllegalArgumentException the illegal argument exception
+ * @throws IllegalAccessException the illegal access exception
+ * @throws ParseException
+ */
+ @Test public void testCETCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
+
+ //get tickets
+ decodeTestTicketUTC();
+
+ //set the dates in the time zone CET
+ TimeZone.setDefault(TimeZone.getTimeZone("CET"));
+ iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
+ iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
+ iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
+
+ setValidFromTo("2021.03.14-00:00");
+ setValidUntilTo("2021.03.24-23:59");
+ setActivatedDayTo("2021.03.14-00:00");
+
+ encode("CET");
+ decode("CET");
+ decodedDateToStrings();
+
+ assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
+ assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
+ assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
+
+ assert(validFrom1.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(validFrom2.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(validFrom3.equals("Sun Mar 14 00:00:00 CET 2021" ));
+
+ assert(validUntil1.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(validUntil2.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(validUntil3.equals("Wed Mar 24 23:59:00 CET 2021" ));
+
+ assert(activationDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(activationDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(activationDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
+
+ }
+
+
+ /**
+ * Test encode test tickets in UTC and decode in CET.
+ *
+ * @throws IllegalArgumentException the illegal argument exception
+ * @throws IllegalAccessException the illegal access exception
+ * @throws ParseException
+ */
+ @Test public void testGMTCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
+
+ //get tickets
+ decodeTestTicketUTC();
+
+ //set the dates in the time zone GMT
+ TimeZone.setDefault(TimeZone.getTimeZone("GMT"));
+ iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
+ iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
+ iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
+
+ setValidFromTo("2021.03.14-00:00");
+ setValidUntilTo("2021.03.24-23:59");
+ setActivatedDayTo("2021.03.14-00:00");
+
+ encode("GMT");
+ decode("CET");
+ decodedDateToStrings();
+
+ assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
+ assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
+ assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
+
+ assert(validFrom1.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(validFrom2.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(validFrom3.equals("Sun Mar 14 00:00:00 CET 2021" ));
+
+ assert(validUntil1.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(validUntil2.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(validUntil3.equals("Wed Mar 24 23:59:00 CET 2021" ));
+
+ assert(activationDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(activationDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(activationDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
+
+ }
+
+ /**
+ * Test encode test tickets in UTC and decode in CET.
+ *
+ * @throws IllegalArgumentException the illegal argument exception
+ * @throws IllegalAccessException the illegal access exception
+ * @throws ParseException
+ */
+ @Test public void testCETGMTencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
+
+ //get tickets
+ decodeTestTicketUTC();
+
+ //set the dates in the time zone GMT
+ TimeZone.setDefault(TimeZone.getTimeZone("CET"));
+ iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
+ iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
+ iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
+
+ setValidFromTo("2021.03.14-00:00");
+ setValidUntilTo("2021.03.24-23:59");
+ setActivatedDayTo("2021.03.14-00:00");
+
+ encode("CET");
+ decode("GMT");
+ decodedDateToStrings();
+
+ assert(issuingDate1.equals("Thu Mar 04 12:30:00 GMT 2021" ));
+ assert(issuingDate2.equals("Thu Mar 04 00:30:00 GMT 2021" ));
+ assert(issuingDate3.equals("Wed Mar 03 23:30:00 GMT 2021" ));
+
+ assert(validFrom1.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+ assert(validFrom2.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+ assert(validFrom3.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+
+ assert(validUntil1.equals("Wed Mar 24 23:59:00 GMT 2021" ));
+ assert(validUntil2.equals("Wed Mar 24 23:59:00 GMT 2021" ));
+ assert(validUntil3.equals("Wed Mar 24 23:59:00 GMT 2021" ));
+
+ assert(activationDate1.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+ assert(activationDate2.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+ assert(activationDate3.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+
+ }
+
+ private void decodedDateToStrings() {
+
+ issuingDate1 = iTicketDecodedCase1.getIssuerDetails().getIssuingDate().toString();
+ issuingDate2 = iTicketDecodedCase2.getIssuerDetails().getIssuingDate().toString();
+ issuingDate3 = iTicketDecodedCase3.getIssuerDetails().getIssuingDate().toString();
+
+ validFrom1 = ((IFipTicket) iTicketDecodedCase1.getDocumentData().iterator().next()).getValidFrom().toString();
+ validFrom2 = ((IFipTicket) iTicketDecodedCase2.getDocumentData().iterator().next()).getValidFrom().toString();
+ validFrom3 = ((IFipTicket) iTicketDecodedCase3.getDocumentData().iterator().next()).getValidFrom().toString();
+
+ validUntil1 = ((IFipTicket) iTicketDecodedCase1.getDocumentData().iterator().next()).getValidUntil().toString();
+ validUntil2 = ((IFipTicket) iTicketDecodedCase2.getDocumentData().iterator().next()).getValidUntil().toString();
+ validUntil3 = ((IFipTicket) iTicketDecodedCase3.getDocumentData().iterator().next()).getValidUntil().toString();
+
+ activationDate1 = ((IFipTicket) iTicketDecodedCase1.getDocumentData().iterator().next()).getActivatedDays().iterator().next().toString();
+ activationDate2 = ((IFipTicket) iTicketDecodedCase2.getDocumentData().iterator().next()).getActivatedDays().iterator().next().toString();
+ activationDate3 = ((IFipTicket) iTicketDecodedCase3.getDocumentData().iterator().next()).getActivatedDays().iterator().next().toString();
+
+ }
+
+
+ private void setActivatedDayTo(String dateString) throws ParseException {
+ DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
+ Date date = dateFormat.parse(dateString);
+ ((IFipTicket) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).getActivatedDays().clear();
+ ((IFipTicket) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).getActivatedDays().add(date);
+
+ ((IFipTicket) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).getActivatedDays().clear();
+ ((IFipTicket) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).getActivatedDays().add(date);
+
+ ((IFipTicket) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).getActivatedDays().clear();
+ ((IFipTicket) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).getActivatedDays().add(date);
+
+ }
+
+ private void setValidFromTo(String dateString) throws ParseException {
+ DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
+ Date date = dateFormat.parse(dateString);
+ ((IFipTicket) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setValidFrom(date);
+ ((IFipTicket) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setValidFrom(date);
+ ((IFipTicket) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setValidFrom(date);
+ }
+
+ private void setValidUntilTo(String dateString) throws ParseException {
+ DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
+ Date date = dateFormat.parse(dateString);
+ ((IFipTicket) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setValidUntil(date);
+ ((IFipTicket) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setValidUntil(date);
+ ((IFipTicket) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setValidUntil(date);
+ }
+
+
+ /**
+ * Encode in Time Zone
+ */
+ private void encode(String timeZone) {
+ TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
+ try {
+ encodedInTimeZone1 = encoder.encode(iTicketDecodedFromAsn1Case1);
+ encodedInTimeZone2 = encoder.encode(iTicketDecodedFromAsn1Case2);
+ encodedInTimeZone3 = encoder.encode(iTicketDecodedFromAsn1Case3);
+ } catch (EncodingFormatException e) {
+ e.printStackTrace();
+ }
+ }
+
+ /**
+ * Decode in Time Zone
+ */
+ private void decode(String timeZone) {
+ TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
+
+ try {
+ iTicketDecodedCase1 = decoder.decodeFromAsn(encodedInTimeZone1);
+ iTicketDecodedCase2 = decoder.decodeFromAsn(encodedInTimeZone2);
+ iTicketDecodedCase3 = decoder.decodeFromAsn(encodedInTimeZone3);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+
+
+ /**
+ * Encode decode.
+ */
+ private void decodeTestTicketUTC() {
+ TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
+ try {
+ iTicketDecodedFromAsn1Case1 = decoder.decodeFromAsn(encoded1);
+ iTicketDecodedFromAsn1Case2 = decoder.decodeFromAsn(encoded2);
+ iTicketDecodedFromAsn1Case3 = decoder.decodeFromAsn(encoded3);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+ }
+
+}
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketComplexTestV1.java b/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketComplexTestV1.java
index 4b1d61e..1ee9bc1 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketComplexTestV1.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketComplexTestV1.java
@@ -7,6 +7,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv1.UicRailTicketData;
import org.uic.barcode.ticket.api.test.testtickets.OpenTestComplexTicketV1;
@@ -35,6 +36,8 @@ public class OpenTicketComplexTestV1 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
//encode in UTC time zone
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketComplexTestV2.java b/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketComplexTestV2.java
index da167c4..86bf2d4 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketComplexTestV2.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketComplexTestV2.java
@@ -7,6 +7,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv2.UicRailTicketData;
import org.uic.barcode.ticket.api.test.testtickets.OpenTestComplexTicketV2;
@@ -35,6 +36,8 @@ public class OpenTicketComplexTestV2 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
//encode in UTC time zone
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketComplexTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketComplexTestV3.java
index 21266a9..e04fbb7 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketComplexTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketComplexTestV3.java
@@ -8,6 +8,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv3.IncludedOpenTicketType;
import org.uic.barcode.ticket.api.asn.omv3.OpenTicketData;
import org.uic.barcode.ticket.api.asn.omv3.PassengerType;
@@ -39,6 +40,8 @@ public class OpenTicketComplexTestV3 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
//encode in UTC time zone
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketINcludedTicketDateTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketINcludedTicketDateTestV3.java
index 5631489..5420675 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketINcludedTicketDateTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketINcludedTicketDateTestV3.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv3.CodeTableType;
import org.uic.barcode.ticket.api.asn.omv3.IncludedOpenTicketType;
import org.uic.barcode.ticket.api.asn.omv3.OpenTicketData;
@@ -42,6 +43,8 @@ public class OpenTicketINcludedTicketDateTestV3 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
//encode in UTC time zone
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketRestrictedLuggageComplexTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketRestrictedLuggageComplexTestV3.java
index fe0bdda..5ae24b4 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketRestrictedLuggageComplexTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketRestrictedLuggageComplexTestV3.java
@@ -8,6 +8,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv3.IncludedOpenTicketType;
import org.uic.barcode.ticket.api.asn.omv3.OpenTicketData;
import org.uic.barcode.ticket.api.asn.omv3.PassengerType;
@@ -39,6 +40,8 @@ public class OpenTicketRestrictedLuggageComplexTestV3 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
//encode in UTC time zone
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketTimeZoneTestV1.java b/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketTimeZoneTestV1.java
index c2d288e..8d632c8 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketTimeZoneTestV1.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketTimeZoneTestV1.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv1.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.IOpenTicket;
@@ -89,6 +90,8 @@ public class OpenTicketTimeZoneTestV1 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
UicRailTicketData ticket1 = OpenTicketTimeZoneTestTicketV1.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketTimeZoneTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketTimeZoneTestV3.java
index 236d8b0..cc94978 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketTimeZoneTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketTimeZoneTestV3.java
@@ -1,347 +1,350 @@
-package org.uic.barcode.ticket.api.test;
-
-import java.io.IOException;
-import java.text.DateFormat;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.TimeZone;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.uic.barcode.asn1.uper.UperEncoder;
-import org.uic.barcode.ticket.EncodingFormatException;
-import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
-import org.uic.barcode.ticket.api.spec.IOpenTicket;
-import org.uic.barcode.ticket.api.spec.IUicRailTicket;
-import org.uic.barcode.ticket.api.test.testtickets.OpenTicketTimeZoneTestTicketV3;
-import org.uic.barcode.ticket.api.utils.Api2AsnEncoder;
-import org.uic.barcode.ticket.api.utils.Api2OpenAsnEncoderV3;
-import org.uic.barcode.ticket.api.utils.Asn2ApiDecoder;
-import org.uic.barcode.ticket.api.utils.OpenAsn2ApiDecoderV3;
-
-
-/**
- * The Class FipTimeZoneTestV2.
- *
- *
- *
- */
-public class OpenTicketTimeZoneTestV3 {
-
- /** The low level encoded test ticket test case 1 . */
- private byte[] encoded1 = null;
-
- /** The low level encoded test ticket test case 2 . */
- private byte[] encoded2 = null;
-
- /** The low level encoded test ticket test case 3 . */
- private byte[] encoded3 = null;
-
- /** The decoder. */
- Asn2ApiDecoder decoder = new OpenAsn2ApiDecoderV3();
-
- /** The encoder. */
- Api2AsnEncoder encoder = new Api2OpenAsnEncoderV3();
-
- /** The API ticket low level encoded for case 1. */
- IUicRailTicket iTicketDecodedFromAsn1Case1 = null;
-
- /** The API ticket low level encoded for case 2. */
- IUicRailTicket iTicketDecodedFromAsn1Case2 = null;
-
- /** The API ticket low level encoded for case 3. */
- IUicRailTicket iTicketDecodedFromAsn1Case3 = null;
-
-
- /** The ticket decoded 1. */
- IUicRailTicket iTicketDecodedCase1 = null;
-
- /** The i ticket decoded 2. */
- IUicRailTicket iTicketDecodedCase2 = null;
-
- /** The i ticket decoded 3. */
- IUicRailTicket iTicketDecodedCase3 = null;
-
- byte[] encodedInTimeZone1 = null;
- byte[] encodedInTimeZone2 = null;
- byte[] encodedInTimeZone3 = null;
-
- String issuingDate1 = null;
- String issuingDate2 = null;
- String issuingDate3 = null;
-
- String validFrom1 = null;
- String validFrom2 = null;
- String validFrom3 = null;
-
- String validUntil1 = null;
- String validUntil2 = null;
- String validUntil3 = null;
-
- String activationDate1 = null;
- String activationDate2 = null;
- String activationDate3 = null;
-
- TimeZone defaulttimeZone = null;
-
- /**
- * Prepare tickets.
- */
- @Before public void prepare() {
-
- defaulttimeZone = TimeZone.getDefault();
-
- UicRailTicketData ticket1 = OpenTicketTimeZoneTestTicketV3.getUicTestTicket();
- UicRailTicketData ticket2 = OpenTicketTimeZoneTestTicketV3.getUicTestTicket();
- UicRailTicketData ticket3 = OpenTicketTimeZoneTestTicketV3.getUicTestTicket();
-
- //encode in UTC time zone
- TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
-
- encoded1 = UperEncoder.encode(ticket1);
- encoded2 = UperEncoder.encode(ticket2);
- encoded3 = UperEncoder.encode(ticket3);
-
- }
-
- /**
- * clean up
- */
- @After public void resetTimeZone() {
- TimeZone.setDefault(defaulttimeZone);
- }
-
-
- /**
- * Test encode test tickets in UTC and decode in CET.
- *
- * @throws IllegalArgumentException the illegal argument exception
- * @throws IllegalAccessException the illegal access exception
- * @throws ParseException
- */
- @Test public void testCETCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
-
- //get tickets
- decodeTestTicketUTC();
-
- //set the dates in the time zone CET
- TimeZone.setDefault(TimeZone.getTimeZone("CET"));
- iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
- iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
- iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
-
- setValidFromTo("2021.03.14-00:00");
- setValidUntilTo("2021.03.24-23:59");
- setActivatedDayTo("2021.03.14-00:00");
-
- encode("CET");
- decode("CET");
- decodedDateToStrings();
-
- assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
- assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
- assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
-
- assert(validFrom1.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(validFrom2.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(validFrom3.equals("Sun Mar 14 00:00:00 CET 2021" ));
-
- assert(validUntil1.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(validUntil2.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(validUntil3.equals("Wed Mar 24 23:59:00 CET 2021" ));
-
- assert(activationDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(activationDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(activationDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
-
- }
-
-
- /**
- * Test encode test tickets in UTC and decode in CET.
- *
- * @throws IllegalArgumentException the illegal argument exception
- * @throws IllegalAccessException the illegal access exception
- * @throws ParseException
- */
- @Test public void testGMTCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
-
- //get tickets
- decodeTestTicketUTC();
-
- //set the dates in the time zone GMT
- TimeZone.setDefault(TimeZone.getTimeZone("GMT"));
- iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
- iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
- iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
-
- setValidFromTo("2021.03.14-00:00");
- setValidUntilTo("2021.03.24-23:59");
- setActivatedDayTo("2021.03.14-00:00");
-
- encode("GMT");
- decode("CET");
- decodedDateToStrings();
-
- assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
- assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
- assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
-
- assert(validFrom1.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(validFrom2.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(validFrom3.equals("Sun Mar 14 00:00:00 CET 2021" ));
-
- assert(validUntil1.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(validUntil2.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(validUntil3.equals("Wed Mar 24 23:59:00 CET 2021" ));
-
- assert(activationDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(activationDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(activationDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
-
- }
-
- /**
- * Test encode test tickets in UTC and decode in CET.
- *
- * @throws IllegalArgumentException the illegal argument exception
- * @throws IllegalAccessException the illegal access exception
- * @throws ParseException
- */
- @Test public void testCETGMTencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
-
- //get tickets
- decodeTestTicketUTC();
-
- //set the dates in the time zone GMT
- TimeZone.setDefault(TimeZone.getTimeZone("CET"));
- iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
- iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
- iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
-
- setValidFromTo("2021.03.14-00:00");
- setValidUntilTo("2021.03.24-23:59");
- setActivatedDayTo("2021.03.14-00:00");
-
- encode("CET");
- decode("GMT");
- decodedDateToStrings();
-
- assert(issuingDate1.equals("Thu Mar 04 12:30:00 GMT 2021" ));
- assert(issuingDate2.equals("Thu Mar 04 00:30:00 GMT 2021" ));
- assert(issuingDate3.equals("Wed Mar 03 23:30:00 GMT 2021" ));
-
- assert(validFrom1.equals("Sun Mar 14 00:00:00 GMT 2021" ));
- assert(validFrom2.equals("Sun Mar 14 00:00:00 GMT 2021" ));
- assert(validFrom3.equals("Sun Mar 14 00:00:00 GMT 2021" ));
-
- assert(validUntil1.equals("Wed Mar 24 23:59:00 GMT 2021" ));
- assert(validUntil2.equals("Wed Mar 24 23:59:00 GMT 2021" ));
- assert(validUntil3.equals("Wed Mar 24 23:59:00 GMT 2021" ));
-
- assert(activationDate1.equals("Sun Mar 14 00:00:00 GMT 2021" ));
- assert(activationDate2.equals("Sun Mar 14 00:00:00 GMT 2021" ));
- assert(activationDate3.equals("Sun Mar 14 00:00:00 GMT 2021" ));
-
- }
-
- private void decodedDateToStrings() {
-
- issuingDate1 = iTicketDecodedCase1.getIssuerDetails().getIssuingDate().toString();
- issuingDate2 = iTicketDecodedCase2.getIssuerDetails().getIssuingDate().toString();
- issuingDate3 = iTicketDecodedCase3.getIssuerDetails().getIssuingDate().toString();
-
- validFrom1 = ((IOpenTicket) iTicketDecodedCase1.getDocumentData().iterator().next()).getValidFrom().toString();
- validFrom2 = ((IOpenTicket) iTicketDecodedCase2.getDocumentData().iterator().next()).getValidFrom().toString();
- validFrom3 = ((IOpenTicket) iTicketDecodedCase3.getDocumentData().iterator().next()).getValidFrom().toString();
-
- validUntil1 = ((IOpenTicket) iTicketDecodedCase1.getDocumentData().iterator().next()).getValidUntil().toString();
- validUntil2 = ((IOpenTicket) iTicketDecodedCase2.getDocumentData().iterator().next()).getValidUntil().toString();
- validUntil3 = ((IOpenTicket) iTicketDecodedCase3.getDocumentData().iterator().next()).getValidUntil().toString();
-
- activationDate1 = ((IOpenTicket) iTicketDecodedCase1.getDocumentData().iterator().next()).getActivatedDays().iterator().next().toString();
- activationDate2 = ((IOpenTicket) iTicketDecodedCase2.getDocumentData().iterator().next()).getActivatedDays().iterator().next().toString();
- activationDate3 = ((IOpenTicket) iTicketDecodedCase3.getDocumentData().iterator().next()).getActivatedDays().iterator().next().toString();
-
- }
-
-
- private void setActivatedDayTo(String dateString) throws ParseException {
- DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
- Date date = dateFormat.parse(dateString);
- ((IOpenTicket) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).getActivatedDays().clear();
- ((IOpenTicket) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).getActivatedDays().add(date);
-
- ((IOpenTicket) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).getActivatedDays().clear();
- ((IOpenTicket) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).getActivatedDays().add(date);
-
- ((IOpenTicket) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).getActivatedDays().clear();
- ((IOpenTicket) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).getActivatedDays().add(date);
-
- }
-
- private void setValidFromTo(String dateString) throws ParseException {
- DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
- Date date = dateFormat.parse(dateString);
- ((IOpenTicket) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setValidFrom(date);
- ((IOpenTicket) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setValidFrom(date);
- ((IOpenTicket) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setValidFrom(date);
- }
-
- private void setValidUntilTo(String dateString) throws ParseException {
- DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
- Date date = dateFormat.parse(dateString);
- ((IOpenTicket) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setValidUntil(date);
- ((IOpenTicket) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setValidUntil(date);
- ((IOpenTicket) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setValidUntil(date);
- }
-
-
- /**
- * Encode in Time Zone
- */
- private void encode(String timeZone) {
- TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
- try {
- encodedInTimeZone1 = encoder.encode(iTicketDecodedFromAsn1Case1);
- encodedInTimeZone2 = encoder.encode(iTicketDecodedFromAsn1Case2);
- encodedInTimeZone3 = encoder.encode(iTicketDecodedFromAsn1Case3);
- } catch (EncodingFormatException e) {
- e.printStackTrace();
- }
- }
-
- /**
- * Decode in Time Zone
- */
- private void decode(String timeZone) {
- TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
-
- try {
- iTicketDecodedCase1 = decoder.decodeFromAsn(encodedInTimeZone1);
- iTicketDecodedCase2 = decoder.decodeFromAsn(encodedInTimeZone2);
- iTicketDecodedCase3 = decoder.decodeFromAsn(encodedInTimeZone3);
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
-
- /**
- * Encode decode.
- */
- private void decodeTestTicketUTC() {
- TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
- try {
- iTicketDecodedFromAsn1Case1 = decoder.decodeFromAsn(encoded1);
- iTicketDecodedFromAsn1Case2 = decoder.decodeFromAsn(encoded2);
- iTicketDecodedFromAsn1Case3 = decoder.decodeFromAsn(encoded3);
- } catch (IOException e) {
- e.printStackTrace();
- }
-
- }
-
-}
+package org.uic.barcode.ticket.api.test;
+
+import java.io.IOException;
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.TimeZone;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
+import org.uic.barcode.ticket.EncodingFormatException;
+import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
+import org.uic.barcode.ticket.api.spec.IOpenTicket;
+import org.uic.barcode.ticket.api.spec.IUicRailTicket;
+import org.uic.barcode.ticket.api.test.testtickets.OpenTicketTimeZoneTestTicketV3;
+import org.uic.barcode.ticket.api.utils.Api2AsnEncoder;
+import org.uic.barcode.ticket.api.utils.Api2OpenAsnEncoderV3;
+import org.uic.barcode.ticket.api.utils.Asn2ApiDecoder;
+import org.uic.barcode.ticket.api.utils.OpenAsn2ApiDecoderV3;
+
+
+/**
+ * The Class FipTimeZoneTestV2.
+ *
+ *
+ *
+ */
+public class OpenTicketTimeZoneTestV3 {
+
+ /** The low level encoded test ticket test case 1 . */
+ private byte[] encoded1 = null;
+
+ /** The low level encoded test ticket test case 2 . */
+ private byte[] encoded2 = null;
+
+ /** The low level encoded test ticket test case 3 . */
+ private byte[] encoded3 = null;
+
+ /** The decoder. */
+ Asn2ApiDecoder decoder = new OpenAsn2ApiDecoderV3();
+
+ /** The encoder. */
+ Api2AsnEncoder encoder = new Api2OpenAsnEncoderV3();
+
+ /** The API ticket low level encoded for case 1. */
+ IUicRailTicket iTicketDecodedFromAsn1Case1 = null;
+
+ /** The API ticket low level encoded for case 2. */
+ IUicRailTicket iTicketDecodedFromAsn1Case2 = null;
+
+ /** The API ticket low level encoded for case 3. */
+ IUicRailTicket iTicketDecodedFromAsn1Case3 = null;
+
+
+ /** The ticket decoded 1. */
+ IUicRailTicket iTicketDecodedCase1 = null;
+
+ /** The i ticket decoded 2. */
+ IUicRailTicket iTicketDecodedCase2 = null;
+
+ /** The i ticket decoded 3. */
+ IUicRailTicket iTicketDecodedCase3 = null;
+
+ byte[] encodedInTimeZone1 = null;
+ byte[] encodedInTimeZone2 = null;
+ byte[] encodedInTimeZone3 = null;
+
+ String issuingDate1 = null;
+ String issuingDate2 = null;
+ String issuingDate3 = null;
+
+ String validFrom1 = null;
+ String validFrom2 = null;
+ String validFrom3 = null;
+
+ String validUntil1 = null;
+ String validUntil2 = null;
+ String validUntil3 = null;
+
+ String activationDate1 = null;
+ String activationDate2 = null;
+ String activationDate3 = null;
+
+ TimeZone defaulttimeZone = null;
+
+ /**
+ * Prepare tickets.
+ */
+ @Before public void prepare() {
+
+ LoggerFactory.setActivateConsoleLog(true);
+
+ defaulttimeZone = TimeZone.getDefault();
+
+ UicRailTicketData ticket1 = OpenTicketTimeZoneTestTicketV3.getUicTestTicket();
+ UicRailTicketData ticket2 = OpenTicketTimeZoneTestTicketV3.getUicTestTicket();
+ UicRailTicketData ticket3 = OpenTicketTimeZoneTestTicketV3.getUicTestTicket();
+
+ //encode in UTC time zone
+ TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
+
+ encoded1 = UperEncoder.encode(ticket1);
+ encoded2 = UperEncoder.encode(ticket2);
+ encoded3 = UperEncoder.encode(ticket3);
+
+ }
+
+ /**
+ * clean up
+ */
+ @After public void resetTimeZone() {
+ TimeZone.setDefault(defaulttimeZone);
+ }
+
+
+ /**
+ * Test encode test tickets in UTC and decode in CET.
+ *
+ * @throws IllegalArgumentException the illegal argument exception
+ * @throws IllegalAccessException the illegal access exception
+ * @throws ParseException
+ */
+ @Test public void testCETCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
+
+ //get tickets
+ decodeTestTicketUTC();
+
+ //set the dates in the time zone CET
+ TimeZone.setDefault(TimeZone.getTimeZone("CET"));
+ iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
+ iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
+ iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
+
+ setValidFromTo("2021.03.14-00:00");
+ setValidUntilTo("2021.03.24-23:59");
+ setActivatedDayTo("2021.03.14-00:00");
+
+ encode("CET");
+ decode("CET");
+ decodedDateToStrings();
+
+ assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
+ assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
+ assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
+
+ assert(validFrom1.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(validFrom2.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(validFrom3.equals("Sun Mar 14 00:00:00 CET 2021" ));
+
+ assert(validUntil1.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(validUntil2.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(validUntil3.equals("Wed Mar 24 23:59:00 CET 2021" ));
+
+ assert(activationDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(activationDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(activationDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
+
+ }
+
+
+ /**
+ * Test encode test tickets in UTC and decode in CET.
+ *
+ * @throws IllegalArgumentException the illegal argument exception
+ * @throws IllegalAccessException the illegal access exception
+ * @throws ParseException
+ */
+ @Test public void testGMTCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
+
+ //get tickets
+ decodeTestTicketUTC();
+
+ //set the dates in the time zone GMT
+ TimeZone.setDefault(TimeZone.getTimeZone("GMT"));
+ iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
+ iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
+ iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
+
+ setValidFromTo("2021.03.14-00:00");
+ setValidUntilTo("2021.03.24-23:59");
+ setActivatedDayTo("2021.03.14-00:00");
+
+ encode("GMT");
+ decode("CET");
+ decodedDateToStrings();
+
+ assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
+ assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
+ assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
+
+ assert(validFrom1.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(validFrom2.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(validFrom3.equals("Sun Mar 14 00:00:00 CET 2021" ));
+
+ assert(validUntil1.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(validUntil2.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(validUntil3.equals("Wed Mar 24 23:59:00 CET 2021" ));
+
+ assert(activationDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(activationDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(activationDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
+
+ }
+
+ /**
+ * Test encode test tickets in UTC and decode in CET.
+ *
+ * @throws IllegalArgumentException the illegal argument exception
+ * @throws IllegalAccessException the illegal access exception
+ * @throws ParseException
+ */
+ @Test public void testCETGMTencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
+
+ //get tickets
+ decodeTestTicketUTC();
+
+ //set the dates in the time zone GMT
+ TimeZone.setDefault(TimeZone.getTimeZone("CET"));
+ iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
+ iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
+ iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
+
+ setValidFromTo("2021.03.14-00:00");
+ setValidUntilTo("2021.03.24-23:59");
+ setActivatedDayTo("2021.03.14-00:00");
+
+ encode("CET");
+ decode("GMT");
+ decodedDateToStrings();
+
+ assert(issuingDate1.equals("Thu Mar 04 12:30:00 GMT 2021" ));
+ assert(issuingDate2.equals("Thu Mar 04 00:30:00 GMT 2021" ));
+ assert(issuingDate3.equals("Wed Mar 03 23:30:00 GMT 2021" ));
+
+ assert(validFrom1.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+ assert(validFrom2.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+ assert(validFrom3.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+
+ assert(validUntil1.equals("Wed Mar 24 23:59:00 GMT 2021" ));
+ assert(validUntil2.equals("Wed Mar 24 23:59:00 GMT 2021" ));
+ assert(validUntil3.equals("Wed Mar 24 23:59:00 GMT 2021" ));
+
+ assert(activationDate1.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+ assert(activationDate2.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+ assert(activationDate3.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+
+ }
+
+ private void decodedDateToStrings() {
+
+ issuingDate1 = iTicketDecodedCase1.getIssuerDetails().getIssuingDate().toString();
+ issuingDate2 = iTicketDecodedCase2.getIssuerDetails().getIssuingDate().toString();
+ issuingDate3 = iTicketDecodedCase3.getIssuerDetails().getIssuingDate().toString();
+
+ validFrom1 = ((IOpenTicket) iTicketDecodedCase1.getDocumentData().iterator().next()).getValidFrom().toString();
+ validFrom2 = ((IOpenTicket) iTicketDecodedCase2.getDocumentData().iterator().next()).getValidFrom().toString();
+ validFrom3 = ((IOpenTicket) iTicketDecodedCase3.getDocumentData().iterator().next()).getValidFrom().toString();
+
+ validUntil1 = ((IOpenTicket) iTicketDecodedCase1.getDocumentData().iterator().next()).getValidUntil().toString();
+ validUntil2 = ((IOpenTicket) iTicketDecodedCase2.getDocumentData().iterator().next()).getValidUntil().toString();
+ validUntil3 = ((IOpenTicket) iTicketDecodedCase3.getDocumentData().iterator().next()).getValidUntil().toString();
+
+ activationDate1 = ((IOpenTicket) iTicketDecodedCase1.getDocumentData().iterator().next()).getActivatedDays().iterator().next().toString();
+ activationDate2 = ((IOpenTicket) iTicketDecodedCase2.getDocumentData().iterator().next()).getActivatedDays().iterator().next().toString();
+ activationDate3 = ((IOpenTicket) iTicketDecodedCase3.getDocumentData().iterator().next()).getActivatedDays().iterator().next().toString();
+
+ }
+
+
+ private void setActivatedDayTo(String dateString) throws ParseException {
+ DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
+ Date date = dateFormat.parse(dateString);
+ ((IOpenTicket) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).getActivatedDays().clear();
+ ((IOpenTicket) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).getActivatedDays().add(date);
+
+ ((IOpenTicket) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).getActivatedDays().clear();
+ ((IOpenTicket) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).getActivatedDays().add(date);
+
+ ((IOpenTicket) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).getActivatedDays().clear();
+ ((IOpenTicket) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).getActivatedDays().add(date);
+
+ }
+
+ private void setValidFromTo(String dateString) throws ParseException {
+ DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
+ Date date = dateFormat.parse(dateString);
+ ((IOpenTicket) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setValidFrom(date);
+ ((IOpenTicket) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setValidFrom(date);
+ ((IOpenTicket) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setValidFrom(date);
+ }
+
+ private void setValidUntilTo(String dateString) throws ParseException {
+ DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
+ Date date = dateFormat.parse(dateString);
+ ((IOpenTicket) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setValidUntil(date);
+ ((IOpenTicket) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setValidUntil(date);
+ ((IOpenTicket) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setValidUntil(date);
+ }
+
+
+ /**
+ * Encode in Time Zone
+ */
+ private void encode(String timeZone) {
+ TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
+ try {
+ encodedInTimeZone1 = encoder.encode(iTicketDecodedFromAsn1Case1);
+ encodedInTimeZone2 = encoder.encode(iTicketDecodedFromAsn1Case2);
+ encodedInTimeZone3 = encoder.encode(iTicketDecodedFromAsn1Case3);
+ } catch (EncodingFormatException e) {
+ e.printStackTrace();
+ }
+ }
+
+ /**
+ * Decode in Time Zone
+ */
+ private void decode(String timeZone) {
+ TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
+
+ try {
+ iTicketDecodedCase1 = decoder.decodeFromAsn(encodedInTimeZone1);
+ iTicketDecodedCase2 = decoder.decodeFromAsn(encodedInTimeZone2);
+ iTicketDecodedCase3 = decoder.decodeFromAsn(encodedInTimeZone3);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+
+
+ /**
+ * Encode decode.
+ */
+ private void decodeTestTicketUTC() {
+ TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
+ try {
+ iTicketDecodedFromAsn1Case1 = decoder.decodeFromAsn(encoded1);
+ iTicketDecodedFromAsn1Case2 = decoder.decodeFromAsn(encoded2);
+ iTicketDecodedFromAsn1Case3 = decoder.decodeFromAsn(encoded3);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+ }
+
+}
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketTrainLinkDateTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketTrainLinkDateTestV3.java
index ae6a75a..75de2ae 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketTrainLinkDateTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/OpenTicketTrainLinkDateTestV3.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv3.OpenTicketData;
import org.uic.barcode.ticket.api.asn.omv3.TrainLinkType;
import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
@@ -40,6 +41,8 @@ public class OpenTicketTrainLinkDateTestV3 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
//encode in UTC time zone
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/ParkingTimeZoneTestV1.java b/src/test/java/org/uic/barcode/ticket/api/test/ParkingTimeZoneTestV1.java
index 0cda25e..3855967 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/ParkingTimeZoneTestV1.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/ParkingTimeZoneTestV1.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv1.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.IParkingGround;
@@ -85,6 +86,8 @@ public class ParkingTimeZoneTestV1 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
UicRailTicketData ticket1 = ParkingTestTicketV1.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/ParkingTimeZoneTestV2.java b/src/test/java/org/uic/barcode/ticket/api/test/ParkingTimeZoneTestV2.java
index 3833034..b4c2560 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/ParkingTimeZoneTestV2.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/ParkingTimeZoneTestV2.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv2.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.IParkingGround;
@@ -85,6 +86,8 @@ public class ParkingTimeZoneTestV2 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
UicRailTicketData ticket1 = ParkingTestTicketV2.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/ParkingTimeZoneTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/ParkingTimeZoneTestV3.java
index 88c7a6e..e6bdf8f 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/ParkingTimeZoneTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/ParkingTimeZoneTestV3.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.IParkingGround;
@@ -87,6 +88,8 @@ public class ParkingTimeZoneTestV3 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
UicRailTicketData ticket1 = ParkingTestTicketV3.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/PassComplexTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/PassComplexTestV3.java
index 6b73221..9dc3bb5 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/PassComplexTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/PassComplexTestV3.java
@@ -7,6 +7,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv3.BoardingOrArrivalType;
import org.uic.barcode.ticket.api.asn.omv3.PassData;
import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
@@ -35,6 +36,8 @@ public class PassComplexTestV3 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
//encode in UTC time zone
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/PassTimeZoneTestV1.java b/src/test/java/org/uic/barcode/ticket/api/test/PassTimeZoneTestV1.java
index e7aeae8..ad7a0dd 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/PassTimeZoneTestV1.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/PassTimeZoneTestV1.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv1.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.IPass;
@@ -132,6 +133,8 @@ public class PassTimeZoneTestV1 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
UicRailTicketData ticket1 = PassTimeZoneTestTicketCase1V1.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/PassTimeZoneTestV2.java b/src/test/java/org/uic/barcode/ticket/api/test/PassTimeZoneTestV2.java
index decc26b..6b71547 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/PassTimeZoneTestV2.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/PassTimeZoneTestV2.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv2.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.IPass;
@@ -89,6 +90,8 @@ public class PassTimeZoneTestV2 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
UicRailTicketData ticket1 = PassTimeZoneTestTicketV2.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/PassTimeZoneTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/PassTimeZoneTestV3.java
index d8ea9f3..7a2f392 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/PassTimeZoneTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/PassTimeZoneTestV3.java
@@ -1,347 +1,350 @@
-package org.uic.barcode.ticket.api.test;
-
-import java.io.IOException;
-import java.text.DateFormat;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.TimeZone;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.uic.barcode.asn1.uper.UperEncoder;
-import org.uic.barcode.ticket.EncodingFormatException;
-import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
-import org.uic.barcode.ticket.api.spec.IPass;
-import org.uic.barcode.ticket.api.spec.IUicRailTicket;
-import org.uic.barcode.ticket.api.test.testtickets.PassTimeZoneTestTicketV3;
-import org.uic.barcode.ticket.api.utils.Api2AsnEncoder;
-import org.uic.barcode.ticket.api.utils.Api2OpenAsnEncoderV3;
-import org.uic.barcode.ticket.api.utils.Asn2ApiDecoder;
-import org.uic.barcode.ticket.api.utils.OpenAsn2ApiDecoderV3;
-
-
-/**
- * The Class FipTimeZoneTestV2.
- *
- *
- *
- */
-public class PassTimeZoneTestV3 {
-
- /** The low level encoded test ticket test case 1 . */
- private byte[] encoded1 = null;
-
- /** The low level encoded test ticket test case 2 . */
- private byte[] encoded2 = null;
-
- /** The low level encoded test ticket test case 3 . */
- private byte[] encoded3 = null;
-
- /** The decoder. */
- Asn2ApiDecoder decoder = new OpenAsn2ApiDecoderV3();
-
- /** The encoder. */
- Api2AsnEncoder encoder = new Api2OpenAsnEncoderV3();
-
- /** The API ticket low level encoded for case 1. */
- IUicRailTicket iTicketDecodedFromAsn1Case1 = null;
-
- /** The API ticket low level encoded for case 2. */
- IUicRailTicket iTicketDecodedFromAsn1Case2 = null;
-
- /** The API ticket low level encoded for case 3. */
- IUicRailTicket iTicketDecodedFromAsn1Case3 = null;
-
-
- /** The ticket decoded 1. */
- IUicRailTicket iTicketDecodedCase1 = null;
-
- /** The i ticket decoded 2. */
- IUicRailTicket iTicketDecodedCase2 = null;
-
- /** The i ticket decoded 3. */
- IUicRailTicket iTicketDecodedCase3 = null;
-
- byte[] encodedInTimeZone1 = null;
- byte[] encodedInTimeZone2 = null;
- byte[] encodedInTimeZone3 = null;
-
- String issuingDate1 = null;
- String issuingDate2 = null;
- String issuingDate3 = null;
-
- String validFrom1 = null;
- String validFrom2 = null;
- String validFrom3 = null;
-
- String validUntil1 = null;
- String validUntil2 = null;
- String validUntil3 = null;
-
- String activationDate1 = null;
- String activationDate2 = null;
- String activationDate3 = null;
-
- TimeZone defaulttimeZone = null;
-
- /**
- * Prepare tickets.
- */
- @Before public void prepare() {
-
- defaulttimeZone = TimeZone.getDefault();
-
- UicRailTicketData ticket1 = PassTimeZoneTestTicketV3.getUicTestTicket();
- UicRailTicketData ticket2 = PassTimeZoneTestTicketV3.getUicTestTicket();
- UicRailTicketData ticket3 = PassTimeZoneTestTicketV3.getUicTestTicket();
-
- //encode in UTC time zone
- TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
-
- encoded1 = UperEncoder.encode(ticket1);
- encoded2 = UperEncoder.encode(ticket2);
- encoded3 = UperEncoder.encode(ticket3);
-
- }
-
- /**
- * clean up
- */
- @After public void resetTimeZone() {
- TimeZone.setDefault(defaulttimeZone);
- }
-
-
- /**
- * Test encode test tickets in UTC and decode in CET.
- *
- * @throws IllegalArgumentException the illegal argument exception
- * @throws IllegalAccessException the illegal access exception
- * @throws ParseException
- */
- @Test public void testCETCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
-
- //get tickets
- decodeTestTicketUTC();
-
- //set the dates in the time zone CET
- TimeZone.setDefault(TimeZone.getTimeZone("CET"));
- iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
- iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
- iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
-
- setValidFromTo("2021.03.14-00:00");
- setValidUntilTo("2021.03.24-23:59");
- setActivatedDayTo("2021.03.14-00:00");
-
- encode("CET");
- decode("CET");
- decodedDateToStrings();
-
- assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
- assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
- assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
-
- assert(validFrom1.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(validFrom2.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(validFrom3.equals("Sun Mar 14 00:00:00 CET 2021" ));
-
- assert(validUntil1.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(validUntil2.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(validUntil3.equals("Wed Mar 24 23:59:00 CET 2021" ));
-
- assert(activationDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(activationDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(activationDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
-
- }
-
-
- /**
- * Test encode test tickets in UTC and decode in CET.
- *
- * @throws IllegalArgumentException the illegal argument exception
- * @throws IllegalAccessException the illegal access exception
- * @throws ParseException
- */
- @Test public void testGMTCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
-
- //get tickets
- decodeTestTicketUTC();
-
- //set the dates in the time zone GMT
- TimeZone.setDefault(TimeZone.getTimeZone("GMT"));
- iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
- iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
- iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
-
- setValidFromTo("2021.03.14-00:00");
- setValidUntilTo("2021.03.24-23:59");
- setActivatedDayTo("2021.03.14-00:00");
-
- encode("GMT");
- decode("CET");
- decodedDateToStrings();
-
- assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
- assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
- assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
-
- assert(validFrom1.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(validFrom2.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(validFrom3.equals("Sun Mar 14 00:00:00 CET 2021" ));
-
- assert(validUntil1.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(validUntil2.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(validUntil3.equals("Wed Mar 24 23:59:00 CET 2021" ));
-
- assert(activationDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(activationDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(activationDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
-
- }
-
- /**
- * Test encode test tickets in UTC and decode in CET.
- *
- * @throws IllegalArgumentException the illegal argument exception
- * @throws IllegalAccessException the illegal access exception
- * @throws ParseException
- */
- @Test public void testCETGMTencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
-
- //get tickets
- decodeTestTicketUTC();
-
- //set the dates in the time zone GMT
- TimeZone.setDefault(TimeZone.getTimeZone("CET"));
- iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
- iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
- iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
-
- setValidFromTo("2021.03.14-00:00");
- setValidUntilTo("2021.03.24-23:59");
- setActivatedDayTo("2021.03.14-00:00");
-
- encode("CET");
- decode("GMT");
- decodedDateToStrings();
-
- assert(issuingDate1.equals("Thu Mar 04 12:30:00 GMT 2021" ));
- assert(issuingDate2.equals("Thu Mar 04 00:30:00 GMT 2021" ));
- assert(issuingDate3.equals("Wed Mar 03 23:30:00 GMT 2021" ));
-
- assert(validFrom1.equals("Sun Mar 14 00:00:00 GMT 2021" ));
- assert(validFrom2.equals("Sun Mar 14 00:00:00 GMT 2021" ));
- assert(validFrom3.equals("Sun Mar 14 00:00:00 GMT 2021" ));
-
- assert(validUntil1.equals("Wed Mar 24 23:59:00 GMT 2021" ));
- assert(validUntil2.equals("Wed Mar 24 23:59:00 GMT 2021" ));
- assert(validUntil3.equals("Wed Mar 24 23:59:00 GMT 2021" ));
-
- assert(activationDate1.equals("Sun Mar 14 00:00:00 GMT 2021" ));
- assert(activationDate2.equals("Sun Mar 14 00:00:00 GMT 2021" ));
- assert(activationDate3.equals("Sun Mar 14 00:00:00 GMT 2021" ));
-
- }
-
- private void decodedDateToStrings() {
-
- issuingDate1 = iTicketDecodedCase1.getIssuerDetails().getIssuingDate().toString();
- issuingDate2 = iTicketDecodedCase2.getIssuerDetails().getIssuingDate().toString();
- issuingDate3 = iTicketDecodedCase3.getIssuerDetails().getIssuingDate().toString();
-
- validFrom1 = ((IPass) iTicketDecodedCase1.getDocumentData().iterator().next()).getValidFrom().toString();
- validFrom2 = ((IPass) iTicketDecodedCase2.getDocumentData().iterator().next()).getValidFrom().toString();
- validFrom3 = ((IPass) iTicketDecodedCase3.getDocumentData().iterator().next()).getValidFrom().toString();
-
- validUntil1 = ((IPass) iTicketDecodedCase1.getDocumentData().iterator().next()).getValidUntil().toString();
- validUntil2 = ((IPass) iTicketDecodedCase2.getDocumentData().iterator().next()).getValidUntil().toString();
- validUntil3 = ((IPass) iTicketDecodedCase3.getDocumentData().iterator().next()).getValidUntil().toString();
-
- activationDate1 = ((IPass) iTicketDecodedCase1.getDocumentData().iterator().next()).getActivatedDays().iterator().next().toString();
- activationDate2 = ((IPass) iTicketDecodedCase2.getDocumentData().iterator().next()).getActivatedDays().iterator().next().toString();
- activationDate3 = ((IPass) iTicketDecodedCase3.getDocumentData().iterator().next()).getActivatedDays().iterator().next().toString();
-
- }
-
-
- private void setActivatedDayTo(String dateString) throws ParseException {
- DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
- Date date = dateFormat.parse(dateString);
- ((IPass) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).getActivatedDays().clear();
- ((IPass) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).getActivatedDays().add(date);
-
- ((IPass) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).getActivatedDays().clear();
- ((IPass) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).getActivatedDays().add(date);
-
- ((IPass) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).getActivatedDays().clear();
- ((IPass) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).getActivatedDays().add(date);
-
- }
-
- private void setValidFromTo(String dateString) throws ParseException {
- DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
- Date date = dateFormat.parse(dateString);
- ((IPass) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setValidFrom(date);
- ((IPass) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setValidFrom(date);
- ((IPass) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setValidFrom(date);
- }
-
- private void setValidUntilTo(String dateString) throws ParseException {
- DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
- Date date = dateFormat.parse(dateString);
- ((IPass) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setValidUntil(date);
- ((IPass) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setValidUntil(date);
- ((IPass) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setValidUntil(date);
- }
-
-
- /**
- * Encode in Time Zone
- */
- private void encode(String timeZone) {
- TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
- try {
- encodedInTimeZone1 = encoder.encode(iTicketDecodedFromAsn1Case1);
- encodedInTimeZone2 = encoder.encode(iTicketDecodedFromAsn1Case2);
- encodedInTimeZone3 = encoder.encode(iTicketDecodedFromAsn1Case3);
- } catch (EncodingFormatException e) {
- e.printStackTrace();
- }
- }
-
- /**
- * Decode in Time Zone
- */
- private void decode(String timeZone) {
- TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
-
- try {
- iTicketDecodedCase1 = decoder.decodeFromAsn(encodedInTimeZone1);
- iTicketDecodedCase2 = decoder.decodeFromAsn(encodedInTimeZone2);
- iTicketDecodedCase3 = decoder.decodeFromAsn(encodedInTimeZone3);
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
-
- /**
- * Encode decode.
- */
- private void decodeTestTicketUTC() {
- TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
- try {
- iTicketDecodedFromAsn1Case1 = decoder.decodeFromAsn(encoded1);
- iTicketDecodedFromAsn1Case2 = decoder.decodeFromAsn(encoded2);
- iTicketDecodedFromAsn1Case3 = decoder.decodeFromAsn(encoded3);
- } catch (IOException e) {
- e.printStackTrace();
- }
-
- }
-
-}
+package org.uic.barcode.ticket.api.test;
+
+import java.io.IOException;
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.TimeZone;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
+import org.uic.barcode.ticket.EncodingFormatException;
+import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
+import org.uic.barcode.ticket.api.spec.IPass;
+import org.uic.barcode.ticket.api.spec.IUicRailTicket;
+import org.uic.barcode.ticket.api.test.testtickets.PassTimeZoneTestTicketV3;
+import org.uic.barcode.ticket.api.utils.Api2AsnEncoder;
+import org.uic.barcode.ticket.api.utils.Api2OpenAsnEncoderV3;
+import org.uic.barcode.ticket.api.utils.Asn2ApiDecoder;
+import org.uic.barcode.ticket.api.utils.OpenAsn2ApiDecoderV3;
+
+
+/**
+ * The Class FipTimeZoneTestV2.
+ *
+ *
+ *
+ */
+public class PassTimeZoneTestV3 {
+
+ /** The low level encoded test ticket test case 1 . */
+ private byte[] encoded1 = null;
+
+ /** The low level encoded test ticket test case 2 . */
+ private byte[] encoded2 = null;
+
+ /** The low level encoded test ticket test case 3 . */
+ private byte[] encoded3 = null;
+
+ /** The decoder. */
+ Asn2ApiDecoder decoder = new OpenAsn2ApiDecoderV3();
+
+ /** The encoder. */
+ Api2AsnEncoder encoder = new Api2OpenAsnEncoderV3();
+
+ /** The API ticket low level encoded for case 1. */
+ IUicRailTicket iTicketDecodedFromAsn1Case1 = null;
+
+ /** The API ticket low level encoded for case 2. */
+ IUicRailTicket iTicketDecodedFromAsn1Case2 = null;
+
+ /** The API ticket low level encoded for case 3. */
+ IUicRailTicket iTicketDecodedFromAsn1Case3 = null;
+
+
+ /** The ticket decoded 1. */
+ IUicRailTicket iTicketDecodedCase1 = null;
+
+ /** The i ticket decoded 2. */
+ IUicRailTicket iTicketDecodedCase2 = null;
+
+ /** The i ticket decoded 3. */
+ IUicRailTicket iTicketDecodedCase3 = null;
+
+ byte[] encodedInTimeZone1 = null;
+ byte[] encodedInTimeZone2 = null;
+ byte[] encodedInTimeZone3 = null;
+
+ String issuingDate1 = null;
+ String issuingDate2 = null;
+ String issuingDate3 = null;
+
+ String validFrom1 = null;
+ String validFrom2 = null;
+ String validFrom3 = null;
+
+ String validUntil1 = null;
+ String validUntil2 = null;
+ String validUntil3 = null;
+
+ String activationDate1 = null;
+ String activationDate2 = null;
+ String activationDate3 = null;
+
+ TimeZone defaulttimeZone = null;
+
+ /**
+ * Prepare tickets.
+ */
+ @Before public void prepare() {
+
+ LoggerFactory.setActivateConsoleLog(true);
+
+ defaulttimeZone = TimeZone.getDefault();
+
+ UicRailTicketData ticket1 = PassTimeZoneTestTicketV3.getUicTestTicket();
+ UicRailTicketData ticket2 = PassTimeZoneTestTicketV3.getUicTestTicket();
+ UicRailTicketData ticket3 = PassTimeZoneTestTicketV3.getUicTestTicket();
+
+ //encode in UTC time zone
+ TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
+
+ encoded1 = UperEncoder.encode(ticket1);
+ encoded2 = UperEncoder.encode(ticket2);
+ encoded3 = UperEncoder.encode(ticket3);
+
+ }
+
+ /**
+ * clean up
+ */
+ @After public void resetTimeZone() {
+ TimeZone.setDefault(defaulttimeZone);
+ }
+
+
+ /**
+ * Test encode test tickets in UTC and decode in CET.
+ *
+ * @throws IllegalArgumentException the illegal argument exception
+ * @throws IllegalAccessException the illegal access exception
+ * @throws ParseException
+ */
+ @Test public void testCETCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
+
+ //get tickets
+ decodeTestTicketUTC();
+
+ //set the dates in the time zone CET
+ TimeZone.setDefault(TimeZone.getTimeZone("CET"));
+ iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
+ iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
+ iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
+
+ setValidFromTo("2021.03.14-00:00");
+ setValidUntilTo("2021.03.24-23:59");
+ setActivatedDayTo("2021.03.14-00:00");
+
+ encode("CET");
+ decode("CET");
+ decodedDateToStrings();
+
+ assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
+ assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
+ assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
+
+ assert(validFrom1.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(validFrom2.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(validFrom3.equals("Sun Mar 14 00:00:00 CET 2021" ));
+
+ assert(validUntil1.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(validUntil2.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(validUntil3.equals("Wed Mar 24 23:59:00 CET 2021" ));
+
+ assert(activationDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(activationDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(activationDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
+
+ }
+
+
+ /**
+ * Test encode test tickets in UTC and decode in CET.
+ *
+ * @throws IllegalArgumentException the illegal argument exception
+ * @throws IllegalAccessException the illegal access exception
+ * @throws ParseException
+ */
+ @Test public void testGMTCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
+
+ //get tickets
+ decodeTestTicketUTC();
+
+ //set the dates in the time zone GMT
+ TimeZone.setDefault(TimeZone.getTimeZone("GMT"));
+ iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
+ iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
+ iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
+
+ setValidFromTo("2021.03.14-00:00");
+ setValidUntilTo("2021.03.24-23:59");
+ setActivatedDayTo("2021.03.14-00:00");
+
+ encode("GMT");
+ decode("CET");
+ decodedDateToStrings();
+
+ assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
+ assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
+ assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
+
+ assert(validFrom1.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(validFrom2.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(validFrom3.equals("Sun Mar 14 00:00:00 CET 2021" ));
+
+ assert(validUntil1.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(validUntil2.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(validUntil3.equals("Wed Mar 24 23:59:00 CET 2021" ));
+
+ assert(activationDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(activationDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(activationDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
+
+ }
+
+ /**
+ * Test encode test tickets in UTC and decode in CET.
+ *
+ * @throws IllegalArgumentException the illegal argument exception
+ * @throws IllegalAccessException the illegal access exception
+ * @throws ParseException
+ */
+ @Test public void testCETGMTencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
+
+ //get tickets
+ decodeTestTicketUTC();
+
+ //set the dates in the time zone GMT
+ TimeZone.setDefault(TimeZone.getTimeZone("CET"));
+ iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
+ iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
+ iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
+
+ setValidFromTo("2021.03.14-00:00");
+ setValidUntilTo("2021.03.24-23:59");
+ setActivatedDayTo("2021.03.14-00:00");
+
+ encode("CET");
+ decode("GMT");
+ decodedDateToStrings();
+
+ assert(issuingDate1.equals("Thu Mar 04 12:30:00 GMT 2021" ));
+ assert(issuingDate2.equals("Thu Mar 04 00:30:00 GMT 2021" ));
+ assert(issuingDate3.equals("Wed Mar 03 23:30:00 GMT 2021" ));
+
+ assert(validFrom1.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+ assert(validFrom2.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+ assert(validFrom3.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+
+ assert(validUntil1.equals("Wed Mar 24 23:59:00 GMT 2021" ));
+ assert(validUntil2.equals("Wed Mar 24 23:59:00 GMT 2021" ));
+ assert(validUntil3.equals("Wed Mar 24 23:59:00 GMT 2021" ));
+
+ assert(activationDate1.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+ assert(activationDate2.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+ assert(activationDate3.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+
+ }
+
+ private void decodedDateToStrings() {
+
+ issuingDate1 = iTicketDecodedCase1.getIssuerDetails().getIssuingDate().toString();
+ issuingDate2 = iTicketDecodedCase2.getIssuerDetails().getIssuingDate().toString();
+ issuingDate3 = iTicketDecodedCase3.getIssuerDetails().getIssuingDate().toString();
+
+ validFrom1 = ((IPass) iTicketDecodedCase1.getDocumentData().iterator().next()).getValidFrom().toString();
+ validFrom2 = ((IPass) iTicketDecodedCase2.getDocumentData().iterator().next()).getValidFrom().toString();
+ validFrom3 = ((IPass) iTicketDecodedCase3.getDocumentData().iterator().next()).getValidFrom().toString();
+
+ validUntil1 = ((IPass) iTicketDecodedCase1.getDocumentData().iterator().next()).getValidUntil().toString();
+ validUntil2 = ((IPass) iTicketDecodedCase2.getDocumentData().iterator().next()).getValidUntil().toString();
+ validUntil3 = ((IPass) iTicketDecodedCase3.getDocumentData().iterator().next()).getValidUntil().toString();
+
+ activationDate1 = ((IPass) iTicketDecodedCase1.getDocumentData().iterator().next()).getActivatedDays().iterator().next().toString();
+ activationDate2 = ((IPass) iTicketDecodedCase2.getDocumentData().iterator().next()).getActivatedDays().iterator().next().toString();
+ activationDate3 = ((IPass) iTicketDecodedCase3.getDocumentData().iterator().next()).getActivatedDays().iterator().next().toString();
+
+ }
+
+
+ private void setActivatedDayTo(String dateString) throws ParseException {
+ DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
+ Date date = dateFormat.parse(dateString);
+ ((IPass) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).getActivatedDays().clear();
+ ((IPass) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).getActivatedDays().add(date);
+
+ ((IPass) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).getActivatedDays().clear();
+ ((IPass) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).getActivatedDays().add(date);
+
+ ((IPass) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).getActivatedDays().clear();
+ ((IPass) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).getActivatedDays().add(date);
+
+ }
+
+ private void setValidFromTo(String dateString) throws ParseException {
+ DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
+ Date date = dateFormat.parse(dateString);
+ ((IPass) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setValidFrom(date);
+ ((IPass) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setValidFrom(date);
+ ((IPass) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setValidFrom(date);
+ }
+
+ private void setValidUntilTo(String dateString) throws ParseException {
+ DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
+ Date date = dateFormat.parse(dateString);
+ ((IPass) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setValidUntil(date);
+ ((IPass) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setValidUntil(date);
+ ((IPass) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setValidUntil(date);
+ }
+
+
+ /**
+ * Encode in Time Zone
+ */
+ private void encode(String timeZone) {
+ TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
+ try {
+ encodedInTimeZone1 = encoder.encode(iTicketDecodedFromAsn1Case1);
+ encodedInTimeZone2 = encoder.encode(iTicketDecodedFromAsn1Case2);
+ encodedInTimeZone3 = encoder.encode(iTicketDecodedFromAsn1Case3);
+ } catch (EncodingFormatException e) {
+ e.printStackTrace();
+ }
+ }
+
+ /**
+ * Decode in Time Zone
+ */
+ private void decode(String timeZone) {
+ TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
+
+ try {
+ iTicketDecodedCase1 = decoder.decodeFromAsn(encodedInTimeZone1);
+ iTicketDecodedCase2 = decoder.decodeFromAsn(encodedInTimeZone2);
+ iTicketDecodedCase3 = decoder.decodeFromAsn(encodedInTimeZone3);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+
+
+ /**
+ * Encode decode.
+ */
+ private void decodeTestTicketUTC() {
+ TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
+ try {
+ iTicketDecodedFromAsn1Case1 = decoder.decodeFromAsn(encoded1);
+ iTicketDecodedFromAsn1Case2 = decoder.decodeFromAsn(encoded2);
+ iTicketDecodedFromAsn1Case3 = decoder.decodeFromAsn(encoded3);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+ }
+
+}
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/PassTrainValidityTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/PassTrainValidityTestV3.java
index 2e78ef3..3691a69 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/PassTrainValidityTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/PassTrainValidityTestV3.java
@@ -10,6 +10,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv3.BoardingOrArrivalType;
import org.uic.barcode.ticket.api.asn.omv3.PassData;
import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
@@ -38,6 +39,8 @@ public class PassTrainValidityTestV3 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
//encode in UTC time zone
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/ReservationTimeZoneTestV1.java b/src/test/java/org/uic/barcode/ticket/api/test/ReservationTimeZoneTestV1.java
index 5bf78cb..ac0ab37 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/ReservationTimeZoneTestV1.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/ReservationTimeZoneTestV1.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv1.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.IReservation;
@@ -85,6 +86,8 @@ public class ReservationTimeZoneTestV1 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
UicRailTicketData ticket1 = ReservationTestTicketV1.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/ReservationTimeZoneTestV2.java b/src/test/java/org/uic/barcode/ticket/api/test/ReservationTimeZoneTestV2.java
index 34d3bc2..72e7313 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/ReservationTimeZoneTestV2.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/ReservationTimeZoneTestV2.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv2.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.IReservation;
@@ -85,6 +86,8 @@ public class ReservationTimeZoneTestV2 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
UicRailTicketData ticket1 = ReservationTestTicketV2.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/ReservationTimeZoneTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/ReservationTimeZoneTestV3.java
index 3eb43e1..e479e10 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/ReservationTimeZoneTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/ReservationTimeZoneTestV3.java
@@ -1,314 +1,317 @@
-package org.uic.barcode.ticket.api.test;
-
-import java.io.IOException;
-import java.text.DateFormat;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.TimeZone;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.uic.barcode.asn1.uper.UperEncoder;
-import org.uic.barcode.ticket.EncodingFormatException;
-import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
-import org.uic.barcode.ticket.api.spec.IReservation;
-import org.uic.barcode.ticket.api.spec.IUicRailTicket;
-import org.uic.barcode.ticket.api.test.testtickets.ReservationTestTicketV3;
-import org.uic.barcode.ticket.api.utils.Api2AsnEncoder;
-import org.uic.barcode.ticket.api.utils.Api2OpenAsnEncoderV3;
-import org.uic.barcode.ticket.api.utils.Asn2ApiDecoder;
-import org.uic.barcode.ticket.api.utils.OpenAsn2ApiDecoderV3;
-
-
-/**
- * The Class FipTimeZoneTestV3.
- *
- *
- *
- */
-public class ReservationTimeZoneTestV3 {
-
- /** The low level encoded test ticket test case 1 . */
- private byte[] encoded1 = null;
-
- /** The low level encoded test ticket test case 2 . */
- private byte[] encoded2 = null;
-
- /** The low level encoded test ticket test case 3 . */
- private byte[] encoded3 = null;
-
- /** The decoder. */
- Asn2ApiDecoder decoder = new OpenAsn2ApiDecoderV3();
-
- /** The encoder. */
- Api2AsnEncoder encoder = new Api2OpenAsnEncoderV3();
-
- /** The API ticket low level encoded for case 1. */
- IUicRailTicket iTicketDecodedFromAsn1Case1 = null;
-
- /** The API ticket low level encoded for case 2. */
- IUicRailTicket iTicketDecodedFromAsn1Case2 = null;
-
- /** The API ticket low level encoded for case 3. */
- IUicRailTicket iTicketDecodedFromAsn1Case3 = null;
-
-
- /** The ticket decoded 1. */
- IUicRailTicket iTicketDecodedCase1 = null;
-
- /** The i ticket decoded 2. */
- IUicRailTicket iTicketDecodedCase2 = null;
-
- /** The i ticket decoded 3. */
- IUicRailTicket iTicketDecodedCase3 = null;
-
- byte[] encodedInTimeZone1 = null;
- byte[] encodedInTimeZone2 = null;
- byte[] encodedInTimeZone3 = null;
-
- String issuingDate1 = null;
- String issuingDate2 = null;
- String issuingDate3 = null;
-
- String departureDate1 = null;
- String departureDate2 = null;
- String departureDate3 = null;
-
- String arrivalDate1 = null;
- String arrivalDate2 = null;
- String arrivalDate3 = null;
-
- TimeZone defaulttimeZone = null;
-
- /**
- * Prepare tickets.
- */
- @Before public void prepare() {
-
- defaulttimeZone = TimeZone.getDefault();
-
- UicRailTicketData ticket1 = ReservationTestTicketV3.getUicTestTicket();
- UicRailTicketData ticket2 = ReservationTestTicketV3.getUicTestTicket();
- UicRailTicketData ticket3 = ReservationTestTicketV3.getUicTestTicket();
-
- //encode in UTC time zone
- TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
-
- encoded1 = UperEncoder.encode(ticket1);
- encoded2 = UperEncoder.encode(ticket2);
- encoded3 = UperEncoder.encode(ticket3);
-
- }
-
- /**
- * clean up
- */
- @After public void resetTimeZone() {
- TimeZone.setDefault(defaulttimeZone);
- }
-
-
- /**
- * Test encode test tickets in UTC and decode in CET.
- *
- * @throws IllegalArgumentException the illegal argument exception
- * @throws IllegalAccessException the illegal access exception
- * @throws ParseException
- */
- @Test public void testCETCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
-
- //get tickets
- decodeTestTicketUTC();
-
- //set the dates in the time zone CET
- TimeZone.setDefault(TimeZone.getTimeZone("CET"));
- iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
- iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
- iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
-
- setdepartureDateTo("2021.03.14-00:00");
- setarrivalDateTo("2021.03.24-23:59");
-
- encode("CET");
- decode("CET");
- decodedDateToStrings();
-
- assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
- assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
- assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
-
- assert(departureDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(departureDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(departureDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
-
- assert(arrivalDate1.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(arrivalDate2.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(arrivalDate3.equals("Wed Mar 24 23:59:00 CET 2021" ));
-
-
- }
-
-
- /**
- * Test encode test tickets in UTC and decode in CET.
- *
- * @throws IllegalArgumentException the illegal argument exception
- * @throws IllegalAccessException the illegal access exception
- * @throws ParseException
- */
- @Test public void testGMTCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
-
- //get tickets
- decodeTestTicketUTC();
-
- //set the dates in the time zone GMT
- TimeZone.setDefault(TimeZone.getTimeZone("GMT"));
- iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
- iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
- iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
-
- setdepartureDateTo("2021.03.14-00:00");
- setarrivalDateTo("2021.03.24-23:59");
-
- encode("GMT");
- decode("CET");
- decodedDateToStrings();
-
- assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
- assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
- assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
-
- assert(departureDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(departureDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(departureDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
-
- assert(arrivalDate1.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(arrivalDate2.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(arrivalDate3.equals("Wed Mar 24 23:59:00 CET 2021" ));
-
-
- }
-
- /**
- * Test encode test tickets in UTC and decode in CET.
- *
- * @throws IllegalArgumentException the illegal argument exception
- * @throws IllegalAccessException the illegal access exception
- * @throws ParseException
- */
- @Test public void testCETGMTencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
-
- //get tickets
- decodeTestTicketUTC();
-
- //set the dates in the time zone GMT
- TimeZone.setDefault(TimeZone.getTimeZone("CET"));
- iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
- iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
- iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
-
- setdepartureDateTo("2021.03.14-00:00");
- setarrivalDateTo("2021.03.24-23:59");
-
- encode("CET");
- decode("GMT");
- decodedDateToStrings();
-
- assert(issuingDate1.equals("Thu Mar 04 12:30:00 GMT 2021" ));
- assert(issuingDate2.equals("Thu Mar 04 00:30:00 GMT 2021" ));
- assert(issuingDate3.equals("Wed Mar 03 23:30:00 GMT 2021" ));
-
- assert(departureDate1.equals("Sun Mar 14 00:00:00 GMT 2021" ));
- assert(departureDate2.equals("Sun Mar 14 00:00:00 GMT 2021" ));
- assert(departureDate3.equals("Sun Mar 14 00:00:00 GMT 2021" ));
-
- assert(arrivalDate1.equals("Wed Mar 24 23:59:00 GMT 2021" ));
- assert(arrivalDate2.equals("Wed Mar 24 23:59:00 GMT 2021" ));
- assert(arrivalDate3.equals("Wed Mar 24 23:59:00 GMT 2021" ));
-
-
- }
-
- private void decodedDateToStrings() {
-
- issuingDate1 = iTicketDecodedCase1.getIssuerDetails().getIssuingDate().toString();
- issuingDate2 = iTicketDecodedCase2.getIssuerDetails().getIssuingDate().toString();
- issuingDate3 = iTicketDecodedCase3.getIssuerDetails().getIssuingDate().toString();
-
- departureDate1 = ((IReservation) iTicketDecodedCase1.getDocumentData().iterator().next()).getDepartureDate().toString();
- departureDate2 = ((IReservation) iTicketDecodedCase2.getDocumentData().iterator().next()).getDepartureDate().toString();
- departureDate3 = ((IReservation) iTicketDecodedCase3.getDocumentData().iterator().next()).getDepartureDate().toString();
-
- arrivalDate1 = ((IReservation) iTicketDecodedCase1.getDocumentData().iterator().next()).getArrivalDate().toString();
- arrivalDate2 = ((IReservation) iTicketDecodedCase2.getDocumentData().iterator().next()).getArrivalDate().toString();
- arrivalDate3 = ((IReservation) iTicketDecodedCase3.getDocumentData().iterator().next()).getArrivalDate().toString();
-
-
- }
-
-
- private void setdepartureDateTo(String dateString) throws ParseException {
- DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
- Date date = dateFormat.parse(dateString);
- ((IReservation) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setDepartureDate(date);
- ((IReservation) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setDepartureDate(date);
- ((IReservation) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setDepartureDate(date);
- }
-
- private void setarrivalDateTo(String dateString) throws ParseException {
- DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
- Date date = dateFormat.parse(dateString);
- ((IReservation) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setArrivalDate(date);
- ((IReservation) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setArrivalDate(date);
- ((IReservation) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setArrivalDate(date);
- }
-
-
- /**
- * Encode in Time Zone
- */
- private void encode(String timeZone) {
- TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
- try {
- encodedInTimeZone1 = encoder.encode(iTicketDecodedFromAsn1Case1);
- encodedInTimeZone2 = encoder.encode(iTicketDecodedFromAsn1Case2);
- encodedInTimeZone3 = encoder.encode(iTicketDecodedFromAsn1Case3);
- } catch (EncodingFormatException e) {
- e.printStackTrace();
- }
- }
-
- /**
- * Decode in Time Zone
- */
- private void decode(String timeZone) {
- TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
-
- try {
- iTicketDecodedCase1 = decoder.decodeFromAsn(encodedInTimeZone1);
- iTicketDecodedCase2 = decoder.decodeFromAsn(encodedInTimeZone2);
- iTicketDecodedCase3 = decoder.decodeFromAsn(encodedInTimeZone3);
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
-
- /**
- * Encode decode.
- */
- private void decodeTestTicketUTC() {
- TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
- try {
- iTicketDecodedFromAsn1Case1 = decoder.decodeFromAsn(encoded1);
- iTicketDecodedFromAsn1Case2 = decoder.decodeFromAsn(encoded2);
- iTicketDecodedFromAsn1Case3 = decoder.decodeFromAsn(encoded3);
- } catch (IOException e) {
- e.printStackTrace();
- }
-
- }
-
-}
+package org.uic.barcode.ticket.api.test;
+
+import java.io.IOException;
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.TimeZone;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
+import org.uic.barcode.ticket.EncodingFormatException;
+import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
+import org.uic.barcode.ticket.api.spec.IReservation;
+import org.uic.barcode.ticket.api.spec.IUicRailTicket;
+import org.uic.barcode.ticket.api.test.testtickets.ReservationTestTicketV3;
+import org.uic.barcode.ticket.api.utils.Api2AsnEncoder;
+import org.uic.barcode.ticket.api.utils.Api2OpenAsnEncoderV3;
+import org.uic.barcode.ticket.api.utils.Asn2ApiDecoder;
+import org.uic.barcode.ticket.api.utils.OpenAsn2ApiDecoderV3;
+
+
+/**
+ * The Class FipTimeZoneTestV3.
+ *
+ *
+ *
+ */
+public class ReservationTimeZoneTestV3 {
+
+ /** The low level encoded test ticket test case 1 . */
+ private byte[] encoded1 = null;
+
+ /** The low level encoded test ticket test case 2 . */
+ private byte[] encoded2 = null;
+
+ /** The low level encoded test ticket test case 3 . */
+ private byte[] encoded3 = null;
+
+ /** The decoder. */
+ Asn2ApiDecoder decoder = new OpenAsn2ApiDecoderV3();
+
+ /** The encoder. */
+ Api2AsnEncoder encoder = new Api2OpenAsnEncoderV3();
+
+ /** The API ticket low level encoded for case 1. */
+ IUicRailTicket iTicketDecodedFromAsn1Case1 = null;
+
+ /** The API ticket low level encoded for case 2. */
+ IUicRailTicket iTicketDecodedFromAsn1Case2 = null;
+
+ /** The API ticket low level encoded for case 3. */
+ IUicRailTicket iTicketDecodedFromAsn1Case3 = null;
+
+
+ /** The ticket decoded 1. */
+ IUicRailTicket iTicketDecodedCase1 = null;
+
+ /** The i ticket decoded 2. */
+ IUicRailTicket iTicketDecodedCase2 = null;
+
+ /** The i ticket decoded 3. */
+ IUicRailTicket iTicketDecodedCase3 = null;
+
+ byte[] encodedInTimeZone1 = null;
+ byte[] encodedInTimeZone2 = null;
+ byte[] encodedInTimeZone3 = null;
+
+ String issuingDate1 = null;
+ String issuingDate2 = null;
+ String issuingDate3 = null;
+
+ String departureDate1 = null;
+ String departureDate2 = null;
+ String departureDate3 = null;
+
+ String arrivalDate1 = null;
+ String arrivalDate2 = null;
+ String arrivalDate3 = null;
+
+ TimeZone defaulttimeZone = null;
+
+ /**
+ * Prepare tickets.
+ */
+ @Before public void prepare() {
+
+ LoggerFactory.setActivateConsoleLog(true);
+
+ defaulttimeZone = TimeZone.getDefault();
+
+ UicRailTicketData ticket1 = ReservationTestTicketV3.getUicTestTicket();
+ UicRailTicketData ticket2 = ReservationTestTicketV3.getUicTestTicket();
+ UicRailTicketData ticket3 = ReservationTestTicketV3.getUicTestTicket();
+
+ //encode in UTC time zone
+ TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
+
+ encoded1 = UperEncoder.encode(ticket1);
+ encoded2 = UperEncoder.encode(ticket2);
+ encoded3 = UperEncoder.encode(ticket3);
+
+ }
+
+ /**
+ * clean up
+ */
+ @After public void resetTimeZone() {
+ TimeZone.setDefault(defaulttimeZone);
+ }
+
+
+ /**
+ * Test encode test tickets in UTC and decode in CET.
+ *
+ * @throws IllegalArgumentException the illegal argument exception
+ * @throws IllegalAccessException the illegal access exception
+ * @throws ParseException
+ */
+ @Test public void testCETCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
+
+ //get tickets
+ decodeTestTicketUTC();
+
+ //set the dates in the time zone CET
+ TimeZone.setDefault(TimeZone.getTimeZone("CET"));
+ iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
+ iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
+ iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
+
+ setdepartureDateTo("2021.03.14-00:00");
+ setarrivalDateTo("2021.03.24-23:59");
+
+ encode("CET");
+ decode("CET");
+ decodedDateToStrings();
+
+ assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
+ assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
+ assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
+
+ assert(departureDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(departureDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(departureDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
+
+ assert(arrivalDate1.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(arrivalDate2.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(arrivalDate3.equals("Wed Mar 24 23:59:00 CET 2021" ));
+
+
+ }
+
+
+ /**
+ * Test encode test tickets in UTC and decode in CET.
+ *
+ * @throws IllegalArgumentException the illegal argument exception
+ * @throws IllegalAccessException the illegal access exception
+ * @throws ParseException
+ */
+ @Test public void testGMTCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
+
+ //get tickets
+ decodeTestTicketUTC();
+
+ //set the dates in the time zone GMT
+ TimeZone.setDefault(TimeZone.getTimeZone("GMT"));
+ iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
+ iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
+ iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
+
+ setdepartureDateTo("2021.03.14-00:00");
+ setarrivalDateTo("2021.03.24-23:59");
+
+ encode("GMT");
+ decode("CET");
+ decodedDateToStrings();
+
+ assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
+ assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
+ assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
+
+ assert(departureDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(departureDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(departureDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
+
+ assert(arrivalDate1.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(arrivalDate2.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(arrivalDate3.equals("Wed Mar 24 23:59:00 CET 2021" ));
+
+
+ }
+
+ /**
+ * Test encode test tickets in UTC and decode in CET.
+ *
+ * @throws IllegalArgumentException the illegal argument exception
+ * @throws IllegalAccessException the illegal access exception
+ * @throws ParseException
+ */
+ @Test public void testCETGMTencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
+
+ //get tickets
+ decodeTestTicketUTC();
+
+ //set the dates in the time zone GMT
+ TimeZone.setDefault(TimeZone.getTimeZone("CET"));
+ iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
+ iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
+ iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
+
+ setdepartureDateTo("2021.03.14-00:00");
+ setarrivalDateTo("2021.03.24-23:59");
+
+ encode("CET");
+ decode("GMT");
+ decodedDateToStrings();
+
+ assert(issuingDate1.equals("Thu Mar 04 12:30:00 GMT 2021" ));
+ assert(issuingDate2.equals("Thu Mar 04 00:30:00 GMT 2021" ));
+ assert(issuingDate3.equals("Wed Mar 03 23:30:00 GMT 2021" ));
+
+ assert(departureDate1.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+ assert(departureDate2.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+ assert(departureDate3.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+
+ assert(arrivalDate1.equals("Wed Mar 24 23:59:00 GMT 2021" ));
+ assert(arrivalDate2.equals("Wed Mar 24 23:59:00 GMT 2021" ));
+ assert(arrivalDate3.equals("Wed Mar 24 23:59:00 GMT 2021" ));
+
+
+ }
+
+ private void decodedDateToStrings() {
+
+ issuingDate1 = iTicketDecodedCase1.getIssuerDetails().getIssuingDate().toString();
+ issuingDate2 = iTicketDecodedCase2.getIssuerDetails().getIssuingDate().toString();
+ issuingDate3 = iTicketDecodedCase3.getIssuerDetails().getIssuingDate().toString();
+
+ departureDate1 = ((IReservation) iTicketDecodedCase1.getDocumentData().iterator().next()).getDepartureDate().toString();
+ departureDate2 = ((IReservation) iTicketDecodedCase2.getDocumentData().iterator().next()).getDepartureDate().toString();
+ departureDate3 = ((IReservation) iTicketDecodedCase3.getDocumentData().iterator().next()).getDepartureDate().toString();
+
+ arrivalDate1 = ((IReservation) iTicketDecodedCase1.getDocumentData().iterator().next()).getArrivalDate().toString();
+ arrivalDate2 = ((IReservation) iTicketDecodedCase2.getDocumentData().iterator().next()).getArrivalDate().toString();
+ arrivalDate3 = ((IReservation) iTicketDecodedCase3.getDocumentData().iterator().next()).getArrivalDate().toString();
+
+
+ }
+
+
+ private void setdepartureDateTo(String dateString) throws ParseException {
+ DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
+ Date date = dateFormat.parse(dateString);
+ ((IReservation) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setDepartureDate(date);
+ ((IReservation) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setDepartureDate(date);
+ ((IReservation) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setDepartureDate(date);
+ }
+
+ private void setarrivalDateTo(String dateString) throws ParseException {
+ DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
+ Date date = dateFormat.parse(dateString);
+ ((IReservation) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setArrivalDate(date);
+ ((IReservation) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setArrivalDate(date);
+ ((IReservation) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setArrivalDate(date);
+ }
+
+
+ /**
+ * Encode in Time Zone
+ */
+ private void encode(String timeZone) {
+ TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
+ try {
+ encodedInTimeZone1 = encoder.encode(iTicketDecodedFromAsn1Case1);
+ encodedInTimeZone2 = encoder.encode(iTicketDecodedFromAsn1Case2);
+ encodedInTimeZone3 = encoder.encode(iTicketDecodedFromAsn1Case3);
+ } catch (EncodingFormatException e) {
+ e.printStackTrace();
+ }
+ }
+
+ /**
+ * Decode in Time Zone
+ */
+ private void decode(String timeZone) {
+ TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
+
+ try {
+ iTicketDecodedCase1 = decoder.decodeFromAsn(encodedInTimeZone1);
+ iTicketDecodedCase2 = decoder.decodeFromAsn(encodedInTimeZone2);
+ iTicketDecodedCase3 = decoder.decodeFromAsn(encodedInTimeZone3);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+
+
+ /**
+ * Encode decode.
+ */
+ private void decodeTestTicketUTC() {
+ TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
+ try {
+ iTicketDecodedFromAsn1Case1 = decoder.decodeFromAsn(encoded1);
+ iTicketDecodedFromAsn1Case2 = decoder.decodeFromAsn(encoded2);
+ iTicketDecodedFromAsn1Case3 = decoder.decodeFromAsn(encoded3);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+ }
+
+}
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/StationPassageTimeZoneTestV1.java b/src/test/java/org/uic/barcode/ticket/api/test/StationPassageTimeZoneTestV1.java
index aedf569..f8379f1 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/StationPassageTimeZoneTestV1.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/StationPassageTimeZoneTestV1.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv1.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.IStationPassage;
@@ -85,6 +86,8 @@ public class StationPassageTimeZoneTestV1 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
UicRailTicketData ticket1 = StationPassageTestTicketV1.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/StationPassageTimeZoneTestV2.java b/src/test/java/org/uic/barcode/ticket/api/test/StationPassageTimeZoneTestV2.java
index e87e968..dffd5a8 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/StationPassageTimeZoneTestV2.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/StationPassageTimeZoneTestV2.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv2.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.IStationPassage;
@@ -85,6 +86,8 @@ public class StationPassageTimeZoneTestV2 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
UicRailTicketData ticket1 = StationPassageTestTicketV2.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/StationPassageTimeZoneTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/StationPassageTimeZoneTestV3.java
index c60225d..ffe8916 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/StationPassageTimeZoneTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/StationPassageTimeZoneTestV3.java
@@ -1,314 +1,317 @@
-package org.uic.barcode.ticket.api.test;
-
-import java.io.IOException;
-import java.text.DateFormat;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.TimeZone;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.uic.barcode.asn1.uper.UperEncoder;
-import org.uic.barcode.ticket.EncodingFormatException;
-import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
-import org.uic.barcode.ticket.api.spec.IStationPassage;
-import org.uic.barcode.ticket.api.spec.IUicRailTicket;
-import org.uic.barcode.ticket.api.test.testtickets.StationPassageTestTicketV3;
-import org.uic.barcode.ticket.api.utils.Api2AsnEncoder;
-import org.uic.barcode.ticket.api.utils.Api2OpenAsnEncoderV3;
-import org.uic.barcode.ticket.api.utils.Asn2ApiDecoder;
-import org.uic.barcode.ticket.api.utils.OpenAsn2ApiDecoderV3;
-
-
-/**
- * The Class FipTimeZoneTestV3.
- *
- *
- *
- */
-public class StationPassageTimeZoneTestV3 {
-
- /** The low level encoded test ticket test case 1 . */
- private byte[] encoded1 = null;
-
- /** The low level encoded test ticket test case 2 . */
- private byte[] encoded2 = null;
-
- /** The low level encoded test ticket test case 3 . */
- private byte[] encoded3 = null;
-
- /** The decoder. */
- Asn2ApiDecoder decoder = new OpenAsn2ApiDecoderV3();
-
- /** The encoder. */
- Api2AsnEncoder encoder = new Api2OpenAsnEncoderV3();
-
- /** The API ticket low level encoded for case 1. */
- IUicRailTicket iTicketDecodedFromAsn1Case1 = null;
-
- /** The API ticket low level encoded for case 2. */
- IUicRailTicket iTicketDecodedFromAsn1Case2 = null;
-
- /** The API ticket low level encoded for case 3. */
- IUicRailTicket iTicketDecodedFromAsn1Case3 = null;
-
-
- /** The ticket decoded 1. */
- IUicRailTicket iTicketDecodedCase1 = null;
-
- /** The i ticket decoded 2. */
- IUicRailTicket iTicketDecodedCase2 = null;
-
- /** The i ticket decoded 3. */
- IUicRailTicket iTicketDecodedCase3 = null;
-
- byte[] encodedInTimeZone1 = null;
- byte[] encodedInTimeZone2 = null;
- byte[] encodedInTimeZone3 = null;
-
- String issuingDate1 = null;
- String issuingDate2 = null;
- String issuingDate3 = null;
-
- String validFromDate1 = null;
- String validFromDate2 = null;
- String validFromDate3 = null;
-
- String validUntilDate1 = null;
- String validUntilDate2 = null;
- String validUntilDate3 = null;
-
- TimeZone defaulttimeZone = null;
-
- /**
- * Prepare tickets.
- */
- @Before public void prepare() {
-
- defaulttimeZone = TimeZone.getDefault();
-
- UicRailTicketData ticket1 = StationPassageTestTicketV3.getUicTestTicket();
- UicRailTicketData ticket2 = StationPassageTestTicketV3.getUicTestTicket();
- UicRailTicketData ticket3 = StationPassageTestTicketV3.getUicTestTicket();
-
- //encode in UTC time zone
- TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
-
- encoded1 = UperEncoder.encode(ticket1);
- encoded2 = UperEncoder.encode(ticket2);
- encoded3 = UperEncoder.encode(ticket3);
-
- }
-
- /**
- * clean up
- */
- @After public void resetTimeZone() {
- TimeZone.setDefault(defaulttimeZone);
- }
-
-
- /**
- * Test encode test tickets in UTC and decode in CET.
- *
- * @throws IllegalArgumentException the illegal argument exception
- * @throws IllegalAccessException the illegal access exception
- * @throws ParseException
- */
- @Test public void testCETCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
-
- //get tickets
- decodeTestTicketUTC();
-
- //set the dates in the time zone CET
- TimeZone.setDefault(TimeZone.getTimeZone("CET"));
- iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
- iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
- iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
-
- setValidFromDateTo("2021.03.14-00:00");
- setUntilDateTo("2021.03.24-23:59");
-
- encode("CET");
- decode("CET");
- decodedDateToStrings();
-
- assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
- assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
- assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
-
- assert(validFromDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(validFromDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(validFromDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
-
- assert(validUntilDate1.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(validUntilDate2.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(validUntilDate3.equals("Wed Mar 24 23:59:00 CET 2021" ));
-
-
- }
-
-
- /**
- * Test encode test tickets in UTC and decode in CET.
- *
- * @throws IllegalArgumentException the illegal argument exception
- * @throws IllegalAccessException the illegal access exception
- * @throws ParseException
- */
- @Test public void testGMTCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
-
- //get tickets
- decodeTestTicketUTC();
-
- //set the dates in the time zone GMT
- TimeZone.setDefault(TimeZone.getTimeZone("GMT"));
- iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
- iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
- iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
-
- setValidFromDateTo("2021.03.14-00:00");
- setUntilDateTo("2021.03.24-23:59");
-
- encode("GMT");
- decode("CET");
- decodedDateToStrings();
-
- assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
- assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
- assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
-
- assert(validFromDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(validFromDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
- assert(validFromDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
-
- assert(validUntilDate1.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(validUntilDate2.equals("Wed Mar 24 23:59:00 CET 2021" ));
- assert(validUntilDate3.equals("Wed Mar 24 23:59:00 CET 2021" ));
-
-
- }
-
- /**
- * Test encode test tickets in UTC and decode in CET.
- *
- * @throws IllegalArgumentException the illegal argument exception
- * @throws IllegalAccessException the illegal access exception
- * @throws ParseException
- */
- @Test public void testCETGMTencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
-
- //get tickets
- decodeTestTicketUTC();
-
- //set the dates in the time zone GMT
- TimeZone.setDefault(TimeZone.getTimeZone("CET"));
- iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
- iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
- iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
-
- setValidFromDateTo("2021.03.14-00:00");
- setUntilDateTo("2021.03.24-23:59");
-
- encode("CET");
- decode("GMT");
- decodedDateToStrings();
-
- assert(issuingDate1.equals("Thu Mar 04 12:30:00 GMT 2021" ));
- assert(issuingDate2.equals("Thu Mar 04 00:30:00 GMT 2021" ));
- assert(issuingDate3.equals("Wed Mar 03 23:30:00 GMT 2021" ));
-
- assert(validFromDate1.equals("Sun Mar 14 00:00:00 GMT 2021" ));
- assert(validFromDate2.equals("Sun Mar 14 00:00:00 GMT 2021" ));
- assert(validFromDate3.equals("Sun Mar 14 00:00:00 GMT 2021" ));
-
- assert(validUntilDate1.equals("Wed Mar 24 23:59:00 GMT 2021" ));
- assert(validUntilDate2.equals("Wed Mar 24 23:59:00 GMT 2021" ));
- assert(validUntilDate3.equals("Wed Mar 24 23:59:00 GMT 2021" ));
-
-
- }
-
- private void decodedDateToStrings() {
-
- issuingDate1 = iTicketDecodedCase1.getIssuerDetails().getIssuingDate().toString();
- issuingDate2 = iTicketDecodedCase2.getIssuerDetails().getIssuingDate().toString();
- issuingDate3 = iTicketDecodedCase3.getIssuerDetails().getIssuingDate().toString();
-
- validFromDate1 = ((IStationPassage) iTicketDecodedCase1.getDocumentData().iterator().next()).getValidFrom().toString();
- validFromDate2 = ((IStationPassage) iTicketDecodedCase2.getDocumentData().iterator().next()).getValidFrom().toString();
- validFromDate3 = ((IStationPassage) iTicketDecodedCase3.getDocumentData().iterator().next()).getValidFrom().toString();
-
- validUntilDate1 = ((IStationPassage) iTicketDecodedCase1.getDocumentData().iterator().next()).getValidUntil().toString();
- validUntilDate2 = ((IStationPassage) iTicketDecodedCase2.getDocumentData().iterator().next()).getValidUntil().toString();
- validUntilDate3 = ((IStationPassage) iTicketDecodedCase3.getDocumentData().iterator().next()).getValidUntil().toString();
-
-
- }
-
-
- private void setValidFromDateTo(String dateString) throws ParseException {
- DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
- Date date = dateFormat.parse(dateString);
- ((IStationPassage) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setValidFrom(date);
- ((IStationPassage) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setValidFrom(date);
- ((IStationPassage) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setValidFrom(date);
- }
-
- private void setUntilDateTo(String dateString) throws ParseException {
- DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
- Date date = dateFormat.parse(dateString);
- ((IStationPassage) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setValidUntil(date);
- ((IStationPassage) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setValidUntil(date);
- ((IStationPassage) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setValidUntil(date);
- }
-
-
- /**
- * Encode in Time Zone
- */
- private void encode(String timeZone) {
- TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
- try {
- encodedInTimeZone1 = encoder.encode(iTicketDecodedFromAsn1Case1);
- encodedInTimeZone2 = encoder.encode(iTicketDecodedFromAsn1Case2);
- encodedInTimeZone3 = encoder.encode(iTicketDecodedFromAsn1Case3);
- } catch (EncodingFormatException e) {
- e.printStackTrace();
- }
- }
-
- /**
- * Decode in Time Zone
- */
- private void decode(String timeZone) {
- TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
-
- try {
- iTicketDecodedCase1 = decoder.decodeFromAsn(encodedInTimeZone1);
- iTicketDecodedCase2 = decoder.decodeFromAsn(encodedInTimeZone2);
- iTicketDecodedCase3 = decoder.decodeFromAsn(encodedInTimeZone3);
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
-
- /**
- * Encode decode.
- */
- private void decodeTestTicketUTC() {
- TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
- try {
- iTicketDecodedFromAsn1Case1 = decoder.decodeFromAsn(encoded1);
- iTicketDecodedFromAsn1Case2 = decoder.decodeFromAsn(encoded2);
- iTicketDecodedFromAsn1Case3 = decoder.decodeFromAsn(encoded3);
- } catch (IOException e) {
- e.printStackTrace();
- }
-
- }
-
-}
+package org.uic.barcode.ticket.api.test;
+
+import java.io.IOException;
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.TimeZone;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
+import org.uic.barcode.ticket.EncodingFormatException;
+import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
+import org.uic.barcode.ticket.api.spec.IStationPassage;
+import org.uic.barcode.ticket.api.spec.IUicRailTicket;
+import org.uic.barcode.ticket.api.test.testtickets.StationPassageTestTicketV3;
+import org.uic.barcode.ticket.api.utils.Api2AsnEncoder;
+import org.uic.barcode.ticket.api.utils.Api2OpenAsnEncoderV3;
+import org.uic.barcode.ticket.api.utils.Asn2ApiDecoder;
+import org.uic.barcode.ticket.api.utils.OpenAsn2ApiDecoderV3;
+
+
+/**
+ * The Class FipTimeZoneTestV3.
+ *
+ *
+ *
+ */
+public class StationPassageTimeZoneTestV3 {
+
+ /** The low level encoded test ticket test case 1 . */
+ private byte[] encoded1 = null;
+
+ /** The low level encoded test ticket test case 2 . */
+ private byte[] encoded2 = null;
+
+ /** The low level encoded test ticket test case 3 . */
+ private byte[] encoded3 = null;
+
+ /** The decoder. */
+ Asn2ApiDecoder decoder = new OpenAsn2ApiDecoderV3();
+
+ /** The encoder. */
+ Api2AsnEncoder encoder = new Api2OpenAsnEncoderV3();
+
+ /** The API ticket low level encoded for case 1. */
+ IUicRailTicket iTicketDecodedFromAsn1Case1 = null;
+
+ /** The API ticket low level encoded for case 2. */
+ IUicRailTicket iTicketDecodedFromAsn1Case2 = null;
+
+ /** The API ticket low level encoded for case 3. */
+ IUicRailTicket iTicketDecodedFromAsn1Case3 = null;
+
+
+ /** The ticket decoded 1. */
+ IUicRailTicket iTicketDecodedCase1 = null;
+
+ /** The i ticket decoded 2. */
+ IUicRailTicket iTicketDecodedCase2 = null;
+
+ /** The i ticket decoded 3. */
+ IUicRailTicket iTicketDecodedCase3 = null;
+
+ byte[] encodedInTimeZone1 = null;
+ byte[] encodedInTimeZone2 = null;
+ byte[] encodedInTimeZone3 = null;
+
+ String issuingDate1 = null;
+ String issuingDate2 = null;
+ String issuingDate3 = null;
+
+ String validFromDate1 = null;
+ String validFromDate2 = null;
+ String validFromDate3 = null;
+
+ String validUntilDate1 = null;
+ String validUntilDate2 = null;
+ String validUntilDate3 = null;
+
+ TimeZone defaulttimeZone = null;
+
+ /**
+ * Prepare tickets.
+ */
+ @Before public void prepare() {
+
+ LoggerFactory.setActivateConsoleLog(true);
+
+ defaulttimeZone = TimeZone.getDefault();
+
+ UicRailTicketData ticket1 = StationPassageTestTicketV3.getUicTestTicket();
+ UicRailTicketData ticket2 = StationPassageTestTicketV3.getUicTestTicket();
+ UicRailTicketData ticket3 = StationPassageTestTicketV3.getUicTestTicket();
+
+ //encode in UTC time zone
+ TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
+
+ encoded1 = UperEncoder.encode(ticket1);
+ encoded2 = UperEncoder.encode(ticket2);
+ encoded3 = UperEncoder.encode(ticket3);
+
+ }
+
+ /**
+ * clean up
+ */
+ @After public void resetTimeZone() {
+ TimeZone.setDefault(defaulttimeZone);
+ }
+
+
+ /**
+ * Test encode test tickets in UTC and decode in CET.
+ *
+ * @throws IllegalArgumentException the illegal argument exception
+ * @throws IllegalAccessException the illegal access exception
+ * @throws ParseException
+ */
+ @Test public void testCETCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
+
+ //get tickets
+ decodeTestTicketUTC();
+
+ //set the dates in the time zone CET
+ TimeZone.setDefault(TimeZone.getTimeZone("CET"));
+ iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
+ iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
+ iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
+
+ setValidFromDateTo("2021.03.14-00:00");
+ setUntilDateTo("2021.03.24-23:59");
+
+ encode("CET");
+ decode("CET");
+ decodedDateToStrings();
+
+ assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
+ assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
+ assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
+
+ assert(validFromDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(validFromDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(validFromDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
+
+ assert(validUntilDate1.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(validUntilDate2.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(validUntilDate3.equals("Wed Mar 24 23:59:00 CET 2021" ));
+
+
+ }
+
+
+ /**
+ * Test encode test tickets in UTC and decode in CET.
+ *
+ * @throws IllegalArgumentException the illegal argument exception
+ * @throws IllegalAccessException the illegal access exception
+ * @throws ParseException
+ */
+ @Test public void testGMTCETencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
+
+ //get tickets
+ decodeTestTicketUTC();
+
+ //set the dates in the time zone GMT
+ TimeZone.setDefault(TimeZone.getTimeZone("GMT"));
+ iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
+ iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
+ iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
+
+ setValidFromDateTo("2021.03.14-00:00");
+ setUntilDateTo("2021.03.24-23:59");
+
+ encode("GMT");
+ decode("CET");
+ decodedDateToStrings();
+
+ assert(issuingDate1.equals("Thu Mar 04 13:30:00 CET 2021" ));
+ assert(issuingDate2.equals("Thu Mar 04 01:30:00 CET 2021" ));
+ assert(issuingDate3.equals("Thu Mar 04 00:30:00 CET 2021" ));
+
+ assert(validFromDate1.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(validFromDate2.equals("Sun Mar 14 00:00:00 CET 2021" ));
+ assert(validFromDate3.equals("Sun Mar 14 00:00:00 CET 2021" ));
+
+ assert(validUntilDate1.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(validUntilDate2.equals("Wed Mar 24 23:59:00 CET 2021" ));
+ assert(validUntilDate3.equals("Wed Mar 24 23:59:00 CET 2021" ));
+
+
+ }
+
+ /**
+ * Test encode test tickets in UTC and decode in CET.
+ *
+ * @throws IllegalArgumentException the illegal argument exception
+ * @throws IllegalAccessException the illegal access exception
+ * @throws ParseException
+ */
+ @Test public void testCETGMTencoding() throws IllegalArgumentException, IllegalAccessException, ParseException {
+
+ //get tickets
+ decodeTestTicketUTC();
+
+ //set the dates in the time zone GMT
+ TimeZone.setDefault(TimeZone.getTimeZone("CET"));
+ iTicketDecodedFromAsn1Case1.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-12:30" ));
+ iTicketDecodedFromAsn1Case2.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.04-00:30" ));
+ iTicketDecodedFromAsn1Case3.getIssuerDetails().setIssuingDate(new SimpleDateFormat( "yyyy.MM.dd-HH:mm" ).parse( "2021.03.03-23:30" ));
+
+ setValidFromDateTo("2021.03.14-00:00");
+ setUntilDateTo("2021.03.24-23:59");
+
+ encode("CET");
+ decode("GMT");
+ decodedDateToStrings();
+
+ assert(issuingDate1.equals("Thu Mar 04 12:30:00 GMT 2021" ));
+ assert(issuingDate2.equals("Thu Mar 04 00:30:00 GMT 2021" ));
+ assert(issuingDate3.equals("Wed Mar 03 23:30:00 GMT 2021" ));
+
+ assert(validFromDate1.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+ assert(validFromDate2.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+ assert(validFromDate3.equals("Sun Mar 14 00:00:00 GMT 2021" ));
+
+ assert(validUntilDate1.equals("Wed Mar 24 23:59:00 GMT 2021" ));
+ assert(validUntilDate2.equals("Wed Mar 24 23:59:00 GMT 2021" ));
+ assert(validUntilDate3.equals("Wed Mar 24 23:59:00 GMT 2021" ));
+
+
+ }
+
+ private void decodedDateToStrings() {
+
+ issuingDate1 = iTicketDecodedCase1.getIssuerDetails().getIssuingDate().toString();
+ issuingDate2 = iTicketDecodedCase2.getIssuerDetails().getIssuingDate().toString();
+ issuingDate3 = iTicketDecodedCase3.getIssuerDetails().getIssuingDate().toString();
+
+ validFromDate1 = ((IStationPassage) iTicketDecodedCase1.getDocumentData().iterator().next()).getValidFrom().toString();
+ validFromDate2 = ((IStationPassage) iTicketDecodedCase2.getDocumentData().iterator().next()).getValidFrom().toString();
+ validFromDate3 = ((IStationPassage) iTicketDecodedCase3.getDocumentData().iterator().next()).getValidFrom().toString();
+
+ validUntilDate1 = ((IStationPassage) iTicketDecodedCase1.getDocumentData().iterator().next()).getValidUntil().toString();
+ validUntilDate2 = ((IStationPassage) iTicketDecodedCase2.getDocumentData().iterator().next()).getValidUntil().toString();
+ validUntilDate3 = ((IStationPassage) iTicketDecodedCase3.getDocumentData().iterator().next()).getValidUntil().toString();
+
+
+ }
+
+
+ private void setValidFromDateTo(String dateString) throws ParseException {
+ DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
+ Date date = dateFormat.parse(dateString);
+ ((IStationPassage) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setValidFrom(date);
+ ((IStationPassage) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setValidFrom(date);
+ ((IStationPassage) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setValidFrom(date);
+ }
+
+ private void setUntilDateTo(String dateString) throws ParseException {
+ DateFormat dateFormat = new SimpleDateFormat( "yyyy.MM.dd-HH:mm" );
+ Date date = dateFormat.parse(dateString);
+ ((IStationPassage) iTicketDecodedFromAsn1Case1.getDocumentData().iterator().next()).setValidUntil(date);
+ ((IStationPassage) iTicketDecodedFromAsn1Case2.getDocumentData().iterator().next()).setValidUntil(date);
+ ((IStationPassage) iTicketDecodedFromAsn1Case3.getDocumentData().iterator().next()).setValidUntil(date);
+ }
+
+
+ /**
+ * Encode in Time Zone
+ */
+ private void encode(String timeZone) {
+ TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
+ try {
+ encodedInTimeZone1 = encoder.encode(iTicketDecodedFromAsn1Case1);
+ encodedInTimeZone2 = encoder.encode(iTicketDecodedFromAsn1Case2);
+ encodedInTimeZone3 = encoder.encode(iTicketDecodedFromAsn1Case3);
+ } catch (EncodingFormatException e) {
+ e.printStackTrace();
+ }
+ }
+
+ /**
+ * Decode in Time Zone
+ */
+ private void decode(String timeZone) {
+ TimeZone.setDefault(TimeZone.getTimeZone(timeZone));
+
+ try {
+ iTicketDecodedCase1 = decoder.decodeFromAsn(encodedInTimeZone1);
+ iTicketDecodedCase2 = decoder.decodeFromAsn(encodedInTimeZone2);
+ iTicketDecodedCase3 = decoder.decodeFromAsn(encodedInTimeZone3);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+
+
+ /**
+ * Encode decode.
+ */
+ private void decodeTestTicketUTC() {
+ TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
+ try {
+ iTicketDecodedFromAsn1Case1 = decoder.decodeFromAsn(encoded1);
+ iTicketDecodedFromAsn1Case2 = decoder.decodeFromAsn(encoded2);
+ iTicketDecodedFromAsn1Case3 = decoder.decodeFromAsn(encoded3);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+ }
+
+}
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/UperEncodeOpenTicketTestV1.java b/src/test/java/org/uic/barcode/ticket/api/test/UperEncodeOpenTicketTestV1.java
index cb20d79..d9a2944 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/UperEncodeOpenTicketTestV1.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/UperEncodeOpenTicketTestV1.java
@@ -5,8 +5,10 @@ import static org.junit.Assert.assertEquals;
import java.io.IOException;
import java.util.logging.Level;
+import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv1.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.IUicRailTicket;
@@ -17,6 +19,9 @@ import org.uic.barcode.ticket.api.utils.OpenAsn2ApiDecoder;
public class UperEncodeOpenTicketTestV1 {
+ @Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+ }
@Test public void testDecodeTicket() throws IllegalArgumentException, IllegalAccessException {
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/UperEncodePassTestV1.java b/src/test/java/org/uic/barcode/ticket/api/test/UperEncodePassTestV1.java
index 7436f5d..a60296a 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/UperEncodePassTestV1.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/UperEncodePassTestV1.java
@@ -5,8 +5,10 @@ import static org.junit.Assert.assertEquals;
import java.io.IOException;
import java.util.logging.Level;
+import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv1.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.IUicRailTicket;
@@ -17,6 +19,9 @@ import org.uic.barcode.ticket.api.utils.OpenAsn2ApiDecoder;
public class UperEncodePassTestV1 {
+ @Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+ }
@Test public void testDecodeTicket() throws IllegalArgumentException, IllegalAccessException {
UicRailTicketData ticket = PassTestTicketV1.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/UperEncodeTicketLinkTestV1.java b/src/test/java/org/uic/barcode/ticket/api/test/UperEncodeTicketLinkTestV1.java
index 0a4b04c..a512ff3 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/UperEncodeTicketLinkTestV1.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/UperEncodeTicketLinkTestV1.java
@@ -5,8 +5,10 @@ import static org.junit.Assert.assertEquals;
import java.io.IOException;
import java.util.logging.Level;
+import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv1.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.ILinkMode;
import org.uic.barcode.ticket.api.spec.ITicketLink;
@@ -19,7 +21,9 @@ import org.uic.barcode.ticket.api.utils.OpenAsn2ApiDecoder;
public class UperEncodeTicketLinkTestV1 {
-
+ @Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+ }
@Test public void testEncodeTicket() throws IllegalArgumentException, IllegalAccessException {
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/UperEncodeTicketTestV1.java b/src/test/java/org/uic/barcode/ticket/api/test/UperEncodeTicketTestV1.java
index cf8eec6..fd59308 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/UperEncodeTicketTestV1.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/UperEncodeTicketTestV1.java
@@ -4,8 +4,10 @@ import static org.junit.Assert.assertEquals;
import java.util.logging.Level;
+import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv1.UicRailTicketData;
import org.uic.barcode.ticket.api.test.testtickets.SimpleUicTestTicket;
@@ -85,7 +87,9 @@ public class UperEncodeTicketTestV1 {
</pre>
*/
-
+ @Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+ }
@Test public void testEncodeTicket() throws IllegalArgumentException, IllegalAccessException {
UicRailTicketData ticket = SimpleUicTestTicket.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/UperEncodeUICTicketExtensionTest.java b/src/test/java/org/uic/barcode/ticket/api/test/UperEncodeUICTicketExtensionTest.java
index da59f67..6dda463 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/UperEncodeUICTicketExtensionTest.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/UperEncodeUICTicketExtensionTest.java
@@ -4,10 +4,12 @@ import static org.junit.Assert.assertEquals;
import java.util.logging.Level;
+import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.datatypes.Asn1Optional;
import org.uic.barcode.asn1.datatypes.Sequence;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.api.asn.omv1.ExtensionData;
import org.uic.barcode.ticket.api.asn.omv1.SequenceOfExtensionData;
@@ -35,20 +37,7 @@ public class UperEncodeUICTicketExtensionTest {
}
}
-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>
@@ -66,6 +55,9 @@ Encoded successfully in 11 bytes:
}
}
+ @Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+ }
@Test public void testEncodeTicket() throws IllegalArgumentException, IllegalAccessException {
TestRecord ticket = new TestRecord();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/VoucherTimeZoneTestV1.java b/src/test/java/org/uic/barcode/ticket/api/test/VoucherTimeZoneTestV1.java
index 423908b..e2629a3 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/VoucherTimeZoneTestV1.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/VoucherTimeZoneTestV1.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv1.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.IVoucher;
@@ -85,6 +86,8 @@ public class VoucherTimeZoneTestV1 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
UicRailTicketData ticket1 = VoucherTestTicketV1.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/VoucherTimeZoneTestV2.java b/src/test/java/org/uic/barcode/ticket/api/test/VoucherTimeZoneTestV2.java
index c7c2512..f7b4618 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/VoucherTimeZoneTestV2.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/VoucherTimeZoneTestV2.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv2.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.IVoucher;
@@ -87,6 +88,8 @@ public class VoucherTimeZoneTestV2 {
*/
@Before public void prepare() {
+ LoggerFactory.setActivateConsoleLog(true);
+
defaulttimeZone = TimeZone.getDefault();
UicRailTicketData ticket1 = VoucherTestTicketV2.getUicTestTicket();
diff --git a/src/test/java/org/uic/barcode/ticket/api/test/VoucherTimeZoneTestV3.java b/src/test/java/org/uic/barcode/ticket/api/test/VoucherTimeZoneTestV3.java
index 22b17c2..b76b6cc 100644
--- a/src/test/java/org/uic/barcode/ticket/api/test/VoucherTimeZoneTestV3.java
+++ b/src/test/java/org/uic/barcode/ticket/api/test/VoucherTimeZoneTestV3.java
@@ -11,6 +11,7 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.uic.barcode.asn1.uper.UperEncoder;
+import org.uic.barcode.logger.LoggerFactory;
import org.uic.barcode.ticket.EncodingFormatException;
import org.uic.barcode.ticket.api.asn.omv3.UicRailTicketData;
import org.uic.barcode.ticket.api.spec.IVoucher;
@@ -86,6 +87,8 @@ public class VoucherTimeZoneTestV3 {
* Prepare tickets.
*/
@Before public void prepare() {
+
+ LoggerFactory.setActivateConsoleLog(true);
defaulttimeZone = TimeZone.getDefault();