Skip to content
Snippets Groups Projects
Commit 6a08d191 authored by Johanne Fixdal's avatar Johanne Fixdal
Browse files

Updated Train Departure, input for departure time is split to LocalTime.of(int hours, int minutes)

parent 9efe63b7
No related branches found
No related tags found
No related merge requests found
......@@ -7,7 +7,9 @@ import java.util.ArrayList;
* Entity class for train departures.
*/
public class TrainDeparture {
private LocalTime departureTime = LocalTime.MIN;
private final LocalTime departureTime;
private int hour;
private int minutes;
private final String line;
private final String trainNumber;
private final String destination;
......@@ -15,21 +17,24 @@ public class TrainDeparture {
private LocalTime delay;
private static LocalTime clock = LocalTime.MIN;
// delay-method is not final, due to changes
/**
*
* @param departureTime
* @param hour
* @param minutes
* @param line
* @param trainNumber
* @param destination
* @throws IllegalArgumentException
*/
public TrainDeparture(LocalTime departureTime, String line, String trainNumber, String destination) throws IllegalArgumentException{
public TrainDeparture(int hour, int minutes, String line, String trainNumber, String destination) throws IllegalArgumentException{
if (departureTime == null){
throw new IllegalArgumentException("A departure time is required");
if (hour < 0 || hour > 23){
throw new IllegalArgumentException("Invalid hour");
}
if (minutes < 0 || minutes > 59) {
throw new IllegalArgumentException("Invalid minutes");
}
if (line == null){
throw new IllegalArgumentException("A line input is required");
}
......@@ -40,7 +45,7 @@ public class TrainDeparture {
throw new IllegalArgumentException("A destination is required");
}
this.departureTime = departureTime;
departureTime = LocalTime.of(hour,minutes);
this.line = line;
this.trainNumber = trainNumber;
this.destination = destination;
......@@ -51,6 +56,8 @@ public class TrainDeparture {
/**
* Get methods from train departure attributes
*
* @return
*/
public LocalTime getDepartureTime() {
return departureTime;
......@@ -80,7 +87,6 @@ public class TrainDeparture {
}
/**
* set method for train departure attribute "track"
* @param track
......@@ -97,25 +103,14 @@ public class TrainDeparture {
public void setDelay(LocalTime delay) {
this.delay = delay;
}
public void setClock(LocalTime clock) {
this.clock = clock;
}
/**
* Print out informationBoard
* set method for clock
* @param clock
*/
public String informationBoard() {
System.out.println("---------- Train departure ----------------");
System.out.println("Departure time: " + getDepartureTime());
System.out.println("Train number: " + getTrainNumber());
System.out.println("Train line: " + getLine());
System.out.println("Track: " + getTrack());
System.out.println("Destination: " + getDestination());
System.out.println("Delay: " + getDelay());
return " ";
public void setClock(LocalTime clock) {
this.clock = clock;
}
@Override
public String toString() {
return "---------------TrainDeparture-----------------------"
......
......@@ -7,7 +7,7 @@ import java.time.LocalTime;
import static org.junit.jupiter.api.Assertions.assertEquals;
public class TrainDepartureTest {
TrainDeparture test = new TrainDeparture(LocalTime.of(12,00),"R2","222","Oslo");
TrainDeparture test = new TrainDeparture(12,00,"R2","222","Oslo");
@Nested
class getTest {
@Test
......@@ -20,7 +20,7 @@ public class TrainDepartureTest {
}
@Nested
class setTest {
TrainDeparture test = new TrainDeparture(LocalTime.of(12,00),"R2","222","Oslo");
TrainDeparture test = new TrainDeparture(12,00,"R2","222","Oslo");
int newTrack = 3;
LocalTime newDelay = LocalTime.of(00,05);
@Test
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment