libcryfs/test/program_options/ProgramOptionsTest.cpp

58 lines
2.3 KiB
C++
Raw Normal View History

#include "testutils/ProgramOptionsTestBase.h"
#include "../../src/program_options/ProgramOptions.h"
2015-10-17 19:38:24 +02:00
#include <messmer/cpp-utils/pointer/unique_ref_boost_optional_gtest_workaround.h>
using namespace cryfs::program_options;
using std::vector;
2015-10-17 19:38:24 +02:00
using boost::none;
using std::string;
class ProgramOptionsTest: public ProgramOptionsTestBase {};
TEST_F(ProgramOptionsTest, BaseDir) {
2015-10-17 19:38:24 +02:00
ProgramOptions testobj("/home/user/mydir", "", "", false, none, options({"./myExecutable"}));
EXPECT_EQ("/home/user/mydir", testobj.baseDir());
}
TEST_F(ProgramOptionsTest, MountDir) {
2015-10-17 19:38:24 +02:00
ProgramOptions testobj("", "/home/user/mydir", "", false, none, options({"./myExecutable"}));
EXPECT_EQ("/home/user/mydir", testobj.mountDir());
}
TEST_F(ProgramOptionsTest, ConfigFile) {
2015-10-17 19:38:24 +02:00
ProgramOptions testobj("", "", "/home/user/configfile", false, none, options({"./myExecutable"}));
EXPECT_EQ("/home/user/configfile", testobj.configFile());
}
2015-10-15 05:26:05 +02:00
TEST_F(ProgramOptionsTest, ForegroundFalse) {
2015-10-17 19:38:24 +02:00
ProgramOptions testobj("", "", "/home/user/configfile", false, none, options({"./myExecutable"}));
2015-10-15 05:26:05 +02:00
EXPECT_FALSE(testobj.foreground());
}
TEST_F(ProgramOptionsTest, ForegroundTrue) {
2015-10-17 19:38:24 +02:00
ProgramOptions testobj("", "", "/home/user/configfile", true, none, options({"./myExecutable"}));
2015-10-15 05:26:05 +02:00
EXPECT_TRUE(testobj.foreground());
}
2015-10-17 19:38:24 +02:00
TEST_F(ProgramOptionsTest, LogfileNone) {
ProgramOptions testobj("", "", "/home/user/configfile", true, none, options({"./myExecutable"}));
EXPECT_EQ(none, testobj.logFile());
}
TEST_F(ProgramOptionsTest, LogfileSome) {
ProgramOptions testobj("", "", "/home/user/configfile", true, string("logfile"), options({"./myExecutable"}));
EXPECT_EQ("logfile", testobj.logFile().get());
}
TEST_F(ProgramOptionsTest, EmptyFuseOptions) {
2015-10-17 19:38:24 +02:00
ProgramOptions testobj("/rootDir", "/home/user/mydir", "/home/user/configfile", false, none, options({"./myExecutable"}));
//Fuse should have the mount dir as first parameter
EXPECT_VECTOR_EQ({"./myExecutable", "/home/user/mydir"}, testobj.fuseOptions());
}
TEST_F(ProgramOptionsTest, SomeFuseOptions) {
2015-10-17 19:38:24 +02:00
ProgramOptions testobj("/rootDir", "/home/user/mydir", "/home/user/configfile", false, none, options({"./myExecutable", "-f", "--longoption"}));
//Fuse should have the mount dir as first parameter
EXPECT_VECTOR_EQ({"./myExecutable", "/home/user/mydir", "-f", "--longoption"}, testobj.fuseOptions());
}