mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
web3.sha3 test
This commit is contained in:
parent
4f7bb09821
commit
2dfe5b1517
21
jsonrpc.cpp
21
jsonrpc.cpp
@ -22,7 +22,7 @@
|
|||||||
// @debris disabled as tests fail with:
|
// @debris disabled as tests fail with:
|
||||||
// unknown location(0): fatal error in "jsonrpc_setMining": std::exception: Exception -32003 : Client connector error: : libcurl error: 28
|
// unknown location(0): fatal error in "jsonrpc_setMining": std::exception: Exception -32003 : Client connector error: : libcurl error: 28
|
||||||
// /home/gav/Eth/cpp-ethereum/test/jsonrpc.cpp(169): last checkpoint
|
// /home/gav/Eth/cpp-ethereum/test/jsonrpc.cpp(169): last checkpoint
|
||||||
#if ETH_JSONRPC && 0
|
#if ETH_JSONRPC && 1
|
||||||
|
|
||||||
#include <boost/test/unit_test.hpp>
|
#include <boost/test/unit_test.hpp>
|
||||||
#include <boost/lexical_cast.hpp>
|
#include <boost/lexical_cast.hpp>
|
||||||
@ -74,6 +74,13 @@ struct Setup
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
string fromAscii(string _s)
|
||||||
|
{
|
||||||
|
bytes b = asBytes(_s);
|
||||||
|
b.resize(max<unsigned>(b.size(), 32));
|
||||||
|
return "0x" + toHex(b);
|
||||||
|
}
|
||||||
|
|
||||||
BOOST_FIXTURE_TEST_SUITE(environment, Setup)
|
BOOST_FIXTURE_TEST_SUITE(environment, Setup)
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(jsonrpc_defaultBlock)
|
BOOST_AUTO_TEST_CASE(jsonrpc_defaultBlock)
|
||||||
@ -312,6 +319,18 @@ BOOST_AUTO_TEST_CASE(contract_storage)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
BOOST_AUTO_TEST_CASE(sha3)
|
||||||
|
{
|
||||||
|
cnote << "Testing jsonrpc sha3...";
|
||||||
|
string testString = "multiply(uint256)";
|
||||||
|
h256 expected = dev::sha3(testString);
|
||||||
|
|
||||||
|
auto hexValue = fromAscii(testString);
|
||||||
|
string result = jsonrpcClient->web3_sha3(hexValue);
|
||||||
|
BOOST_CHECK_EQUAL(toJS(expected), result);
|
||||||
|
BOOST_CHECK_EQUAL("0xc6888fa159d67f77c2f3d7a402e199802766bd7e8d4d1ecd2274fc920265d56a", result);
|
||||||
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_SUITE_END()
|
BOOST_AUTO_TEST_SUITE_END()
|
||||||
BOOST_AUTO_TEST_SUITE_END()
|
BOOST_AUTO_TEST_SUITE_END()
|
||||||
|
|
||||||
|
@ -12,6 +12,16 @@ class WebThreeStubClient : public jsonrpc::Client
|
|||||||
public:
|
public:
|
||||||
WebThreeStubClient(jsonrpc::IClientConnector &conn) : jsonrpc::Client(conn) {}
|
WebThreeStubClient(jsonrpc::IClientConnector &conn) : jsonrpc::Client(conn) {}
|
||||||
|
|
||||||
|
std::string web3_sha3(const std::string& param1) throw (jsonrpc::JsonRpcException)
|
||||||
|
{
|
||||||
|
Json::Value p;
|
||||||
|
p.append(param1);
|
||||||
|
Json::Value result = this->CallMethod("web3_sha3",p);
|
||||||
|
if (result.isString())
|
||||||
|
return result.asString();
|
||||||
|
else
|
||||||
|
throw jsonrpc::JsonRpcException(jsonrpc::Errors::ERROR_CLIENT_INVALID_RESPONSE, result.toStyledString());
|
||||||
|
}
|
||||||
std::string eth_coinbase() throw (jsonrpc::JsonRpcException)
|
std::string eth_coinbase() throw (jsonrpc::JsonRpcException)
|
||||||
{
|
{
|
||||||
Json::Value p;
|
Json::Value p;
|
||||||
|
Loading…
Reference in New Issue
Block a user