### Question:
OrderService implements OrderItemSaver { public String getNextSRVNumber() { String facilityCode = userService.getRegisteredUser().getFacilityCode(); List<Order> orders = all(); return getFormattedSRVNumber(facilityCode, orders.size()); }  List<OrderReason> syncOrderReasons(); List<OrderType> allOrderTypes(); List<OrderReason> allOrderReasons(); List<Order> all(); String getNextSRVNumber(); void saveOrder(final Order order); @Override void saveOrderItem(final OrderItem orderItem); void syncOrderTypes();  }### Answer:
@Test public void shouldGenerateSRVNumber() throws Exception { assertThat(orderService.getNextSRVNumber(), is("AU-0001")); OrderType type = new OrderType("routine"); orderTypeDao.createOrUpdate(type); final Order order = new Order("AU-0001"); order.setOrderType(type); dbUtil.withDao(application, Order.class, new DbUtil.Operation<Order, Order>() { @Override public Order operate(Dao<Order, String> dao) throws SQLException { dao.create(order); return order; } }); assertThat(orderService.getNextSRVNumber(), is("AU-0002")); }