summaryrefslogtreecommitdiffstats
path: root/base/process_util_unittest.cc
diff options
context:
space:
mode:
authorviettrungluu@chromium.org <viettrungluu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-16 05:00:22 +0000
committerviettrungluu@chromium.org <viettrungluu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-16 05:00:22 +0000
commit838eb9df8b2796d968b884d81eece35e5dae8f87 (patch)
tree8322f934f1d3411b443ae17885d51dda8b24df35 /base/process_util_unittest.cc
parent59ac0f420158f315f6d95c75f1fe2de6e9d5edd9 (diff)
downloadchromium_src-838eb9df8b2796d968b884d81eece35e5dae8f87.zip
chromium_src-838eb9df8b2796d968b884d81eece35e5dae8f87.tar.gz
chromium_src-838eb9df8b2796d968b884d81eece35e5dae8f87.tar.bz2
Revert 52608 - Add and alternative GetAppOutput() to process_util that takes a timeout.
["base_unittests" didn't exit cleanly on "Chromium Linux x64" but was killed due to timeout.] Contributed by tessamac@chromium.org TEST=none BUG=47356 Review URL: http://codereview.chromium.org/2810014 Patch from Tessa MacDuff <tessamac@chromium.org>. TBR=viettrungluu@chromium.org, tessamac@chromium.org Review URL: http://codereview.chromium.org/3012004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52613 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/process_util_unittest.cc')
-rw-r--r--base/process_util_unittest.cc82
1 files changed, 8 insertions, 74 deletions
diff --git a/base/process_util_unittest.cc b/base/process_util_unittest.cc
index 675f38f..481c759 100644
--- a/base/process_util_unittest.cc
+++ b/base/process_util_unittest.cc
@@ -436,85 +436,19 @@ TEST_F(ProcessUtilTest, AlterEnvironment) {
delete[] e;
}
-TEST_F(ProcessUtilTest, GetAppOutput_Success) {
- std::string output;
- EXPECT_TRUE(base::GetAppOutput(CommandLine(FilePath(
- FILE_PATH_LITERAL("true"))), &output));
- EXPECT_STREQ("", output.c_str());
-
- CommandLine command_line(FilePath(FILE_PATH_LITERAL("echo")));
- command_line.AppendLooseValue(L"foobar42");
- EXPECT_TRUE(base::GetAppOutput(command_line, &output));
- EXPECT_STREQ("foobar42\n", output.c_str());
-}
-
-TEST_F(ProcessUtilTest, GetAppOutput_Failure) {
+TEST_F(ProcessUtilTest, GetAppOutput) {
std::string output;
- EXPECT_FALSE(base::GetAppOutput(CommandLine(FilePath(
- FILE_PATH_LITERAL("false"))), &output));
+ EXPECT_TRUE(base::GetAppOutput(CommandLine(FilePath("true")), &output));
EXPECT_STREQ("", output.c_str());
- // Make sure we capture output in case of failure.
- std::vector<std::string> argv;
- argv.push_back("/bin/sh");
- argv.push_back("-c");
- argv.push_back("echo hello && false");
- EXPECT_FALSE(base::GetAppOutput(CommandLine(argv), &output));
- EXPECT_STREQ("hello\n", output.c_str());
-}
-
-TEST_F(ProcessUtilTest, GetAppOutputWithTimeout_SuccessWithinTimeout) {
- CommandLine command_line(FilePath(FILE_PATH_LITERAL("echo")));
- command_line.AppendLooseValue(L"hello");
- std::string output;
- bool timed_out;
-
- EXPECT_TRUE(base::GetAppOutputWithTimeout(
- command_line, &output, &timed_out,
- std::numeric_limits<int>::max()));
- EXPECT_EQ("hello\n", output);
- EXPECT_FALSE(timed_out);
-}
+ EXPECT_FALSE(base::GetAppOutput(CommandLine(FilePath("false")), &output));
-TEST_F(ProcessUtilTest, GetAppOutputWithTimeout_FailureWithinTimeout) {
std::vector<std::string> argv;
- argv.push_back("/bin/sh");
- argv.push_back("-c");
- argv.push_back("echo hello && false");
- std::string output;
- bool timed_out;
-
- EXPECT_FALSE(base::GetAppOutputWithTimeout(
- CommandLine(argv), &output, &timed_out,
- std::numeric_limits<int>::max()));
- EXPECT_EQ("hello\n", output);
- EXPECT_FALSE(timed_out);
-}
-
-TEST_F(ProcessUtilTest, WaitForExitCodeWithTimeout) {
- CommandLine command_line(FilePath(FILE_PATH_LITERAL("sleep")));
- command_line.AppendLooseValue(L"10000");
-
- base::ProcessHandle process_handle;
- EXPECT_TRUE(base::LaunchApp(command_line, false, false,
- &process_handle));
- int exit_code = 42;
- EXPECT_FALSE(base::WaitForExitCodeWithTimeout(process_handle, &exit_code, 1));
- EXPECT_EQ(42, exit_code); // exit_code is unchanged if timeout triggers.
-}
-
-TEST_F(ProcessUtilTest, GetAppOutputWithTimeout_TimedOutWhileOutputing) {
- std::vector<std::string> argv;
- argv.push_back("/bin/sh");
- argv.push_back("-c");
- argv.push_back("echo asleep && sleep 10 && echo awake");
- std::string output;
- bool timed_out;
-
- EXPECT_FALSE(base::GetAppOutputWithTimeout(CommandLine(argv), &output,
- &timed_out, 1000));
- EXPECT_EQ("asleep\n", output); // Timed out before printing "awake".
- EXPECT_TRUE(timed_out);
+ argv.push_back("/bin/echo");
+ argv.push_back("-n");
+ argv.push_back("foobar42");
+ EXPECT_TRUE(base::GetAppOutput(CommandLine(argv), &output));
+ EXPECT_STREQ("foobar42", output.c_str());
}
TEST_F(ProcessUtilTest, GetAppOutputRestricted) {