Upload files to 'assignment5/Question2'
This commit is contained in:
60
assignment5/Question2/StartGrading.java
Normal file
60
assignment5/Question2/StartGrading.java
Normal file
@@ -0,0 +1,60 @@
|
||||
//Q2
|
||||
public class StartGrading {
|
||||
public static void testVehicle() {
|
||||
//The Vehicle class is abstract. We cannot create objects from this class. Therefore, we cannot test anything
|
||||
}
|
||||
|
||||
|
||||
public static void testCar() {
|
||||
// test case for constructors
|
||||
try {
|
||||
// exception
|
||||
Car c1 = new Car(70, 80);
|
||||
} catch (BadSpeedSetting e) {
|
||||
System.out.println(e.getMessage().equals("Speed cannot be greater than speed limit!"));
|
||||
}
|
||||
try {
|
||||
// exception
|
||||
Car c2 = new Car(70, -10);
|
||||
} catch (BadSpeedSetting e) {
|
||||
System.out.println(e.getMessage().equals("Speed cannot be negative!"));
|
||||
}
|
||||
// test case for accelerate, canFly and getSpeed methods
|
||||
try {
|
||||
Car c3 = new Car(100, 80);
|
||||
// test the canFly method
|
||||
System.out.println(c3.canFly() == false);
|
||||
c3.accelerate(10);
|
||||
System.out.println(c3.getSpeed() == 90);
|
||||
// test the accelerate with positive amount
|
||||
c3.accelerate(-20);
|
||||
System.out.println(c3.getSpeed() == 70);
|
||||
// test the accelerate with negative amount
|
||||
c3.accelerate(35);
|
||||
// exception
|
||||
} catch (BadSpeedSetting e) {
|
||||
System.out.println("BUG! THIS MUST NEVER HAPPEN!");
|
||||
} catch (ExceedSpeedLimit e) {
|
||||
System.out
|
||||
.println(e.getMessage().equals("Current speed is 70. Accelerate 35 will exceed the speed limit!"));
|
||||
} catch (NotEnoughSpeed e) {
|
||||
System.out.println("BUG! THIS MUST NEVER HAPPEN!");
|
||||
}
|
||||
try {
|
||||
Car c4 = new Car(100, 80);
|
||||
// exception
|
||||
c4.accelerate(-90);
|
||||
} catch (BadSpeedSetting e) {
|
||||
System.out.println("BUG! THIS MUST NEVER HAPPEN!");
|
||||
} catch (ExceedSpeedLimit e) {
|
||||
System.out.println("BUG! THIS MUST NEVER HAPPEN!");
|
||||
} catch (NotEnoughSpeed e) {
|
||||
System.out.println(e.getMessage().equals("Current speed is " + 80 + ", not enough speed to decelerate!"));
|
||||
}
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
Vehicle.testVehicle();
|
||||
Car.testCar();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user