Advertisement
Guest User

Untitled

a guest
Oct 24th, 2014
168
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.99 KB | None | 0 0
  1. package edu.ben.labs.lab5.test;
  2.  
  3. import static org.junit.Assert.*;
  4.  
  5. import org.junit.Test;
  6.  
  7. import edu.ben.labs.lab5.Cargo;
  8. import edu.ben.labs.lab5.CargoPlane;
  9. import edu.ben.labs.lab5.MyStack;
  10.  
  11. public class Lab5Test {
  12.     MyStack hangar = new MyStack();
  13.     MyStack notLoaded = new MyStack();
  14.  
  15.     @Test
  16.     public void testLoadCargo() {
  17.         CargoPlane airplane1 = new CargoPlane(1, 100, 100);
  18.         CargoPlane airplane2 = new CargoPlane(2, 50, 50);
  19.         hangar.push(airplane2);
  20.         hangar.push(airplane1);
  21.  
  22.         Cargo cargo1 = new Cargo();
  23.         cargo1.setTrackingNum(5);
  24.         cargo1.setCubicFeet(90);
  25.         cargo1.setWeight(90);
  26.         cargo1.setValue(100);
  27.  
  28.         Cargo cargo2 = new Cargo();
  29.         cargo2.setTrackingNum(10);
  30.         cargo2.setCubicFeet(40);
  31.         cargo2.setWeight(40);
  32.         cargo2.setValue(200);
  33.  
  34.         Cargo cargo3 = new Cargo();
  35.         cargo3.setTrackingNum(15);
  36.         cargo3.setCubicFeet(30);
  37.         cargo3.setWeight(30);
  38.         cargo3.setValue(50);
  39.  
  40.         cargoSortAndLoad(cargo1, hangar, notLoaded);
  41.         cargoSortAndLoad(cargo2, hangar, notLoaded);
  42.         cargoSortAndLoad(cargo3, hangar, notLoaded);
  43.  
  44.         airplane1 = (CargoPlane) hangar.pop();
  45.         assertFalse(airplane1.isEmpty());
  46.  
  47.         airplane2 = (CargoPlane) hangar.pop();
  48.         assertFalse(airplane2.isEmpty());
  49.  
  50.         assertFalse(notLoaded.isEmpty());
  51.  
  52.     }
  53.  
  54.     @Test
  55.     public void testSort() {
  56.         CargoPlane airplane1 = new CargoPlane(1, 100, 100);
  57.         Cargo check = new Cargo();
  58.  
  59.         Cargo cargo1 = new Cargo();
  60.         cargo1.setTrackingNum(1);
  61.         cargo1.setCubicFeet(50);
  62.         cargo1.setWeight(50);
  63.         cargo1.setValue(100);
  64.  
  65.         Cargo cargo2 = new Cargo();
  66.         cargo2.setTrackingNum(2);
  67.         cargo2.setCubicFeet(100);
  68.         cargo2.setWeight(100);
  69.         cargo2.setValue(200);
  70.  
  71.         Cargo cargo3 = new Cargo();
  72.         cargo3.setTrackingNum(3);
  73.         cargo3.setCubicFeet(25);
  74.         cargo3.setWeight(25);
  75.         cargo3.setValue(50);
  76.  
  77.         airplane1.sortAndLoadCargo(cargo1);
  78.         airplane1.sortAndLoadCargo(cargo2);
  79.         airplane1.sortAndLoadCargo(cargo3);
  80.  
  81.         check = (Cargo) airplane1.pop();
  82.         assertEquals(3, check.getTrackingNum());
  83.  
  84.         check = (Cargo) airplane1.pop();
  85.         assertEquals(1, check.getTrackingNum());
  86.  
  87.         check = (Cargo) airplane1.pop();
  88.         assertEquals(2, check.getTrackingNum());
  89.  
  90.     }
  91.  
  92.     public static void cargoSortAndLoad(Cargo cargo, MyStack hangar,
  93.             MyStack notLoaded) {
  94.         boolean didItLoad = false;
  95.         MyStack temp = new MyStack(hangar.getCapacity());
  96.  
  97.         while (!didItLoad && !hangar.isEmpty()) {
  98.             CargoPlane planeCheck = (CargoPlane) hangar.pop();
  99.             if ((cargo.getCubicFeet() < planeCheck.getCurrentSize())
  100.                     && (cargo.getWeight() < planeCheck.getCurrentWeight())
  101.                     && (planeCheck.getCurrentSize() > 0)
  102.                     && (planeCheck.getCurrentWeight() > 0)) {
  103.  
  104.                 planeCheck.sortAndLoadCargo(cargo);
  105.                 planeCheck.updateWeight(cargo.getWeight());
  106.                 planeCheck.updateSize(cargo.getCubicFeet());
  107.  
  108.                 hangar.push(planeCheck);
  109.                 didItLoad = true;
  110.             } else {
  111.                 temp.push(planeCheck);
  112.             }
  113.         }
  114.         while (!temp.isEmpty()) {
  115.             hangar.push(temp.pop());
  116.         }
  117.         if (!didItLoad) {
  118.             notLoaded.push(cargo);
  119.         }
  120.     }
  121.  
  122. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement