diff options
-rw-r--r-- | src/generic/apt/aptitude_resolver.cc | 7 | ||||
-rw-r--r-- | tests/test_resolver_hints.cc | 16 |
2 files changed, 9 insertions, 14 deletions
diff --git a/src/generic/apt/aptitude_resolver.cc b/src/generic/apt/aptitude_resolver.cc index f188d393..ed6588c5 100644 --- a/src/generic/apt/aptitude_resolver.cc +++ b/src/generic/apt/aptitude_resolver.cc @@ -202,12 +202,7 @@ bool aptitude_resolver::resolver_hint::parse(const std::string &hint, resolver_h cwidget::util::ref_ptr<aptitude::matching::pattern> target; if(!aptitude::matching::is_pattern(target_str)) - // \todo This should match only the *exact* name; currently, eg, - // "rpm" will match "librpm1". - // - // Doing that requires backslash-escaping any regex metacharacters - // in the string, or maybe just writing a new pattern type. - target = aptitude::matching::pattern::make_name(target_str); + target = aptitude::matching::pattern::make_exact_name(target_str); else try { diff --git a/tests/test_resolver_hints.cc b/tests/test_resolver_hints.cc index 2c518f10..2eef91f3 100644 --- a/tests/test_resolver_hints.cc +++ b/tests/test_resolver_hints.cc @@ -45,31 +45,31 @@ namespace const test resolver_tests[] = { - test("40 g++", hint::make_tweak_score(pattern::make_name("g++"), + test("40 g++", hint::make_tweak_score(pattern::make_exact_name("g++"), hint::version_selection::make_inst(), 40)), - test("-143 aptitude <4.3.0", hint::make_tweak_score(pattern::make_name("aptitude"), + test("-143 aptitude <4.3.0", hint::make_tweak_score(pattern::make_exact_name("aptitude"), hint::version_selection::make_version(hint::version_selection::less_than, "4.3.0"), -143)), test("+621 ?section(games) /unstable", hint::make_tweak_score(pattern::make_section("games"), hint::version_selection::make_archive("unstable"), 621)), - test("reject libc6 <=0.5.0", hint::make_reject(pattern::make_name("libc6"), + test("reject libc6 <=0.5.0", hint::make_reject(pattern::make_exact_name("libc6"), hint::version_selection::make_version(hint::version_selection::less_than_or_equal_to, "0.5.0"))), - test("approve entropy =0", hint::make_mandate(pattern::make_name("entropy"), + test("approve entropy =0", hint::make_mandate(pattern::make_exact_name("entropy"), hint::version_selection::make_version(hint::version_selection::equal_to, "0"))), - test("approve entropy 1", hint::make_mandate(pattern::make_name("entropy"), + test("approve entropy 1", hint::make_mandate(pattern::make_exact_name("entropy"), hint::version_selection::make_version(hint::version_selection::equal_to, "1"))), - test("reject aptitude :UNINST", hint::make_reject(pattern::make_name("aptitude"), + test("reject aptitude :UNINST", hint::make_reject(pattern::make_exact_name("aptitude"), hint::version_selection::make_uninst())), - test("+29387 xmonad >=5.4.3.2.1", hint::make_tweak_score(pattern::make_name("xmonad"), + test("+29387 xmonad >=5.4.3.2.1", hint::make_tweak_score(pattern::make_exact_name("xmonad"), hint::version_selection::make_version(hint::version_selection::greater_than_or_equal_to, "5.4.3.2.1"), 29387)), - test("approve dc >1", hint::make_mandate(pattern::make_name("dc"), + test("approve dc >1", hint::make_mandate(pattern::make_exact_name("dc"), hint::version_selection::make_version(hint::version_selection::greater_than, "1"))), test("reject ?task(desktop) <>4.0", hint::make_reject(pattern::make_task("desktop"), hint::version_selection::make_version(hint::version_selection::not_equal_to, "4.0"))) |