Commit 6e8d7dc22d8c43b8e6cbd4da3f670fd16ef8818e

Authored by Henry Fredrick Schreiner
1 parent cf4f6086

Adding a few more help tests

.gitignore
1 a.out* 1 a.out*
  2 +*.swp
2 /*build* 3 /*build*
include/CLI/App.hpp
@@ -394,7 +394,7 @@ public: @@ -394,7 +394,7 @@ public:
394 opt->typeval_ = detail::type_name<std::string>(); 394 opt->typeval_ = detail::type_name<std::string>();
395 opt->typeval_ += " in {" + detail::join(options) + "}"; 395 opt->typeval_ += " in {" + detail::join(options) + "}";
396 if(defaulted) { 396 if(defaulted) {
397 - opt->defaultval_ = detail::to_lower(member); 397 + opt->defaultval_ = member;
398 } 398 }
399 return opt; 399 return opt;
400 } 400 }
tests/HelpTest.cpp
@@ -140,3 +140,36 @@ TEST(THelp, Subcom) { @@ -140,3 +140,36 @@ TEST(THelp, Subcom) {
140 EXPECT_THAT(help, HasSubstr("Usage: program [OPTIONS] SUBCOMMAND")); 140 EXPECT_THAT(help, HasSubstr("Usage: program [OPTIONS] SUBCOMMAND"));
141 141
142 } 142 }
  143 +
  144 +TEST(THelp, IntDefaults) {
  145 + CLI::App app{"My prog"};
  146 +
  147 + int one{1}, two{2};
  148 + app.add_option("--one", one, "Help for one", true);
  149 + app.add_set("--set", two, {2,3,4}, "Help for set", true);
  150 +
  151 + std::string help = app.help();
  152 +
  153 + EXPECT_THAT(help, HasSubstr("--one"));
  154 + EXPECT_THAT(help, HasSubstr("--set"));
  155 + EXPECT_THAT(help, HasSubstr("1"));
  156 + EXPECT_THAT(help, HasSubstr("=2"));
  157 + EXPECT_THAT(help, HasSubstr("2,3,4"));
  158 +
  159 +}
  160 +
  161 +TEST(THelp, SetLower) {
  162 + CLI::App app{"My prog"};
  163 +
  164 + std::string def{"One"};
  165 + app.add_set_ignore_case("--set",def, {"oNe", "twO", "THREE"}, "Help for set", true);
  166 +
  167 + std::string help = app.help();
  168 +
  169 + EXPECT_THAT(help, HasSubstr("--set"));
  170 + EXPECT_THAT(help, HasSubstr("=One"));
  171 + EXPECT_THAT(help, HasSubstr("oNe"));
  172 + EXPECT_THAT(help, HasSubstr("twO"));
  173 + EXPECT_THAT(help, HasSubstr("THREE"));
  174 +
  175 +}