@Test
public void testTransferFromSpecificAccounts_firstAccountHasNoBalance() throws IOException {

    setUpWireMockForCall("invokescript", "invokescript_transfer.json");
    setUpWireMockForGetBlockCount(1000);
    setUpWireMockForInvokeFunction("decimals", "invokefunction_decimals.json");
    setUpWireMockForBalanceOf(account2.getScriptHash(), "invokefunction_balanceOf_0.json");
    setUpWireMockForBalanceOf(account3.getScriptHash(), "invokefunction_balanceOf_3.json");
    byte[] expectedScript = new ScriptBuilder().contractCall(NEO_TOKEN_SCRIPT_HASH,
            NEP5_TRANSFER, Arrays.asList(
                    ContractParameter.hash160(account3.getScriptHash()),
                    ContractParameter.hash160(RECIPIENT_SCRIPT_HASH),
                    ContractParameter.integer(1))).toArray();
    Wallet w = Wallet.withAccounts(account1, account2, account3);
    TransactionBuilder b = neoToken.buildMultiTransferInvocation(w, RECIPIENT_SCRIPT_HASH,
            new BigDecimal("1"), Arrays.asList(account2, account3));
    assertThat(b.getScript(), is(expectedScript));
}