summaryrefslogtreecommitdiff
path: root/test/sbuild/chroot/chroot.cc
diff options
context:
space:
mode:
Diffstat (limited to 'test/sbuild/chroot/chroot.cc')
-rw-r--r--test/sbuild/chroot/chroot.cc63
1 files changed, 21 insertions, 42 deletions
diff --git a/test/sbuild/chroot/chroot.cc b/test/sbuild/chroot/chroot.cc
index a11056d7..0ae6eae7 100644
--- a/test/sbuild/chroot/chroot.cc
+++ b/test/sbuild/chroot/chroot.cc
@@ -19,6 +19,7 @@
#include <config.h>
#include <sbuild/chroot/chroot.h>
+#include <sbuild/chroot/facet/factory.h>
#include <sbuild/chroot/facet/storage.h>
#include <sbuild/keyfile-writer.h>
@@ -90,36 +91,21 @@ public:
}
};
-class basic_chroot : public sbuild::chroot::chroot
+namespace
{
-public:
- basic_chroot ():
- sbuild::chroot::chroot()
- {
- add_facet(test_chroot_facet::create());
- }
-
- virtual ~basic_chroot()
- {}
-
- virtual ptr
- clone () const
- { return ptr(new basic_chroot(*this)); }
- virtual ptr
- clone_session (std::string const& session_id,
- std::string const& alias,
- std::string const& user,
- bool root) const
- { return ptr(); }
+ sbuild::chroot::facet::factory::facet_info test_info =
+ {
+ "test",
+ "Support for ‘test’ chroots",
+ []() -> sbuild::chroot::facet::facet::ptr { return test_chroot_facet::create(); }
+ };
+ sbuild::chroot::facet::factory test_register(test_info);
- chroot::ptr
- clone_source () const
- { return ptr(); }
-};
+}
-class test_chroot : public test_chroot_base<basic_chroot>
+class test_chroot : public test_chroot_base
{
CPPUNIT_TEST_SUITE(test_chroot);
CPPUNIT_TEST(test_name);
@@ -145,7 +131,7 @@ class test_chroot : public test_chroot_base<basic_chroot>
public:
test_chroot():
- test_chroot_base<basic_chroot>()
+ test_chroot_base("test")
{
}
@@ -237,7 +223,7 @@ public:
expected.set_value(group, "profile", "");
expected.set_value(group, "script-config", "desktop/config");
- test_chroot_base<basic_chroot>::test_setup_keyfile
+ test_chroot_base::test_setup_keyfile
(chroot, expected, group);
}
@@ -261,45 +247,38 @@ public:
sbuild::environment observed;
chroot->setup_env(observed);
- test_chroot_base<basic_chroot>::test_setup_env(observed, expected);
+ test_chroot_base::test_setup_env(observed, expected);
}
}
void test_run_setup_scripts()
{
- std::shared_ptr<basic_chroot> c = std::dynamic_pointer_cast<basic_chroot>(chroot);
-
CPPUNIT_ASSERT(chroot->get_run_setup_scripts() == true);
}
void test_verbose()
{
- std::shared_ptr<basic_chroot> c = std::dynamic_pointer_cast<basic_chroot>(chroot);
-
CPPUNIT_ASSERT(chroot->get_verbosity() == sbuild::chroot::chroot::VERBOSITY_QUIET);
- c->set_verbosity(sbuild::chroot::chroot::VERBOSITY_VERBOSE);
+ chroot->set_verbosity(sbuild::chroot::chroot::VERBOSITY_VERBOSE);
CPPUNIT_ASSERT(chroot->get_verbosity() == sbuild::chroot::chroot::VERBOSITY_VERBOSE);
CPPUNIT_ASSERT(std::string(chroot->get_verbosity_string()) == "verbose");
- c->set_verbosity("normal");
+ chroot->set_verbosity("normal");
CPPUNIT_ASSERT(chroot->get_verbosity() == sbuild::chroot::chroot::VERBOSITY_NORMAL);
CPPUNIT_ASSERT(std::string(chroot->get_verbosity_string()) == "normal");
}
void test_preserve_environment()
{
- std::shared_ptr<basic_chroot> c = std::dynamic_pointer_cast<basic_chroot>(chroot);
-
CPPUNIT_ASSERT(chroot->get_preserve_environment() == false);
- c->set_preserve_environment(true);
+ chroot->set_preserve_environment(true);
CPPUNIT_ASSERT(chroot->get_preserve_environment() == true);
- c->set_preserve_environment(false);
+ chroot->set_preserve_environment(false);
CPPUNIT_ASSERT(chroot->get_preserve_environment() == false);
}
void test_verbose_error()
{
- std::shared_ptr<basic_chroot> c = std::dynamic_pointer_cast<basic_chroot>(chroot);
- c->set_verbosity("invalid");
+ chroot->set_verbosity("invalid");
}
void test_chroot_type()
@@ -321,7 +300,7 @@ public:
sbuild::environment observed;
chroot->setup_env(observed);
- test_chroot_base<basic_chroot>::test_setup_env(observed, expected);
+ test_chroot_base::test_setup_env(observed, expected);
}
void test_setup_keyfile()
@@ -331,7 +310,7 @@ public:
setup_keyfile_chroot(expected, group);
expected.set_value(group, "type", "test");
- test_chroot_base<basic_chroot>::test_setup_keyfile
+ test_chroot_base::test_setup_keyfile
(chroot, expected, group);
}