### Question:
AskOrderServiceImpl implements OrderService<AskOrder, ColoredCoinsAskOrderPlacement> { @Override public void addOrder(Transaction transaction, ColoredCoinsAskOrderPlacement attachment) { final AskOrder order = new AskOrder(transaction, attachment, blockchain.getHeight()); log.trace(">> addOrder() askOrder={}", order); askOrderTable.insert(order); } AskOrderServiceImpl(
        final DatabaseManager databaseManager,
        final AskOrderTable orderAskTable,
        final Blockchain blockchain,
        final IteratorToStreamConverter<AskOrder> converter
    ); @Inject  AskOrderServiceImpl(
        final DatabaseManager databaseManager,
        final AskOrderTable orderAskTable,
        final Blockchain blockchain
    ); @Override int getCount(); @Override AskOrder getOrder(long orderId); @Override Stream<AskOrder> getAll(int from, int to); @Override Stream<AskOrder> getOrdersByAccount(long accountId, int from, int to); @Override Stream<AskOrder> getOrdersByAccountAsset(final long accountId, final long assetId, int from, int to); @Override Stream<AskOrder> getSortedOrders(long assetId, int from, int to); @Override AskOrder getNextOrder(long assetId); @Override void addOrder(Transaction transaction, ColoredCoinsAskOrderPlacement attachment); @Override void removeOrder(long orderId); @Override void updateQuantityATU(long quantityATU, AskOrder orderAsk);  }### Answer:
@Test void shouldAddOrder() { final Transaction transaction = mock(Transaction.class); final ColoredCoinsAskOrderPlacement attachment = mock(ColoredCoinsAskOrderPlacement.class); final long txId = 10L; when(transaction.getId()).thenReturn(txId); final int height = 1040; when(blockchain.getHeight()).thenReturn(height); final AskOrder order = new AskOrder(transaction, attachment, blockchain.getHeight()); orderService.addOrder(transaction, attachment); verify(askOrderTable).insert(eq(order)); }