summaryrefslogtreecommitdiff
path: root/test/sbuild/chroot/custom.cc
diff options
context:
space:
mode:
Diffstat (limited to 'test/sbuild/chroot/custom.cc')
-rw-r--r--test/sbuild/chroot/custom.cc211
1 files changed, 95 insertions, 116 deletions
diff --git a/test/sbuild/chroot/custom.cc b/test/sbuild/chroot/custom.cc
index a5b462ba..801ec832 100644
--- a/test/sbuild/chroot/custom.cc
+++ b/test/sbuild/chroot/custom.cc
@@ -30,62 +30,32 @@
#include <algorithm>
#include <set>
-#include <cppunit/extensions/HelperMacros.h>
-
-using namespace CppUnit;
-
-class test_chroot_custom : public test_chroot_base
+class ChrootCustom : public ChrootBase
{
- CPPUNIT_TEST_SUITE(test_chroot_custom);
- CPPUNIT_TEST(test_directory);
- CPPUNIT_TEST(test_chroot_type);
- CPPUNIT_TEST(test_setup_env);
- CPPUNIT_TEST(test_setup_keyfile);
- CPPUNIT_TEST(test_session_flags1);
- CPPUNIT_TEST(test_session_flags2);
- CPPUNIT_TEST(test_session_flags3);
- CPPUNIT_TEST(test_session_flags4);
- CPPUNIT_TEST(test_print_details);
- CPPUNIT_TEST(test_print_config);
- CPPUNIT_TEST(test_run_setup_scripts);
- CPPUNIT_TEST_SUITE_END();
-
public:
- test_chroot_custom():
- test_chroot_base("custom")
+ ChrootCustom():
+ ChrootBase("custom")
{}
- void setUp()
+ void SetUp()
{
- test_chroot_base::setUp();
- CPPUNIT_ASSERT(chroot);
- CPPUNIT_ASSERT(session);
- CPPUNIT_ASSERT(!source);
- CPPUNIT_ASSERT(!session_source);
+ ChrootBase::SetUp();
+ ASSERT_NE(chroot, nullptr);
+ ASSERT_NE(session, nullptr);
+ ASSERT_EQ(source, nullptr);
+ ASSERT_EQ(session_source, nullptr);
}
virtual void setup_chroot_props (sbuild::chroot::chroot::ptr& chroot)
{
- test_chroot_base::setup_chroot_props(chroot);
+ ChrootBase::setup_chroot_props(chroot);
sbuild::chroot::facet::userdata::ptr userdata = chroot->get_facet<sbuild::chroot::facet::userdata>();
- CPPUNIT_ASSERT(userdata);
+ ASSERT_NE(userdata, nullptr);
userdata->set_data("custom.directory", "/srv/chroots/sid");
userdata->set_data("custom.options", "foobar");
}
- void
- test_directory()
- {
- CPPUNIT_ASSERT(chroot->get_path() == "/mnt/mount-location");
- CPPUNIT_ASSERT(chroot->get_mount_location() == "/mnt/mount-location");
- }
-
- void test_chroot_type()
- {
- CPPUNIT_ASSERT(chroot->get_chroot_type() == "custom");
- }
-
void setup_env_gen(sbuild::environment& expected)
{
setup_env_chroot(expected);
@@ -99,98 +69,107 @@ public:
expected.add("CUSTOM_DIRECTORY", "/srv/chroots/sid");
expected.add("CUSTOM_OPTIONS", "foobar");
}
+};
- void test_setup_env()
+TEST_F(ChrootCustom, Directory)
{
- sbuild::environment expected;
- setup_env_gen(expected);
-
- test_chroot_base::test_setup_env(chroot, expected);
+ ASSERT_EQ(chroot->get_path(), "/mnt/mount-location");
+ ASSERT_EQ(chroot->get_mount_location(), "/mnt/mount-location");
}
- void test_setup_keyfile()
- {
- sbuild::keyfile expected;
- std::string group = chroot->get_name();
- setup_keyfile_chroot(expected, group);
- expected.set_value(group, "type", "custom");
- expected.set_value(group, "custom-session-purgeable", "false");
- expected.set_value(group, "custom.directory", "/srv/chroots/sid");
- expected.set_value(group, "custom.options", "foobar");
-
- test_chroot_base::test_setup_keyfile
- (chroot, expected, group);
- }
+TEST_F(ChrootCustom, Type)
+{
+ ASSERT_EQ(chroot->get_chroot_type(), "custom");
+}
- void test_session_flags1()
- {
- CPPUNIT_ASSERT(chroot->get_session_flags() ==
- sbuild::chroot::facet::facet::SESSION_CREATE);
- CPPUNIT_ASSERT(chroot->get_facet<sbuild::chroot::facet::session_clonable>());
- CPPUNIT_ASSERT(!chroot->get_facet<sbuild::chroot::facet::source_clonable>());
- }
+TEST_F(ChrootCustom, SetupEnv)
+{
+ sbuild::environment expected;
+ setup_env_gen(expected);
- void test_session_flags2()
- {
- sbuild::chroot::facet::custom::ptr custp = chroot->get_facet_strict<sbuild::chroot::facet::custom>();
- custp->set_session_cloneable(false);
+ ChrootBase::test_setup_env(chroot, expected);
+}
- CPPUNIT_ASSERT(chroot->get_session_flags() ==
- sbuild::chroot::facet::facet::SESSION_NOFLAGS);
+TEST_F(ChrootCustom, SetupKeyfile)
+{
+ sbuild::keyfile expected;
+ std::string group = chroot->get_name();
+ setup_keyfile_chroot(expected, group);
+ expected.set_value(group, "type", "custom");
+ expected.set_value(group, "custom-session-purgeable", "false");
+ expected.set_value(group, "custom.directory", "/srv/chroots/sid");
+ expected.set_value(group, "custom.options", "foobar");
+
+ ChrootBase::test_setup_keyfile
+ (chroot, expected, group);
+}
+
+TEST_F(ChrootCustom, SessionFlags1)
+{
+ ASSERT_EQ(chroot->get_session_flags(),
+ sbuild::chroot::facet::facet::SESSION_CREATE);
- CPPUNIT_ASSERT(!chroot->get_facet<sbuild::chroot::facet::session_clonable>());
- CPPUNIT_ASSERT(!chroot->get_facet<sbuild::chroot::facet::source_clonable>());
- }
+ ASSERT_NE(chroot->get_facet<sbuild::chroot::facet::session_clonable>(), nullptr);
+ ASSERT_EQ(chroot->get_facet<sbuild::chroot::facet::source_clonable>(), nullptr);
+}
- void test_session_flags3()
- {
- sbuild::chroot::facet::custom::ptr custp = chroot->get_facet_strict<sbuild::chroot::facet::custom>();
- custp->set_source_cloneable(true);
+TEST_F(ChrootCustom, SessionFlags2)
+{
+ sbuild::chroot::facet::custom::ptr custp = chroot->get_facet_strict<sbuild::chroot::facet::custom>();
+ custp->set_session_cloneable(false);
- CPPUNIT_ASSERT(chroot->get_session_flags() ==
- (sbuild::chroot::facet::facet::SESSION_CREATE|sbuild::chroot::facet::facet::SESSION_CLONE));
+ ASSERT_EQ(chroot->get_session_flags(),
+ sbuild::chroot::facet::facet::SESSION_NOFLAGS);
- CPPUNIT_ASSERT(chroot->get_facet<sbuild::chroot::facet::session_clonable>());
- CPPUNIT_ASSERT(chroot->get_facet<sbuild::chroot::facet::source_clonable>());
- }
+ ASSERT_EQ(chroot->get_facet<sbuild::chroot::facet::session_clonable>(), nullptr);
+ ASSERT_EQ(chroot->get_facet<sbuild::chroot::facet::source_clonable>(), nullptr);
+}
- void test_session_flags4()
- {
- sbuild::chroot::facet::custom::ptr custp = chroot->get_facet_strict<sbuild::chroot::facet::custom>();
- custp->set_session_cloneable(false);
- custp->set_source_cloneable(true);
+TEST_F(ChrootCustom, SessionFlags3)
+{
+ sbuild::chroot::facet::custom::ptr custp = chroot->get_facet_strict<sbuild::chroot::facet::custom>();
+ custp->set_source_cloneable(true);
- CPPUNIT_ASSERT(chroot->get_session_flags() ==
- sbuild::chroot::facet::facet::SESSION_CLONE);
+ ASSERT_EQ(chroot->get_session_flags(),
+ (sbuild::chroot::facet::facet::SESSION_CREATE|sbuild::chroot::facet::facet::SESSION_CLONE));
- CPPUNIT_ASSERT(!chroot->get_facet<sbuild::chroot::facet::session_clonable>());
- CPPUNIT_ASSERT(chroot->get_facet<sbuild::chroot::facet::source_clonable>());
- }
+ ASSERT_NE(chroot->get_facet<sbuild::chroot::facet::session_clonable>(), nullptr);
+ ASSERT_NE(chroot->get_facet<sbuild::chroot::facet::source_clonable>(), nullptr);
+}
- void test_print_details()
- {
- std::ostringstream os;
- os << chroot;
- // TODO: Compare output.
- CPPUNIT_ASSERT(!os.str().empty());
- }
+TEST_F(ChrootCustom, SessionFlags4)
+{
+ sbuild::chroot::facet::custom::ptr custp = chroot->get_facet_strict<sbuild::chroot::facet::custom>();
+ custp->set_session_cloneable(false);
+ custp->set_source_cloneable(true);
- void test_print_config()
- {
- std::ostringstream os;
- sbuild::keyfile config;
- config << chroot;
- os << sbuild::keyfile_writer(config);
- // TODO: Compare output.
- CPPUNIT_ASSERT(!os.str().empty());
- }
+ ASSERT_EQ(chroot->get_session_flags(),
+ sbuild::chroot::facet::facet::SESSION_CLONE);
- void test_run_setup_scripts()
- {
- CPPUNIT_ASSERT(chroot->get_run_setup_scripts());
- }
+ ASSERT_EQ(chroot->get_facet<sbuild::chroot::facet::session_clonable>(), nullptr);
+ ASSERT_NE(chroot->get_facet<sbuild::chroot::facet::source_clonable>(), nullptr);
+}
-};
+TEST_F(ChrootCustom, PrintDetails)
+{
+ std::ostringstream os;
+ os << chroot;
+ // TODO: Compare output.
+ ASSERT_FALSE(os.str().empty());
+}
-CPPUNIT_TEST_SUITE_REGISTRATION(test_chroot_custom);
+TEST_F(ChrootCustom, PrintConfig)
+{
+ std::ostringstream os;
+ sbuild::keyfile config;
+ config << chroot;
+ os << sbuild::keyfile_writer(config);
+ // TODO: Compare output.
+ ASSERT_FALSE(os.str().empty());
+}
+
+TEST_F(ChrootCustom, RunSetupScripts)
+{
+ ASSERT_TRUE(chroot->get_run_setup_scripts());
+}