diff options
author | Dan Goodliffe <dan@randomdan.homeip.net> | 2015-07-19 19:45:51 +0100 |
---|---|---|
committer | Dan Goodliffe <dan@randomdan.homeip.net> | 2015-07-19 20:45:12 +0100 |
commit | 50dff4f5e67381f53095c071bd8be6d36a882f1d (patch) | |
tree | 59e1a15b6f717e6bba0175908d1a25cc224ebc10 | |
parent | Remove commented out code (diff) | |
download | netfs-50dff4f5e67381f53095c071bd8be6d36a882f1d.tar.bz2 netfs-50dff4f5e67381f53095c071bd8be6d36a882f1d.tar.xz netfs-50dff4f5e67381f53095c071bd8be6d36a882f1d.zip |
Start mock daemons with a real configuration file that has specific parts replaced at run-time
-rw-r--r-- | netfs/unittests/Jamfile.jam | 6 | ||||
-rw-r--r-- | netfs/unittests/defaultDaemon.xml | 11 | ||||
-rw-r--r-- | netfs/unittests/mockDaemon.cpp | 18 | ||||
-rw-r--r-- | netfs/unittests/testCore.cpp | 4 | ||||
-rw-r--r-- | netfs/unittests/testEdgeCases.cpp | 4 | ||||
-rw-r--r-- | netfs/unittests/testGlacier.cpp | 4 |
6 files changed, 32 insertions, 15 deletions
diff --git a/netfs/unittests/Jamfile.jam b/netfs/unittests/Jamfile.jam index 79f77e3..8811d27 100644 --- a/netfs/unittests/Jamfile.jam +++ b/netfs/unittests/Jamfile.jam @@ -27,21 +27,21 @@ lib testMocks : run testCore.cpp - : : : + : : defaultDaemon.xml : <define>BOOST_TEST_DYN_LINK <library>boost_utf <library>testMocks : testCore ; run testGlacier.cpp - : : : + : : defaultDaemon.xml : <define>BOOST_TEST_DYN_LINK <library>boost_utf <library>testMocks : testGlacier ; run testEdgeCases.cpp - : : : + : : defaultDaemon.xml : <define>BOOST_TEST_DYN_LINK <library>boost_utf <library>testMocks diff --git a/netfs/unittests/defaultDaemon.xml b/netfs/unittests/defaultDaemon.xml new file mode 100644 index 0000000..76711cc --- /dev/null +++ b/netfs/unittests/defaultDaemon.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="ascii"?> +<config> + <exports> + <export> + <name>testvol</name> + <export> + <root>/overridden</root> + </export> + </export> + </exports> +</config> diff --git a/netfs/unittests/mockDaemon.cpp b/netfs/unittests/mockDaemon.cpp index 4a735e8..fa8c1a0 100644 --- a/netfs/unittests/mockDaemon.cpp +++ b/netfs/unittests/mockDaemon.cpp @@ -17,15 +17,14 @@ MockDaemon::MockDaemon(const std::string & ep) : } NetFS::Daemon::ConfigurationPtr -MockDaemon::ReadConfiguration(const boost::filesystem::path &) const +MockDaemon::ReadConfiguration(const boost::filesystem::path & path) const { - return new NetFS::Daemon::Configuration( - { - { "testvol", new NetFS::Daemon::Export(TestExportRoot.string()) } - }, - { - { "unittest", new NetFS::Daemon::Host(testEndpoint) } - }); + auto c = NetFSDaemon::ReadConfiguration(path); + for(auto e : c->Exports) { + e.second->RootPath = TestExportRoot.string(); + } + c->Hosts.insert({ "unittest", new NetFS::Daemon::Host(testEndpoint) }); + return c; } MockDaemonHost::MockDaemonHost(const std::string & ep, const Ice::StringSeq & ps) : @@ -59,7 +58,8 @@ MockDaemonHost::stop() void MockDaemonHost::start() { - ic = Ice::initialize(params); + ic = Ice::initialize(); + ic->getProperties()->parseCommandLineOptions("NetFSD", params); ic->getProperties()->setProperty("NetFSD.HostNameOverride", "unittest"); daemon = new MockDaemon(testEndpoint); daemon->start("NetFSDaemonAdapter", ic, {}); diff --git a/netfs/unittests/testCore.cpp b/netfs/unittests/testCore.cpp index 75d55a4..af03ed3 100644 --- a/netfs/unittests/testCore.cpp +++ b/netfs/unittests/testCore.cpp @@ -21,7 +21,9 @@ char * defaultFuseArgv[] = { class Core { public: Core() : - daemonHost(testEndpoint), + daemonHost(testEndpoint, { + "--NetFSD.ConfigPath=" + (RootDir / "defaultDaemon.xml").string() + }), fuseHost(testEndpoint, 2, defaultFuseArgv), ic(daemonHost.ic), fuse(fuseHost.fuse) diff --git a/netfs/unittests/testEdgeCases.cpp b/netfs/unittests/testEdgeCases.cpp index afa2338..3955e73 100644 --- a/netfs/unittests/testEdgeCases.cpp +++ b/netfs/unittests/testEdgeCases.cpp @@ -20,7 +20,9 @@ char * defaultFuseArgv[] = { BOOST_AUTO_TEST_CASE ( createAndDaemonRestart ) { - MockDaemonHost daemon(testEndpoint); + MockDaemonHost daemon(testEndpoint, { + "--NetFSD.ConfigPath=" + (RootDir / "defaultDaemon.xml").string() + }); FuseMockHost fuse(testEndpoint, 2, defaultFuseArgv); struct statvfs s; diff --git a/netfs/unittests/testGlacier.cpp b/netfs/unittests/testGlacier.cpp index 17f892a..abe8a1e 100644 --- a/netfs/unittests/testGlacier.cpp +++ b/netfs/unittests/testGlacier.cpp @@ -31,7 +31,9 @@ BOOST_AUTO_TEST_CASE ( withRouter ) strdup("--Ice.Default.Router=Glacier2/router:tcp -h localhost -p 4063") }; - MockDaemonHost daemon(testEndpoint); + MockDaemonHost daemon(testEndpoint, { + "--NetFSD.ConfigPath=" + (RootDir / "defaultDaemon.xml").string() + }); FuseMockHost fuse(testEndpoint, 3, glacierFuseArgv); struct statvfs s; |