@Override public Fruit getFruitById(int id) { return database.getFruitById(id); } }
private DatabaseImpl() { initFruits(); initCheeses(); initSweets(); }
@Override public Cheese getCheeseById(int id) { return database.getCheeseById(id); } }
@Test(expected = IndexOutOfBoundsException.class) public void whenWrongIdForSweetThrowExpectedException() { database.getSweetById(123); } }
@Test(expected = IndexOutOfBoundsException.class) public void whenWrongIdForCheeseThrowExpectedException() { database.getCheeseById(-1); }
@Test(expected = IndexOutOfBoundsException.class) public void whenWrongIdForFruitThrowExpectedException() { database.getFruitById(16); }
public static DatabaseImpl getInstance() { if (DatabaseImpl.INSTANCE == null) { DatabaseImpl.INSTANCE = new DatabaseImpl(); } return DatabaseImpl.INSTANCE; }
@Override public Sweet getSweetById(int id) { return database.getSweetById(id); } }
@Before public void setUp() { database = DatabaseImpl.getInstance(); }
@Test public void whenCorrectIdGetSweetFromDatabase() { assertNotNull(database.getSweetById(id)); }
@Test public void whenCorrectIdGetCheeseFromDatabase() { assertNotNull(database.getCheeseById(id)); }
@Test public void whenCorrectIdGetFruitFromDatabase() { assertNotNull(database.getFruitById(id)); }