diff options
Diffstat (limited to 'paludis/repositories/e/e_repository_TEST_exheres_0.cc')
-rw-r--r-- | paludis/repositories/e/e_repository_TEST_exheres_0.cc | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/paludis/repositories/e/e_repository_TEST_exheres_0.cc b/paludis/repositories/e/e_repository_TEST_exheres_0.cc index 0ccc21e5a..4116784d8 100644 --- a/paludis/repositories/e/e_repository_TEST_exheres_0.cc +++ b/paludis/repositories/e/e_repository_TEST_exheres_0.cc @@ -669,6 +669,38 @@ TEST(ERepository, ReallyInstallExheres0) { const std::shared_ptr<const PackageID> id(*env[selection::RequireExactlyOne(generator::Matches( + PackageDepSpec(parse_user_package_dep_spec("=cat/permitted-directories-1", + &env, { })), nullptr, { }))]->last()); + ASSERT_TRUE(bool(id)); + EXPECT_THROW(id->perform_action(action), ActionFailedError); + } + + { + const std::shared_ptr<const PackageID> id(*env[selection::RequireExactlyOne(generator::Matches( + PackageDepSpec(parse_user_package_dep_spec("=cat/permitted-directories-2", + &env, { })), nullptr, { }))]->last()); + ASSERT_TRUE(bool(id)); + id->perform_action(action); + } + + { + const std::shared_ptr<const PackageID> id(*env[selection::RequireExactlyOne(generator::Matches( + PackageDepSpec(parse_user_package_dep_spec("=cat/permitted-directories-3", + &env, { })), nullptr, { }))]->last()); + ASSERT_TRUE(bool(id)); + EXPECT_THROW(id->perform_action(action), ActionFailedError); + } + + { + const std::shared_ptr<const PackageID> id(*env[selection::RequireExactlyOne(generator::Matches( + PackageDepSpec(parse_user_package_dep_spec("=cat/permitted-directories-4", + &env, { })), nullptr, { }))]->last()); + ASSERT_TRUE(bool(id)); + id->perform_action(action); + } + + { + const std::shared_ptr<const PackageID> id(*env[selection::RequireExactlyOne(generator::Matches( PackageDepSpec(parse_user_package_dep_spec("=cat/exvolatile-1", &env, { })), nullptr, { }))]->last()); ASSERT_TRUE(bool(id)); |