From 922076d807974cefa6ade28f689a20f1a90fddeb Mon Sep 17 00:00:00 2001 From: CGantert345 <57003061+CGantert345@users.noreply.github.com> Date: Tue, 5 Apr 2022 11:19:47 +0200 Subject: provide more control on the logging to users --- .../ticket/api/test/AsnLevelAllElementsTestV3.java | 3 + .../ticket/api/test/AsnLevelCarCarriageTestV3.java | 3 + .../api/test/AsnLevelCountermarkComplexTestV1.java | 3 + .../api/test/AsnLevelCountermarkComplexTestV3.java | 3 + .../api/test/AsnLevelDelayConfirmationTestV3.java | 3 + .../ticket/api/test/AsnLevelParkingTestV3.java | 3 + .../api/test/AsnLevelStationPassageTestV3.java | 3 + .../ticket/api/test/AsnLevelVoucherTestV3.java | 3 + .../ticket/api/test/CounterMarkTimeZoneTestV3.java | 3 + .../api/test/CustomerCardTimeZoneTestV1.java | 3 + .../api/test/CustomerCardTimeZoneTestV2.java | 4 + .../api/test/CustomerCardTimeZoneTestV3.java | 3 + .../barcode/ticket/api/test/DateTimeUtilsTest.java | 7 +- .../barcode/ticket/api/test/FipTimeZoneTestV1.java | 3 + .../barcode/ticket/api/test/FipTimeZoneTestV2.java | 3 + .../barcode/ticket/api/test/FipTimeZoneTestV3.java | 697 +++++++++++---------- .../ticket/api/test/OpenTicketComplexTestV1.java | 3 + .../ticket/api/test/OpenTicketComplexTestV2.java | 3 + .../ticket/api/test/OpenTicketComplexTestV3.java | 3 + .../test/OpenTicketINcludedTicketDateTestV3.java | 3 + .../OpenTicketRestrictedLuggageComplexTestV3.java | 3 + .../ticket/api/test/OpenTicketTimeZoneTestV1.java | 3 + .../ticket/api/test/OpenTicketTimeZoneTestV3.java | 697 +++++++++++---------- .../api/test/OpenTicketTrainLinkDateTestV3.java | 3 + .../ticket/api/test/ParkingTimeZoneTestV1.java | 3 + .../ticket/api/test/ParkingTimeZoneTestV2.java | 3 + .../ticket/api/test/ParkingTimeZoneTestV3.java | 3 + .../barcode/ticket/api/test/PassComplexTestV3.java | 3 + .../ticket/api/test/PassTimeZoneTestV1.java | 3 + .../ticket/api/test/PassTimeZoneTestV2.java | 3 + .../ticket/api/test/PassTimeZoneTestV3.java | 697 +++++++++++---------- .../ticket/api/test/PassTrainValidityTestV3.java | 3 + .../ticket/api/test/ReservationTimeZoneTestV1.java | 3 + .../ticket/api/test/ReservationTimeZoneTestV2.java | 3 + .../ticket/api/test/ReservationTimeZoneTestV3.java | 631 +++++++++---------- .../api/test/StationPassageTimeZoneTestV1.java | 3 + .../api/test/StationPassageTimeZoneTestV2.java | 3 + .../api/test/StationPassageTimeZoneTestV3.java | 631 +++++++++---------- .../api/test/UperEncodeOpenTicketTestV1.java | 5 + .../ticket/api/test/UperEncodePassTestV1.java | 5 + .../api/test/UperEncodeTicketLinkTestV1.java | 6 +- .../ticket/api/test/UperEncodeTicketTestV1.java | 6 +- .../api/test/UperEncodeUICTicketExtensionTest.java | 20 +- .../ticket/api/test/VoucherTimeZoneTestV1.java | 3 + .../ticket/api/test/VoucherTimeZoneTestV2.java | 3 + .../ticket/api/test/VoucherTimeZoneTestV3.java | 3 + 46 files changed, 1822 insertions(+), 1686 deletions(-) (limited to 'src/test/java/org/uic/barcode/ticket') 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 { */ - + @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 @@ -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(); -- cgit v1.2.3