Commit f89f283a62c30bf1f4409a09a14bd45383731ec4
Committed by
Henry Schreiner
1 parent
b80a0046
Filling out tests
Showing
1 changed file
with
63 additions
and
0 deletions
tests/HelpTest.cpp
| @@ -665,6 +665,7 @@ TEST(THelp, CombinedValidatorsPathyText) { | @@ -665,6 +665,7 @@ TEST(THelp, CombinedValidatorsPathyText) { | ||
| 665 | std::string help = app.help(); | 665 | std::string help = app.help(); |
| 666 | EXPECT_THAT(help, Not(HasSubstr("TEXT"))); | 666 | EXPECT_THAT(help, Not(HasSubstr("TEXT"))); |
| 667 | EXPECT_THAT(help, HasSubstr("PATH")); | 667 | EXPECT_THAT(help, HasSubstr("PATH")); |
| 668 | +} | ||
| 668 | 669 | ||
| 669 | // #113 Part 2 | 670 | // #113 Part 2 |
| 670 | TEST(THelp, ChangingSet) { | 671 | TEST(THelp, ChangingSet) { |
| @@ -687,3 +688,65 @@ TEST(THelp, ChangingSet) { | @@ -687,3 +688,65 @@ TEST(THelp, ChangingSet) { | ||
| 687 | EXPECT_THAT(help, Not(HasSubstr("1"))); | 688 | EXPECT_THAT(help, Not(HasSubstr("1"))); |
| 688 | EXPECT_THAT(help, HasSubstr("4")); | 689 | EXPECT_THAT(help, HasSubstr("4")); |
| 689 | } | 690 | } |
| 691 | + | ||
| 692 | +TEST(THelp, ChangingSetDefaulted) { | ||
| 693 | + CLI::App app; | ||
| 694 | + | ||
| 695 | + std::set<int> vals{1, 2, 3}; | ||
| 696 | + int val = 2; | ||
| 697 | + app.add_set("--val", val, vals, "", true); | ||
| 698 | + | ||
| 699 | + std::string help = app.help(); | ||
| 700 | + | ||
| 701 | + EXPECT_THAT(help, HasSubstr("1")); | ||
| 702 | + EXPECT_THAT(help, Not(HasSubstr("4"))); | ||
| 703 | + | ||
| 704 | + vals.insert(4); | ||
| 705 | + vals.erase(1); | ||
| 706 | + | ||
| 707 | + help = app.help(); | ||
| 708 | + | ||
| 709 | + EXPECT_THAT(help, Not(HasSubstr("1"))); | ||
| 710 | + EXPECT_THAT(help, HasSubstr("4")); | ||
| 711 | +} | ||
| 712 | +TEST(THelp, ChangingCaselessSet) { | ||
| 713 | + CLI::App app; | ||
| 714 | + | ||
| 715 | + std::set<std::string> vals{"1", "2", "3"}; | ||
| 716 | + std::string val; | ||
| 717 | + app.add_set_ignore_case("--val", val, vals); | ||
| 718 | + | ||
| 719 | + std::string help = app.help(); | ||
| 720 | + | ||
| 721 | + EXPECT_THAT(help, HasSubstr("1")); | ||
| 722 | + EXPECT_THAT(help, Not(HasSubstr("4"))); | ||
| 723 | + | ||
| 724 | + vals.insert("4"); | ||
| 725 | + vals.erase("1"); | ||
| 726 | + | ||
| 727 | + help = app.help(); | ||
| 728 | + | ||
| 729 | + EXPECT_THAT(help, Not(HasSubstr("1"))); | ||
| 730 | + EXPECT_THAT(help, HasSubstr("4")); | ||
| 731 | +} | ||
| 732 | + | ||
| 733 | +TEST(THelp, ChangingCaselessSetDefaulted) { | ||
| 734 | + CLI::App app; | ||
| 735 | + | ||
| 736 | + std::set<std::string> vals{"1", "2", "3"}; | ||
| 737 | + std::string val = "2"; | ||
| 738 | + app.add_set_ignore_case("--val", val, vals, "", true); | ||
| 739 | + | ||
| 740 | + std::string help = app.help(); | ||
| 741 | + | ||
| 742 | + EXPECT_THAT(help, HasSubstr("1")); | ||
| 743 | + EXPECT_THAT(help, Not(HasSubstr("4"))); | ||
| 744 | + | ||
| 745 | + vals.insert("4"); | ||
| 746 | + vals.erase("1"); | ||
| 747 | + | ||
| 748 | + help = app.help(); | ||
| 749 | + | ||
| 750 | + EXPECT_THAT(help, Not(HasSubstr("1"))); | ||
| 751 | + EXPECT_THAT(help, HasSubstr("4")); | ||
| 752 | +} |