@Test
public void invokingWithParamsShouldProduceTheCorrectRequest() throws IOException {

    setUpWireMockForCall("invokefunction", "invokefunction_transfer_neo.json",
            NEO_TOKEN_SCRIPT_HASH.toString(), NEP5_TRANSFER,
            account1.getScriptHash().toString(), recipient.toString(), "5"); // the params
    NeoInvokeFunction i = new NeoToken(neow)
            .callInvokeFunction(NEP5_TRANSFER,
                    Arrays.asList(
                            ContractParameter.hash160(account1.getScriptHash()),
                            ContractParameter.hash160(recipient),
                            ContractParameter.integer(5)
                    )
            );
    // The script that's in the `invokefunction_transfer_neo.json` response file.
    String scriptInResponse =
            "150c14c8172ea3b405bf8bfc57c33a8410116b843e13df0c14941343239213fa0e765f1027ce742f48db779a9613c00c087472616e736665720c1425059ecb4878d3a875f91c51ceded330d4575fde41627d5b5238";
    assertThat(i.getResult().getScript(), is(scriptInResponse));
}