fix segfault with empty LongOpt in --no-* branch
[ntk/apt.git] / test / libapt / commandline_test.cc
index a37fb02..de8a30b 100644 (file)
@@ -9,13 +9,24 @@ int main()
       { 'z', "zero", "Test::Zero", 0 },
       {0,0,0,0}
    };
-
    CommandLine CmdL(Args,_config);
+
    char const * argv[] = { "test", "--zero", "-t" };
    CmdL.Parse(3 , argv);
-
    equals(true, _config->FindB("Test::Worked", false));
    equals(true, _config->FindB("Test::Zero", false));
 
+   _config->Clear("Test");
+   equals(false, _config->FindB("Test::Worked", false));
+   equals(false, _config->FindB("Test::Zero", false));
+
+   _config->Set("Test::Zero", true);
+   equals(true, _config->FindB("Test::Zero", false));
+
+   char const * argv2[] = { "test", "--no-zero", "-t" };
+   CmdL.Parse(3 , argv2);
+   equals(true, _config->FindB("Test::Worked", false));
+   equals(false, _config->FindB("Test::Zero", false));
+
    return 0;
 }