From f8914c6b281f398d6084f10708233bf79d633ef0 Mon Sep 17 00:00:00 2001 From: Rhett Aultman Date: Fri, 16 Dec 2016 07:54:18 -0800 Subject: Fix contract lookup in tests The fully-qualified name of a contract with no source unit is : instead of just , so the test system needed to be adjusted accordingly. --- test/libsolidity/SolidityABIJSON.cpp | 4 ++-- test/libsolidity/SolidityExecutionFramework.h | 6 +++++- 2 files changed, 7 insertions(+), 3 deletions(-) (limited to 'test/libsolidity') diff --git a/test/libsolidity/SolidityABIJSON.cpp b/test/libsolidity/SolidityABIJSON.cpp index 043d74ed..a54e9b7e 100644 --- a/test/libsolidity/SolidityABIJSON.cpp +++ b/test/libsolidity/SolidityABIJSON.cpp @@ -762,8 +762,8 @@ BOOST_AUTO_TEST_CASE(metadata_stamp) } )"; BOOST_REQUIRE(m_compilerStack.compile(std::string(sourceCode))); - bytes const& bytecode = m_compilerStack.runtimeObject("test").bytecode; - bytes hash = dev::swarmHash(m_compilerStack.onChainMetadata("test")).asBytes(); + bytes const& bytecode = m_compilerStack.runtimeObject(":test").bytecode; + bytes hash = dev::swarmHash(m_compilerStack.onChainMetadata(":test")).asBytes(); BOOST_REQUIRE(hash.size() == 32); BOOST_REQUIRE(bytecode.size() >= 2); size_t metadataCBORSize = (size_t(bytecode.end()[-2]) << 8) + size_t(bytecode.end()[-1]); diff --git a/test/libsolidity/SolidityExecutionFramework.h b/test/libsolidity/SolidityExecutionFramework.h index 03e3a881..00e8330c 100644 --- a/test/libsolidity/SolidityExecutionFramework.h +++ b/test/libsolidity/SolidityExecutionFramework.h @@ -67,7 +67,11 @@ public: ); BOOST_ERROR("Compiling contract failed"); } - eth::LinkerObject obj = m_compiler.object(_contractName); + eth::LinkerObject obj; + if (_contractName.empty()) + obj = m_compiler.object(_contractName); + else + obj = m_compiler.object(":" + _contractName); BOOST_REQUIRE(obj.linkReferences.empty()); sendMessage(obj.bytecode + _arguments, true, _value); return m_output; -- cgit