fix unknown match mode detection
authorMichael Andres <ma@suse.de>
Fri, 6 May 2011 09:23:30 +0000 (11:23 +0200)
committerMichael Andres <ma@suse.de>
Fri, 6 May 2011 09:23:30 +0000 (11:23 +0200)
tests/sat/AttrMatcher_test.cc
zypp/sat/AttrMatcher.cc

index e689f79..98a679c 100644 (file)
@@ -76,6 +76,7 @@ BOOST_AUTO_TEST_CASE(Match_operator)
 BOOST_AUTO_TEST_CASE(AttrMatcher_defaultconstructed)
 {
   sat::AttrMatcher m;
+  BOOST_CHECK_EQUAL( m.flags(), Match::NOTHING );
   BOOST_CHECK( !m );   // eval in boolean context
   BOOST_CHECK( m.searchstring().empty() );
   BOOST_CHECK_EQUAL( m.flags(), Match() );
@@ -89,6 +90,12 @@ BOOST_AUTO_TEST_CASE(AttrMatcher_defaultconstructed)
   BOOST_CHECK( m );    // eval in boolean context
 }
 
+BOOST_AUTO_TEST_CASE(AttrMatcher_OTHER)
+{
+  sat::AttrMatcher m( "fau", Match::OTHER );
+  BOOST_CHECK_THROW( m.compile(), MatchUnknownModeException );
+}
+
 BOOST_AUTO_TEST_CASE(AttrMatcher_STRING)
 {
   sat::AttrMatcher m( "fau" );
index 1a522a7..3646be1 100644 (file)
@@ -186,7 +186,7 @@ namespace zypp
       {
         if ( !_matcher )
         {
-          if ( _flags.mode() == Match::OTHER )
+          if ( _flags.mode() == Match::OTHER )
             ZYPP_THROW( MatchUnknownModeException( _flags, _search ) );
 
           _matcher.reset( new ::_Datamatcher );