aboutsummaryrefslogtreecommitdiffstats
path: root/test/gtest_unittest.cc
diff options
context:
space:
mode:
authorshiqian <shiqian@861a406c-534a-0410-8894-cb66d6ee9925>2008-07-25 04:06:16 +0000
committershiqian <shiqian@861a406c-534a-0410-8894-cb66d6ee9925>2008-07-25 04:06:16 +0000
commit15cbe5f70adaade1a8a11afc37601fc6606e7e0d (patch)
treea0987a8e162b6f65ca8e1be924abee44379a80b1 /test/gtest_unittest.cc
parentdbc56bf84bfa3fe27146b56f468a736941892dcc (diff)
downloadgoogletest-15cbe5f70adaade1a8a11afc37601fc6606e7e0d.tar.gz
googletest-15cbe5f70adaade1a8a11afc37601fc6606e7e0d.tar.bz2
googletest-15cbe5f70adaade1a8a11afc37601fc6606e7e0d.zip
Adds --gtest_print_test for printing the elapsed time of tests.
Diffstat (limited to 'test/gtest_unittest.cc')
-rw-r--r--test/gtest_unittest.cc95
1 files changed, 95 insertions, 0 deletions
diff --git a/test/gtest_unittest.cc b/test/gtest_unittest.cc
index 02799a4f..e88a8d02 100644
--- a/test/gtest_unittest.cc
+++ b/test/gtest_unittest.cc
@@ -808,6 +808,7 @@ class GTestFlagSaverTest : public testing::Test {
testing::GTEST_FLAG(filter) = "";
testing::GTEST_FLAG(list_tests) = false;
testing::GTEST_FLAG(output) = "";
+ testing::GTEST_FLAG(print_time) = false;
testing::GTEST_FLAG(repeat) = 1;
}
@@ -827,6 +828,7 @@ class GTestFlagSaverTest : public testing::Test {
EXPECT_STREQ("", testing::GTEST_FLAG(filter).c_str());
EXPECT_FALSE(testing::GTEST_FLAG(list_tests));
EXPECT_STREQ("", testing::GTEST_FLAG(output).c_str());
+ EXPECT_FALSE(testing::GTEST_FLAG(print_time));
EXPECT_EQ(1, testing::GTEST_FLAG(repeat));
testing::GTEST_FLAG(break_on_failure) = true;
@@ -835,6 +837,7 @@ class GTestFlagSaverTest : public testing::Test {
testing::GTEST_FLAG(filter) = "abc";
testing::GTEST_FLAG(list_tests) = true;
testing::GTEST_FLAG(output) = "xml:foo.xml";
+ testing::GTEST_FLAG(print_time) = true;
testing::GTEST_FLAG(repeat) = 100;
}
private:
@@ -3471,6 +3474,7 @@ struct Flags {
filter(""),
list_tests(false),
output(""),
+ print_time(false),
repeat(1) {}
// Factory methods.
@@ -3515,6 +3519,14 @@ struct Flags {
return flags;
}
+ // Creates a Flags struct where the gtest_print_time flag has the given
+ // value.
+ static Flags PrintTime(bool print_time) {
+ Flags flags;
+ flags.print_time = print_time;
+ return flags;
+ }
+
// Creates a Flags struct where the gtest_repeat flag has the given
// value.
static Flags Repeat(Int32 repeat) {
@@ -3529,6 +3541,7 @@ struct Flags {
const char* filter;
bool list_tests;
const char* output;
+ bool print_time;
Int32 repeat;
};
@@ -3542,6 +3555,7 @@ class InitGoogleTestTest : public testing::Test {
GTEST_FLAG(filter) = "";
GTEST_FLAG(list_tests) = false;
GTEST_FLAG(output) = "";
+ GTEST_FLAG(print_time) = false;
GTEST_FLAG(repeat) = 1;
}
@@ -3563,6 +3577,7 @@ class InitGoogleTestTest : public testing::Test {
EXPECT_STREQ(expected.filter, GTEST_FLAG(filter).c_str());
EXPECT_EQ(expected.list_tests, GTEST_FLAG(list_tests));
EXPECT_STREQ(expected.output, GTEST_FLAG(output).c_str());
+ EXPECT_EQ(expected.print_time, GTEST_FLAG(print_time));
EXPECT_EQ(expected.repeat, GTEST_FLAG(repeat));
}
@@ -3950,6 +3965,86 @@ TEST_F(InitGoogleTestTest, OutputXmlDirectory) {
TEST_PARSING_FLAGS(argv, argv2, Flags::Output("xml:directory/path/"));
}
+// Tests having a --gtest_print_time flag
+TEST_F(InitGoogleTestTest, PrintTimeFlag) {
+ const char* argv[] = {
+ "foo.exe",
+ "--gtest_print_time",
+ NULL
+ };
+
+ const char* argv2[] = {
+ "foo.exe",
+ NULL
+ };
+
+ TEST_PARSING_FLAGS(argv, argv2, Flags::PrintTime(true));
+}
+
+// Tests having a --gtest_print_time flag with a "true" value
+TEST_F(InitGoogleTestTest, PrintTimeTrue) {
+ const char* argv[] = {
+ "foo.exe",
+ "--gtest_print_time=1",
+ NULL
+ };
+
+ const char* argv2[] = {
+ "foo.exe",
+ NULL
+ };
+
+ TEST_PARSING_FLAGS(argv, argv2, Flags::PrintTime(true));
+}
+
+// Tests having a --gtest_print_time flag with a "false" value
+TEST_F(InitGoogleTestTest, PrintTimeFalse) {
+ const char* argv[] = {
+ "foo.exe",
+ "--gtest_print_time=0",
+ NULL
+ };
+
+ const char* argv2[] = {
+ "foo.exe",
+ NULL
+ };
+
+ TEST_PARSING_FLAGS(argv, argv2, Flags::PrintTime(false));
+}
+
+// Tests parsing --gtest_print_time=f.
+TEST_F(InitGoogleTestTest, PrintTimeFalse_f) {
+ const char* argv[] = {
+ "foo.exe",
+ "--gtest_print_time=f",
+ NULL
+ };
+
+ const char* argv2[] = {
+ "foo.exe",
+ NULL
+ };
+
+ TEST_PARSING_FLAGS(argv, argv2, Flags::PrintTime(false));
+}
+
+// Tests parsing --gtest_print_time=F.
+TEST_F(InitGoogleTestTest, PrintTimeFalse_F) {
+ const char* argv[] = {
+ "foo.exe",
+ "--gtest_print_time=F",
+ NULL
+ };
+
+ const char* argv2[] = {
+ "foo.exe",
+ NULL
+ };
+
+ TEST_PARSING_FLAGS(argv, argv2, Flags::PrintTime(false));
+}
+
// Tests parsing --gtest_repeat=number
TEST_F(InitGoogleTestTest, Repeat) {
const char* argv[] = {