Advertisement
Guest User

Untitled

a guest
Nov 27th, 2014
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.29 KB | None | 0 0
  1. package test;
  2.  
  3. import static org.junit.Assert.*;
  4.  
  5. import java.text.ParseException;
  6. import java.text.SimpleDateFormat;
  7.  
  8. import org.junit.Before;
  9. import org.junit.Test;
  10.  
  11. import car.CarException;
  12. import car.MyNewCar;
  13. import car.MyNewCar.CarMaker;
  14. import car.CarException.ErrorCode;
  15. import car.TripException;
  16.  
  17. public class MyNewCarTest {
  18.  
  19.     @Test
  20.     public void doesSaveCar() throws CarException {
  21.         MyNewCar car = new MyNewCar("Volvo", 50.0);
  22.         assertEquals(car.getCarMaker(), CarMaker.values()[4]);
  23.         assertEquals(car.getCapacity(), 50.0, 1e-15);
  24.         assertEquals(car.getTrips().size(), 0);
  25.     }
  26.    
  27.     @Test
  28.     public void doesUpdateCar() throws CarException {
  29.         MyNewCar car = new MyNewCar("Volvo", 50.0);
  30.         car.setMaker("Ford");
  31.         car.setCapacity(30.0);
  32.         assertEquals(car.getCarMaker(), CarMaker.values()[0]);
  33.         assertEquals(car.getCapacity(), 30.0, 1e-15);
  34.     }
  35.    
  36.     @Test
  37.     public void doesNotSaveCarWithInvalidMaker() {
  38.         try {
  39.             MyNewCar car = new MyNewCar("Audi", 50.0);
  40.         } catch (CarException e) {
  41.             assertEquals(e.getErrorCode(), ErrorCode.INVALID_CAR_MAKER);
  42.         }
  43.     }
  44.    
  45.     @Test
  46.     public void doesNotSaveCarWithInvalidCapacity() {
  47.         try {
  48.             MyNewCar car = new MyNewCar("Volvo", -10.0);
  49.         } catch (CarException e) {
  50.             assertEquals(e.getErrorCode(), ErrorCode.INVALID_TANK_CAPACITY);
  51.         }
  52.     }
  53.    
  54.     @Test
  55.     public void doesTankCar() throws CarException {
  56.         MyNewCar car = new MyNewCar("Volvo", 50.0);
  57.         car.tankGas(20.0);
  58.         assertEquals(car.getCurrentFuel(), 20.0, 1e-15);
  59.     }
  60.    
  61.     @Test
  62.     public void doesNotTankCarWhenGasExceedsCapacity() {
  63.         try {
  64.             MyNewCar car = new MyNewCar("Volvo", 50.0);
  65.             car.tankGas(70.0);
  66.         } catch (CarException e) {
  67.             assertEquals(e.getErrorCode(), ErrorCode.CAPACITY_EXCEEDED);
  68.         }
  69.     }
  70.    
  71.     @Test
  72.     public void doesNotTankCarWhenGasOfNegativeValue() {
  73.         try {
  74.             MyNewCar car = new MyNewCar("Volvo", 50.0);
  75.             car.tankGas(-10.0);
  76.         } catch (CarException e) {
  77.             assertEquals(e.getErrorCode(), ErrorCode.GAS_VALUE_NEGATIVE);
  78.         }
  79.     }
  80.    
  81.     @Test
  82.     public void doesMakeTrips() throws CarException, ParseException, TripException {
  83.         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  84.         MyNewCar car = new MyNewCar("Volvo", 50.0);
  85.         car.tankGas(50.0);
  86.         car.makeTrip(sdf.parse("2014-11-11"), 100, 7.0);
  87.         car.makeTrip(sdf.parse("2014-11-11"), 200, 14.0);
  88.         assertEquals(car.totalDistance(), 300, 1e-15);
  89.         assertEquals(car.totalGasConsumed(), 21.0, 1e-15);
  90.     }
  91.    
  92.     @Test
  93.     public void getDistanceByDate() throws CarException, ParseException, TripException {
  94.         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  95.         MyNewCar car = new MyNewCar("Volvo", 50.0);
  96.         car.tankGas(50.0);
  97.         car.makeTrip(sdf.parse("2014-11-11"), 100, 7.0);
  98.         car.makeTrip(sdf.parse("2014-11-12"), 200, 14.0);
  99.         assertEquals(car.totalDistance(sdf.parse("2014-11-11")), 100, 1e-15);
  100.     }
  101.    
  102.     @Test
  103.     public void getDistanceByDateRange() throws CarException, ParseException, TripException {
  104.         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  105.         MyNewCar car = new MyNewCar("Volvo", 50.0);
  106.         car.tankGas(50.0);
  107.         car.makeTrip(sdf.parse("2014-11-11"), 100, 7.0);
  108.         car.makeTrip(sdf.parse("2014-11-12"), 200, 14.0);
  109.         car.makeTrip(sdf.parse("2014-11-14"), 300, 14.0);
  110.         assertEquals(car.totalDistance(sdf.parse("2014-11-10"), sdf.parse("2014-11-13")), 300, 1e-15);
  111.     }
  112.    
  113. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement