Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package test;
- import static org.junit.Assert.*;
- import java.text.ParseException;
- import java.text.SimpleDateFormat;
- import org.junit.Before;
- import org.junit.Test;
- import car.CarException;
- import car.MyNewCar;
- import car.MyNewCar.CarMaker;
- import car.CarException.ErrorCode;
- import car.TripException;
- public class MyNewCarTest {
- @Test
- public void doesSaveCar() throws CarException {
- MyNewCar car = new MyNewCar("Volvo", 50.0);
- assertEquals(car.getCarMaker(), CarMaker.values()[4]);
- assertEquals(car.getCapacity(), 50.0, 1e-15);
- assertEquals(car.getTrips().size(), 0);
- }
- @Test
- public void doesUpdateCar() throws CarException {
- MyNewCar car = new MyNewCar("Volvo", 50.0);
- car.setMaker("Ford");
- car.setCapacity(30.0);
- assertEquals(car.getCarMaker(), CarMaker.values()[0]);
- assertEquals(car.getCapacity(), 30.0, 1e-15);
- }
- @Test
- public void doesNotSaveCarWithInvalidMaker() {
- try {
- MyNewCar car = new MyNewCar("Audi", 50.0);
- } catch (CarException e) {
- assertEquals(e.getErrorCode(), ErrorCode.INVALID_CAR_MAKER);
- }
- }
- @Test
- public void doesNotSaveCarWithInvalidCapacity() {
- try {
- MyNewCar car = new MyNewCar("Volvo", -10.0);
- } catch (CarException e) {
- assertEquals(e.getErrorCode(), ErrorCode.INVALID_TANK_CAPACITY);
- }
- }
- @Test
- public void doesTankCar() throws CarException {
- MyNewCar car = new MyNewCar("Volvo", 50.0);
- car.tankGas(20.0);
- assertEquals(car.getCurrentFuel(), 20.0, 1e-15);
- }
- @Test
- public void doesNotTankCarWhenGasExceedsCapacity() {
- try {
- MyNewCar car = new MyNewCar("Volvo", 50.0);
- car.tankGas(70.0);
- } catch (CarException e) {
- assertEquals(e.getErrorCode(), ErrorCode.CAPACITY_EXCEEDED);
- }
- }
- @Test
- public void doesNotTankCarWhenGasOfNegativeValue() {
- try {
- MyNewCar car = new MyNewCar("Volvo", 50.0);
- car.tankGas(-10.0);
- } catch (CarException e) {
- assertEquals(e.getErrorCode(), ErrorCode.GAS_VALUE_NEGATIVE);
- }
- }
- @Test
- public void doesMakeTrips() throws CarException, ParseException, TripException {
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
- MyNewCar car = new MyNewCar("Volvo", 50.0);
- car.tankGas(50.0);
- car.makeTrip(sdf.parse("2014-11-11"), 100, 7.0);
- car.makeTrip(sdf.parse("2014-11-11"), 200, 14.0);
- assertEquals(car.totalDistance(), 300, 1e-15);
- assertEquals(car.totalGasConsumed(), 21.0, 1e-15);
- }
- @Test
- public void getDistanceByDate() throws CarException, ParseException, TripException {
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
- MyNewCar car = new MyNewCar("Volvo", 50.0);
- car.tankGas(50.0);
- car.makeTrip(sdf.parse("2014-11-11"), 100, 7.0);
- car.makeTrip(sdf.parse("2014-11-12"), 200, 14.0);
- assertEquals(car.totalDistance(sdf.parse("2014-11-11")), 100, 1e-15);
- }
- @Test
- public void getDistanceByDateRange() throws CarException, ParseException, TripException {
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
- MyNewCar car = new MyNewCar("Volvo", 50.0);
- car.tankGas(50.0);
- car.makeTrip(sdf.parse("2014-11-11"), 100, 7.0);
- car.makeTrip(sdf.parse("2014-11-12"), 200, 14.0);
- car.makeTrip(sdf.parse("2014-11-14"), 300, 14.0);
- assertEquals(car.totalDistance(sdf.parse("2014-11-10"), sdf.parse("2014-11-13")), 300, 1e-15);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement