Parse arguments in free function.

This commit is contained in:
chriseth 2016-06-17 00:19:16 +02:00
parent 27df4b7e71
commit 93c8fc094e
2 changed files with 10 additions and 18 deletions

View File

@ -20,40 +20,39 @@
* Framework for executing Solidity contracts and testing them against C++ implementation.
*/
#include <cstdlib>
#include <boost/test/framework.hpp>
#include <test/libsolidity/SolidityExecutionFramework.h>
using namespace std;
using namespace dev;
using namespace dev::solidity;
using namespace dev::solidity::test;
ExecutionFramework::boostArg::boostArg()
string getIPCSocketPath()
{
string ipcPath;
size_t argc = boost::unit_test::framework::master_test_suite().argc;
char** argv = boost::unit_test::framework::master_test_suite().argv;
for (size_t i = 0; i < argc; i++)
{
string arg = argv[i];
if (arg == "--ipc" && i+1 < argc)
if (arg == "--ipc" && i + 1 < argc)
{
ipcPath = argv[i+1];
ipcPath = argv[i + 1];
i++;
}
}
if (ipcPath.empty())
ipcPath = getenv("ETH_TEST_IPC");
if (ipcPath.empty())
BOOST_FAIL("ERROR: ipcPath not set! (use --ipc <path>)");
}
ExecutionFramework::boostArg const& ExecutionFramework::getArgs()
{
static boostArg boostArgs;
return boostArgs;
return ipcPath;
}
ExecutionFramework::ExecutionFramework() :
m_rpc(RPCSession::instance(getArgs().ipcPath)),
m_rpc(RPCSession::instance(getIPCSocketPath())),
m_sender(m_rpc.account(0))
{
if (g_logVerbosity != -1)

View File

@ -255,13 +255,6 @@ protected:
bool storageEmpty(Address const& _addr);
bool addressHasCode(Address const& _addr);
struct boostArg
{
boostArg();
std::string ipcPath;
};
boostArg const& getArgs();
RPCSession& m_rpc;
struct LogEntry