summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/generic/apt/aptitude_resolver.cc7
-rw-r--r--tests/test_resolver_hints.cc16
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")))