88af502 test: Add createrawtransaction functional tests (João Barbosa)
27c6199 test: Add multidict to support dictionary with duplicate key (laanwj) (João Barbosa)
320669a rpc: Validate replaceable type in createrawtransaction (João Barbosa)
Pull request description:
This was motivated by the `Invalid parameter, duplicated address` test.
Credit to @laanwj for `multidict` implementation.
Tree-SHA512: a87139ae11004b73b467db1e8a072b75e23a0622b173a5668eed383b3575d8abc709817ddd2dfdc53f55afc90750fb61331199ad5de38c1ef6d482f2bc220f74
assert_raises_rpc_error(-8,"Invalid parameter, vout must be positive",self.nodes[0].createrawtransaction,[{'txid':txid,'vout':-1}],{})
assert_raises_rpc_error(-8,"Invalid parameter, sequence number is out of range",self.nodes[0].createrawtransaction,[{'txid':txid,'vout':0,'sequence':-1}],{})
# Test `createrawtransaction` invalid `outputs`
address=self.nodes[0].getnewaddress()
assert_raises_rpc_error(-3,"Expected type object",self.nodes[0].createrawtransaction,[],'foo')
assert_raises_rpc_error(-8,"Data must be hexadecimal string",self.nodes[0].createrawtransaction,[],{'data':'foo'})