Finished basic airline JUnit test

main
YaFedImYaEatIm 9 years ago
parent ccb852e670
commit c096cf07dc

@ -39,7 +39,7 @@ public class Airline {
this.callSign = callSign;
this.active = active;
this.country = country;
routes = new ArrayList<Route>();
this.routes = new ArrayList<Route>();
}
/**
@ -105,7 +105,13 @@ public class Airline {
* @param routes
*/
public void setRoutes(ArrayList<Route> routes) {
this.routes = routes;
//this is necessary so that the object routes arraylist does not
//point the the other list which will result to data errors. THus
//a clone must be made.
this.routes = new ArrayList<Route>();
for(int i = 0; i < routes.size();i ++){
this.routes.add(routes.get(i));
}
}
/**
* get the ID of relative to the database
@ -175,7 +181,18 @@ public class Airline {
* @param route
*/
public void addRoutes(Route route){
routes.add(route);
ArrayList<Route> routesToAdd = new ArrayList<Route>();
routesToAdd.add(route);
addRoutes(routesToAdd);
}
/**
* Function Overload of addRoutes this allow the adding of a list to route
* @param routes
*/
public void addRoutes(ArrayList<Route> routesToAdd){
for (int i = 0; i < routesToAdd.size(); i ++){
routes.add(routesToAdd.get(i));
}
}
/**
* returns the name of the airline when concatenated to a string.

@ -6,7 +6,7 @@ package seng202.group9.Core;
*
*/
public class Route {
private int ID;
private int ID;//this ID is the route id not the airline or airports.
private int stops;
private String codeShare;
private String equipment;
@ -14,7 +14,7 @@ public class Route {
private String departureAirport;
private String arrivalAirport;
/**
* Constructor
* Constructor for pulling from database
* @param airline
* @param ID
* @param departureAirport
@ -23,7 +23,7 @@ public class Route {
* @param stops
* @param equipment
*/
public Route(String airline, int ID, String departureAirport, String arrivalAirport,
public Route(int ID, String airline, String departureAirport, String arrivalAirport,
String codeShare, int stops, String equipment){
this.ID = ID;
this.stops = stops;
@ -33,6 +33,26 @@ public class Route {
this.departureAirport = departureAirport;
this.arrivalAirport = arrivalAirport;
}
/**
* Constructor for adding
* @param airline
* @param departureAirport
* @param arrivalAirport
* @param codeShare
* @param stops
* @param equipment
*/
public Route(String airline, String departureAirport, String arrivalAirport,
String codeShare, int stops, String equipment){
//remember to set the id manually later after adding it to the database and grab
//the new id value of the route.
this.stops = stops;
this.codeShare = codeShare;
this.equipment = equipment;
this.airline = airline;
this.departureAirport = departureAirport;
this.arrivalAirport = arrivalAirport;
}
/**
* Returns code share of the route
* @return

@ -1,9 +1,12 @@
package seng202.group9;
import java.util.ArrayList;
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
import seng202.group9.Core.Airline;
import seng202.group9.Core.Route;
/**
* Test the functions for the Airline
@ -42,14 +45,14 @@ public class AirlineTest extends TestCase {
Airline allNipponAirways = new Airline(324, "All Nippon Airways", "ANA All Nippon Airways",
"NH", "ANA", "ALL NIPPON", "Japan", "Y");
//check constructor
assertTrue(allNipponAirways.getID() == 324);
assertTrue(allNipponAirways.getName() == "All Nippon Airways");
assertTrue(allNipponAirways.getAlias() == "ANA All Nippon Airways");
assertTrue(allNipponAirways.getIATA() == "NH");
assertTrue(allNipponAirways.getICAO() == "ANA");
assertTrue(allNipponAirways.getCallSign() == "ALL NIPPON");
assertTrue(allNipponAirways.getCountry() == "Japan");
assertTrue(allNipponAirways.getActive() == "Y");
assertTrue(allNipponAirways.getID() == 324); //test id
assertTrue(allNipponAirways.getName() == "All Nippon Airways");//test name
assertTrue(allNipponAirways.getAlias() == "ANA All Nippon Airways");// test alias
assertTrue(allNipponAirways.getIATA() == "NH");// test iata
assertTrue(allNipponAirways.getICAO() == "ANA");// test icao
assertTrue(allNipponAirways.getCallSign() == "ALL NIPPON");// test call sign
assertTrue(allNipponAirways.getCountry() == "Japan");// test country
assertTrue(allNipponAirways.getActive() == "Y");// get active
//check set
allNipponAirways.setID(322);//ID
assertTrue(allNipponAirways.getID() == 322);
@ -76,6 +79,34 @@ public class AirlineTest extends TestCase {
assertTrue(allNipponAirways.getActive() == "N");
//TODO Add Route adding setting and getting.
//try add one route and test
Route route1 = new Route("NH", "Japan", "New Zealand", "JSQ", 3, "Boeing 707");
allNipponAirways.addRoutes(route1);
assertEquals(allNipponAirways.getRoutes().get(0), route1);//list was originally empty now its first member should be route 1
assertTrue(allNipponAirways.getRoutes().size() == 1);//list was originally empty now it should have 1 member
Route route2 = new Route("NH", "Japan", "Donald-Trumps Backyard", "KAMIKAZE ATTACK", 0, "Warplane 101");
//test set routes
//adding routes
ArrayList<Route> routes = new ArrayList<Route>();
routes.add(route1);
routes.add(route2);
allNipponAirways.setRoutes(routes);//set routes test
assertTrue(allNipponAirways.getRoutes().size() == 2);
assertEquals(allNipponAirways.getRoutes().get(0), route1);
assertEquals(allNipponAirways.getRoutes().get(1), route2);
//test add arraylist of routes. this also makes sure that the above
//code doesn't loop infinitily incase the object pointer has been set
//instead of cloning the data.
allNipponAirways.addRoutes(routes);
assertTrue(allNipponAirways.getRoutes().size() == 4);
assertEquals(allNipponAirways.getRoutes().get(0), route1);
assertEquals(allNipponAirways.getRoutes().get(1), route2);
assertEquals(allNipponAirways.getRoutes().get(2), route1);
assertEquals(allNipponAirways.getRoutes().get(3), route2);
}
public void testToString(){

Loading…
Cancel
Save