mirror of
https://github.com/google/googletest.git
synced 2026-06-15 08:26:11 +08:00
Strip help flag during flag parsing
This commit is contained in:
parent
a721f1b20c
commit
3df62357ab
@ -6868,9 +6868,12 @@ void ParseGoogleTestFlagsOnlyImpl(int* argc, CharType** argv) {
|
||||
LoadFlagsFromFile(flagfile_value);
|
||||
remove_flag = true;
|
||||
#endif // GTEST_USE_OWN_FLAGFILE_FLAG_ && GTEST_HAS_FILE_SYSTEM
|
||||
} else if (arg_string == "--help" || HasGoogleTestFlagPrefix(arg)) {
|
||||
// Both help flag and unrecognized Google Test flags (excluding
|
||||
// internal ones) trigger help display.
|
||||
} else if (arg_string == "--help") {
|
||||
g_help_flag = true;
|
||||
remove_flag = true;
|
||||
} else if (HasGoogleTestFlagPrefix(arg)) {
|
||||
// Unrecognized Google Test flags (excluding internal ones) trigger help
|
||||
// display, but remain available for other flag parsers.
|
||||
g_help_flag = true;
|
||||
}
|
||||
|
||||
|
||||
@ -5942,6 +5942,15 @@ TEST_F(ParseFlagsTest, UnrecognizedFlag) {
|
||||
GTEST_TEST_PARSING_FLAGS_(argv, argv2, flags, false);
|
||||
}
|
||||
|
||||
// Tests having a --help flag on the command line.
|
||||
TEST_F(ParseFlagsTest, HelpFlag) {
|
||||
const char* argv[] = {"foo.exe", "--help", "bar", nullptr};
|
||||
|
||||
const char* argv2[] = {"foo.exe", "bar", nullptr};
|
||||
|
||||
GTEST_TEST_PARSING_FLAGS_(argv, argv2, Flags(), true);
|
||||
}
|
||||
|
||||
// Tests having a --gtest_list_tests flag
|
||||
TEST_F(ParseFlagsTest, ListTestsFlag) {
|
||||
const char* argv[] = {"foo.exe", "--gtest_list_tests", nullptr};
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user