Browse Source

New test case and fixed incorrect value for speed

feature-nr-renew
LO Kam Tao Leo 3 years ago
parent
commit
fb111633ee
  1. 5
      src/main/java/org/leolo/nrdatad/model/TrainScheduleSector.java
  2. 67
      src/test/java/org/leolo/nrdatad/model/TrainScheduleTest.java
  3. 18
      src/test/resources/org/leolo/nrdatad/test/V56331_N.json

5
src/main/java/org/leolo/nrdatad/model/TrainScheduleSector.java

@ -2,6 +2,7 @@ package org.leolo.nrdatad.model;
import org.json.JSONArray;
import org.json.JSONObject;
import org.leolo.nrdatad.util.JSONUtil;
import java.util.List;
import java.util.Vector;
@ -231,9 +232,9 @@ public class TrainScheduleSector {
tss.businessSector = object.optString("CIF_business_sector");
tss.powerType = object.optString("CIF_power_type");
tss.timingLoad = object.optString("CIF_timing_load");
tss.speed = object.optInt("CIF_speed");
tss.speed = JSONUtil.parseInt(object.optString("CIF_speed"));
tss.operatingCharacteristic = object.optString("CIF_operating_characteristics");
tss.trainClass = object.optString("COF_train_class");
tss.trainClass = object.optString("CIF_train_class");
tss.sleeper = object.optString("CIF_sleepers");
tss.reservation = object.optString("COF_reservations");
tss.catering = object.optString("CIF_catering_code");

67
src/test/java/org/leolo/nrdatad/model/TrainScheduleTest.java

@ -1,6 +1,7 @@
package org.leolo.nrdatad.model;
import org.junit.Test;
import org.leolo.nrdatad.util.TestUtil;
import org.leolo.nrdatad.util.TimeUtil;
import java.io.BufferedReader;
import java.io.IOException;
@ -41,7 +42,71 @@ public class TrainScheduleTest {
assertEquals("", tss.getSleeper());
assertEquals("25441000", tss.getTrainServiceCode());
assertEquals("S", tss.getTrainClass());
//TODO: finish the function
//Check each location
//1 - PTYPRID
TrainScheduleLocation tsl = tss.getScheduleLocations().get(0);
assertEquals(0, tsl.getPathingAllowance());
assertEquals(TrainScheduleLocationRecordIdentity.ORIGINATE, tsl.getRecordIdentity());
assertEquals(0, tsl.getEngineeringAllowance());
assertEquals("U", tsl.getLine());
assertEquals("", tsl.getPath());
assertEquals(TrainScheduleLocation.UNKNOWN_RECORD_SEQUENCE, tsl.getTiplocInstance());
assertEquals(tss, tsl.getRecordSector());
assertEquals(1, tsl.getRecordSequence());
assertEquals("1", tsl.getPlatform());
assertEquals(TimeUtil.parseTime("1654"), tsl.getWttDeparture());
assertEquals(TimeUtil.parseTime("1654"), tsl.getPublicDeparture());
assertEquals(0, tsl.getWttArrival());
assertEquals(0, tsl.getPublicArrival());
assertEquals(0, tsl.getWttPass());
//2 - TREFRST
tsl = tss.getScheduleLocations().get(1);
assertEquals(180_000, tsl.getPathingAllowance());
assertEquals(TrainScheduleLocationRecordIdentity.INTERMEDIATE, tsl.getRecordIdentity());
assertEquals(60_000, tsl.getEngineeringAllowance());
assertEquals("UL", tsl.getLine());
assertEquals("UP", tsl.getPath());
assertEquals(TrainScheduleLocation.UNKNOWN_RECORD_SEQUENCE, tsl.getTiplocInstance());
assertEquals(tss, tsl.getRecordSector());
assertEquals(2, tsl.getRecordSequence());
assertEquals("A", tsl.getPlatform());
assertEquals(TimeUtil.parseTime("1657H"), tsl.getWttDeparture());
assertEquals(TimeUtil.parseTime("1657"), tsl.getPublicDeparture());
assertEquals(TimeUtil.parseTime("1656H"), tsl.getWttArrival());
assertEquals(TimeUtil.parseTime("1656"), tsl.getPublicArrival());
assertEquals(0, tsl.getWttPass());
//8 - CVLESBY
tsl = tss.getScheduleLocations().get(7);
assertEquals(0, tsl.getPathingAllowance());
assertEquals(TrainScheduleLocationRecordIdentity.INTERMEDIATE, tsl.getRecordIdentity());
assertEquals(0, tsl.getEngineeringAllowance());
assertEquals("", tsl.getLine());
assertEquals("", tsl.getPath());
assertEquals(TrainScheduleLocation.UNKNOWN_RECORD_SEQUENCE, tsl.getTiplocInstance());
assertEquals(tss, tsl.getRecordSector());
assertEquals(8, tsl.getRecordSequence());
assertEquals("", tsl.getPlatform());
assertEquals(0, tsl.getWttDeparture());
assertEquals(0, tsl.getPublicDeparture());
assertEquals(0, tsl.getWttArrival());
assertEquals(0, tsl.getPublicArrival());
assertEquals(TimeUtil.parseTime("1723"), tsl.getWttPass());
//9 - CRDFCEN
tsl = tss.getScheduleLocations().get(8);
assertEquals(0, tsl.getPathingAllowance());
assertEquals(TrainScheduleLocationRecordIdentity.TERMINATE, tsl.getRecordIdentity());
assertEquals(0, tsl.getEngineeringAllowance());
assertEquals("", tsl.getLine());
assertEquals("", tsl.getPath());
assertEquals(TrainScheduleLocation.UNKNOWN_RECORD_SEQUENCE, tsl.getTiplocInstance());
assertEquals(tss, tsl.getRecordSector());
assertEquals(9, tsl.getRecordSequence());
assertEquals("7", tsl.getPlatform());
assertEquals(0, tsl.getWttDeparture());
assertEquals(0, tsl.getPublicDeparture());
assertEquals(TimeUtil.parseTime("1724"), tsl.getWttArrival());
assertEquals(TimeUtil.parseTime("1725"), tsl.getPublicArrival());
assertEquals(0, tsl.getWttPass());
}
}

18
src/test/resources/org/leolo/nrdatad/test/V56331_N.json

@ -32,7 +32,7 @@
"pathing_allowance": null,
"record_identity": "LO",
"engineering_allowance": null,
"line": null,
"line": "U",
"public_departure": "1654",
"tiploc_code": "PTYPRID",
"tiploc_instance": null,
@ -42,21 +42,21 @@
"platform": "1"
},
{
"engineering_allowance": null,
"arrival": "1656",
"engineering_allowance": "1",
"arrival": "1656H",
"pass": null,
"line": null,
"line": "UL",
"public_arrival": "1656",
"performance_allowance": null,
"performance_allowance": "2",
"location_type": "LI",
"platform": null,
"pathing_allowance": null,
"platform": "A",
"pathing_allowance": "3",
"record_identity": "LI",
"path": null,
"path": "UP",
"public_departure": "1657",
"tiploc_code": "TREFRST",
"tiploc_instance": null,
"departure": "1657"
"departure": "1657H"
},
{
"engineering_allowance": null,

Loading…
Cancel
Save