aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/cpp/test_util.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/cpp/test_util.cc')
-rw-r--r--src/test/cpp/test_util.cc21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/test/cpp/test_util.cc b/src/test/cpp/test_util.cc
index b50f74d79c..f56fd8798b 100644
--- a/src/test/cpp/test_util.cc
+++ b/src/test/cpp/test_util.cc
@@ -50,4 +50,25 @@ void ExpectIsUnaryOption(const StartupOptions* options,
EXPECT_FALSE(options->IsNullary("--no" + flag_name));
}
+void ParseStartupOptionsAndExpectWarning(
+ StartupOptions* startup_options,
+ const std::vector<std::string>& options_to_parse,
+ const std::string& expected_warning) {
+ std::vector<RcStartupFlag> flags;
+ for (std::string option : options_to_parse) {
+ flags.push_back(RcStartupFlag("", option));
+ }
+
+ std::string error;
+ EXPECT_EQ(blaze_exit_code::SUCCESS,
+ startup_options->ProcessArgs(flags, &error));
+ ASSERT_EQ("", error);
+
+ testing::internal::CaptureStderr();
+ startup_options->MaybeLogStartupOptionWarnings();
+ const std::string& output = testing::internal::GetCapturedStderr();
+
+ EXPECT_EQ(expected_warning, output);
+}
+
} // namespace blaze