diff options
author | subtly <subtly@users.noreply.github.com> | 2015-02-05 09:18:52 +0800 |
---|---|---|
committer | subtly <subtly@users.noreply.github.com> | 2015-02-05 09:18:52 +0800 |
commit | 74e509acd282f658a4e2d6f7ae0f4175474304ef (patch) | |
tree | 8e053afecae1ea247cd5db795a5db795960e15ec | |
parent | 952e25ac674d2a1d1afd0dbd197a0a8979a6dd64 (diff) | |
parent | 969366f46b83c57461fc5399fff76bd07738b6f2 (diff) | |
download | dexon-solidity-74e509acd282f658a4e2d6f7ae0f4175474304ef.tar dexon-solidity-74e509acd282f658a4e2d6f7ae0f4175474304ef.tar.gz dexon-solidity-74e509acd282f658a4e2d6f7ae0f4175474304ef.tar.bz2 dexon-solidity-74e509acd282f658a4e2d6f7ae0f4175474304ef.tar.lz dexon-solidity-74e509acd282f658a4e2d6f7ae0f4175474304ef.tar.xz dexon-solidity-74e509acd282f658a4e2d6f7ae0f4175474304ef.tar.zst dexon-solidity-74e509acd282f658a4e2d6f7ae0f4175474304ef.zip |
Merge branch 'develop' into p2p
Conflicts:
libp2p/Host.cpp
-rw-r--r-- | SolidityNameAndTypeResolution.cpp | 36 | ||||
-rw-r--r-- | commonjs.cpp | 5 | ||||
-rw-r--r-- | fork.cpp | 2 | ||||
-rw-r--r-- | genesis.cpp | 8 | ||||
-rw-r--r-- | jsonrpc.cpp | 2 | ||||
-rw-r--r-- | state.cpp | 2 | ||||
-rw-r--r-- | stateOriginal.cpp | 4 | ||||
-rw-r--r-- | txTest.cpp | 2 |
8 files changed, 49 insertions, 12 deletions
diff --git a/SolidityNameAndTypeResolution.cpp b/SolidityNameAndTypeResolution.cpp index 1a087592..ae6c374b 100644 --- a/SolidityNameAndTypeResolution.cpp +++ b/SolidityNameAndTypeResolution.cpp @@ -868,6 +868,42 @@ BOOST_AUTO_TEST_CASE(access_to_protected_state_variable) BOOST_CHECK_NO_THROW(parseTextAndResolveNames(text)); } +BOOST_AUTO_TEST_CASE(error_count_in_named_args) +{ + char const* sourceCode = "contract test {\n" + " function a(uint a, uint b) returns (uint r) { r = a + b; }\n" + " function b() returns (uint r) { r = a({a: 1}); }\n" + "}\n"; + BOOST_CHECK_THROW(parseTextAndResolveNames(sourceCode), TypeError); +} + +BOOST_AUTO_TEST_CASE(empty_in_named_args) +{ + char const* sourceCode = "contract test {\n" + " function a(uint a, uint b) returns (uint r) { r = a + b; }\n" + " function b() returns (uint r) { r = a({}); }\n" + "}\n"; + BOOST_CHECK_THROW(parseTextAndResolveNames(sourceCode), TypeError); +} + +BOOST_AUTO_TEST_CASE(duplicate_parameter_names_in_named_args) +{ + char const* sourceCode = "contract test {\n" + " function a(uint a, uint b) returns (uint r) { r = a + b; }\n" + " function b() returns (uint r) { r = a({a: 1, a: 2}); }\n" + "}\n"; + BOOST_CHECK_THROW(parseTextAndResolveNames(sourceCode), TypeError); +} + +BOOST_AUTO_TEST_CASE(invalid_parameter_names_in_named_args) +{ + char const* sourceCode = "contract test {\n" + " function a(uint a, uint b) returns (uint r) { r = a + b; }\n" + " function b() returns (uint r) { r = a({a: 1, c: 2}); }\n" + "}\n"; + BOOST_CHECK_THROW(parseTextAndResolveNames(sourceCode), TypeError); +} + BOOST_AUTO_TEST_SUITE_END() } diff --git a/commonjs.cpp b/commonjs.cpp index 860b713d..041a14f6 100644 --- a/commonjs.cpp +++ b/commonjs.cpp @@ -20,7 +20,8 @@ */ #include <boost/test/unit_test.hpp> -#include <libdevcore/CommonJS.h> +#include <libdevcore/Log.h> +#include <libethcore/CommonJS.h> BOOST_AUTO_TEST_SUITE(commonjs) using namespace std; @@ -41,7 +42,7 @@ BOOST_AUTO_TEST_CASE(jsToAddress) cnote << "Testing jsToPublic..."; KeyPair kp = KeyPair::create(); string string = toJS(kp.address()); - Address address = dev::jsToAddress(string); + Address address = dev::eth::jsToAddress(string); BOOST_CHECK_EQUAL(kp.address(), address); } @@ -23,7 +23,7 @@ #include <boost/test/unit_test.hpp> #include <boost/filesystem/operations.hpp> #include <libethereum/Client.h> -#include <libethereum/BlockChain.h> +#include <libethereum/CanonBlockChain.h> #include <libethereum/EthereumHost.h> #include "TestHelper.h" using namespace std; diff --git a/genesis.cpp b/genesis.cpp index 8cdb8402..7ca741ee 100644 --- a/genesis.cpp +++ b/genesis.cpp @@ -24,7 +24,7 @@ #include <random> #include "JsonSpiritHeaders.h" #include <libdevcore/CommonIO.h> -#include <libethereum/BlockChain.h> +#include <libethereum/CanonBlockChain.h> #include <boost/test/unit_test.hpp> #include "TestHelper.h" @@ -58,9 +58,9 @@ BOOST_AUTO_TEST_CASE(genesis_tests) js::mObject o = v.get_obj(); - BOOST_CHECK_EQUAL(BlockChain::genesis().stateRoot, h256(o["genesis_state_root"].get_str())); - BOOST_CHECK_EQUAL(toHex(BlockChain::createGenesisBlock()), toHex(fromHex(o["genesis_rlp_hex"].get_str()))); - BOOST_CHECK_EQUAL(BlockInfo::headerHash(BlockChain::createGenesisBlock()), h256(o["genesis_hash"].get_str())); + BOOST_CHECK_EQUAL(CanonBlockChain::genesis().stateRoot, h256(o["genesis_state_root"].get_str())); + BOOST_CHECK_EQUAL(toHex(CanonBlockChain::createGenesisBlock()), toHex(fromHex(o["genesis_rlp_hex"].get_str()))); + BOOST_CHECK_EQUAL(BlockInfo::headerHash(CanonBlockChain::createGenesisBlock()), h256(o["genesis_hash"].get_str())); } BOOST_AUTO_TEST_SUITE_END() diff --git a/jsonrpc.cpp b/jsonrpc.cpp index 1f0a466b..eaa9edc4 100644 --- a/jsonrpc.cpp +++ b/jsonrpc.cpp @@ -28,7 +28,7 @@ #include <boost/lexical_cast.hpp> #include <libdevcore/Log.h> #include <libdevcore/CommonIO.h> -#include <libdevcore/CommonJS.h> +#include <libethcore/CommonJS.h> #include <libwebthree/WebThree.h> #include <libweb3jsonrpc/WebThreeStubServer.h> #include <jsonrpccpp/server/connectors/httpserver.h> @@ -24,7 +24,7 @@ #include <boost/test/unit_test.hpp> #include "JsonSpiritHeaders.h" #include <libdevcore/CommonIO.h> -#include <libethereum/BlockChain.h> +#include <libethereum/CanonBlockChain.h> #include <libethereum/State.h> #include <libethereum/ExtVM.h> #include <libethereum/Defaults.h> diff --git a/stateOriginal.cpp b/stateOriginal.cpp index b1a7c0d8..65ff5084 100644 --- a/stateOriginal.cpp +++ b/stateOriginal.cpp @@ -22,7 +22,7 @@ #include <boost/filesystem/operations.hpp> #include <secp256k1/secp256k1.h> -#include <libethereum/BlockChain.h> +#include <libethereum/CanonBlockChain.h> #include <libethereum/State.h> #include <libethereum/Defaults.h> using namespace std; @@ -40,7 +40,7 @@ int stateTest() Defaults::setDBPath(boost::filesystem::temp_directory_path().string()); OverlayDB stateDB = State::openDB(); - BlockChain bc; + CanonBlockChain bc; State s(myMiner.address(), stateDB); cout << bc; @@ -23,7 +23,7 @@ #include <boost/test/unit_test.hpp> #include <boost/filesystem/operations.hpp> #include <libethereum/Client.h> -#include <libethereum/BlockChain.h> +#include <libethereum/CanonBlockChain.h> #include <libethereum/EthereumHost.h> #include "TestHelper.h" using namespace std; |