/** Example. */ @Test public void example() { double dblReserve = TankSize.RESERVE.size() * 2.0; // RESERVE size is set to 1600 FuelTank largeReserve = new FuelTank(dblReserve); FuelTank tripleReserve = new FuelTank(TankSize.RESERVE.multi(3)); FuelTank normalReserve = new FuelTank(TankSize.RESERVE); FuelTank miniTank = new FuelTank(2); // 2 Gallon tank FuelTank fiveGalTank = new FuelTank(5); FuelTank largeFuelTank = new FuelTank(TankSize.LARGE); Airplane smallPlane = new Airplane( new Random().nextInt(), Airline.AAL, largeFuelTank, AirplaneState.WAITINHANGAR, Airline.AAL.getHangar()); Airplane p1 = new Airplane(); p1.setId(1); p1.setOwner(Airline.getRandom()); p1.setTank(new FuelTank(new Random().nextGaussian() * 100)); p1.setHolder(p1.getOwner().getHangar()); /** * //How a taxi would be created Taxi t1 = new Taxi(new Random().nextInt(), null, new * FuelTank(TankSize.SMALL.multi((new Random().nextGaussian()*.5))), VehicleState.WAITING, * Taxiway.A); Taxi t2 = new Taxi(); t2.setId(2); t2.setOwner(Airport.AUS); t2.setTank(new * FuelTank(new Random().nextGaussian()*15)); t2.setHolder(t2.getOwner().chooseTaxiway()); */ /* * All Tanks are empty, you must either fill() or add(Fuel f) * Vehicles can refuel() although this fills to FULL not MAX */ try { tripleReserve.fill(); // Magically fill tank to capacity largeReserve.fill(tripleReserve); // Fill tank from source normalReserve.fill(tripleReserve); } catch (FuelTankException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { assert (tripleReserve.isEmpty()); assert (largeReserve.isFull()); assert (normalReserve.isFull()); } try { largeFuelTank.fill(normalReserve); fiveGalTank.fill(largeFuelTank); miniTank.fill(largeFuelTank); smallPlane.getTank().fill(largeFuelTank); } catch (FuelTankException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { assert (!largeFuelTank.isEmpty()); assert (!normalReserve.isEmpty()); assert (miniTank.isFull()); assert (smallPlane.getTank().isFull()); } }