aboutsummaryrefslogtreecommitdiffstats
path: root/test/libsolidity/SolidityInterface.cpp
diff options
context:
space:
mode:
authorchriseth <c@ethdev.com>2015-10-07 00:29:05 +0800
committerchriseth <c@ethdev.com>2015-10-07 00:29:05 +0800
commitd35a4b849da427629334665cc1bb931a259adac9 (patch)
tree79b38a402947d3fe093e0573dee2c44d969a6c22 /test/libsolidity/SolidityInterface.cpp
parentc6e637677b724558f192eea19d10583da225b083 (diff)
parent55af63e4638d6552ff5fdb4f78fc582536daa43a (diff)
downloaddexon-solidity-d35a4b849da427629334665cc1bb931a259adac9.tar
dexon-solidity-d35a4b849da427629334665cc1bb931a259adac9.tar.gz
dexon-solidity-d35a4b849da427629334665cc1bb931a259adac9.tar.bz2
dexon-solidity-d35a4b849da427629334665cc1bb931a259adac9.tar.lz
dexon-solidity-d35a4b849da427629334665cc1bb931a259adac9.tar.xz
dexon-solidity-d35a4b849da427629334665cc1bb931a259adac9.tar.zst
dexon-solidity-d35a4b849da427629334665cc1bb931a259adac9.zip
Merge pull request #117 from chriseth/internalTypesForLibrary
Internal types for library
Diffstat (limited to 'test/libsolidity/SolidityInterface.cpp')
-rw-r--r--test/libsolidity/SolidityInterface.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/test/libsolidity/SolidityInterface.cpp b/test/libsolidity/SolidityInterface.cpp
index d77bccbd..f0d2be20 100644
--- a/test/libsolidity/SolidityInterface.cpp
+++ b/test/libsolidity/SolidityInterface.cpp
@@ -142,6 +142,22 @@ BOOST_AUTO_TEST_CASE(inheritance)
sourcePart(*contract.definedFunctions().at(1))}));
}
+BOOST_AUTO_TEST_CASE(libraries)
+{
+ char const* sourceCode = R"(
+ library Lib {
+ struct Str { uint a; }
+ enum E { E1, E2 }
+ function f(uint[] x,Str storage y,E z) external;
+ }
+ )";
+ ContractDefinition const& contract = checkInterface(sourceCode);
+ BOOST_CHECK(contract.isLibrary());
+ set<string> expectedFunctions({"function f(uint256[] x,Lib.Str storage y,Lib.E z);"});
+ BOOST_REQUIRE_EQUAL(1, contract.definedFunctions().size());
+ BOOST_CHECK(expectedFunctions == set<string>({sourcePart(*contract.definedFunctions().at(0))}));
+}
+
BOOST_AUTO_TEST_SUITE_END()
}