You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kudu.apache.org by mp...@apache.org on 2017/05/23 23:58:05 UTC
kudu git commit: Improve ASSERT_STR_CONTAINS()
Repository: kudu
Updated Branches:
refs/heads/master d354693c1 -> fb6cc895b
Improve ASSERT_STR_CONTAINS()
This can just defer to built-in gtest functions instead of being
constructed by us. The benefit is that the implementation doesn't have
to wrap the macro in a do ... while loop so we are able to use syntax
like:
ASSERT_STR_CONTAINS(a, b) << extra_info;
whereas previously you couldn't append extra_info to the error message.
Also fix some uses of ASSERT_STR_CONTAINS that were missing semicolons.
Change-Id: Idea2abc0115e13dbb9f3853a5b821ccbf833d184
Reviewed-on: http://gerrit.cloudera.org:8080/6956
Tested-by: Kudu Jenkins
Reviewed-by: Todd Lipcon <to...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/kudu/repo
Commit: http://git-wip-us.apache.org/repos/asf/kudu/commit/fb6cc895
Tree: http://git-wip-us.apache.org/repos/asf/kudu/tree/fb6cc895
Diff: http://git-wip-us.apache.org/repos/asf/kudu/diff/fb6cc895
Branch: refs/heads/master
Commit: fb6cc895b9936dd6d4636be9a7eac59ef0590c80
Parents: d354693
Author: Mike Percy <mp...@apache.org>
Authored: Thu May 11 17:59:36 2017 -0700
Committer: Mike Percy <mp...@apache.org>
Committed: Tue May 23 23:50:54 2017 +0000
----------------------------------------------------------------------
.../master_replication-itest.cc | 2 +-
src/kudu/master/master-test.cc | 2 +-
src/kudu/util/debug-util-test.cc | 2 +-
src/kudu/util/flags-test.cc | 4 ++--
src/kudu/util/test_macros.h | 19 +++++--------------
5 files changed, 10 insertions(+), 19 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/kudu/blob/fb6cc895/src/kudu/integration-tests/master_replication-itest.cc
----------------------------------------------------------------------
diff --git a/src/kudu/integration-tests/master_replication-itest.cc b/src/kudu/integration-tests/master_replication-itest.cc
index 8a3f38a..2cfd0e8 100644
--- a/src/kudu/integration-tests/master_replication-itest.cc
+++ b/src/kudu/integration-tests/master_replication-itest.cc
@@ -265,7 +265,7 @@ TEST_F(MasterReplicationTest, TestMasterPeerSetsDontMatch) {
Status s = cluster_->mini_master(0)->WaitForCatalogManagerInit();
SCOPED_TRACE(s.ToString());
ASSERT_TRUE(s.IsInvalidArgument());
- ASSERT_STR_CONTAINS(s.ToString(), "55555")
+ ASSERT_STR_CONTAINS(s.ToString(), "55555");
}
} // namespace master
http://git-wip-us.apache.org/repos/asf/kudu/blob/fb6cc895/src/kudu/master/master-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/master/master-test.cc b/src/kudu/master/master-test.cc
index bc3aa99..1dfce4e 100644
--- a/src/kudu/master/master-test.cc
+++ b/src/kudu/master/master-test.cc
@@ -512,7 +512,7 @@ TEST_F(MasterTest, TestCreateTableCheckRangeInvariants) {
ASSERT_TRUE(s.IsInvalidArgument());
ASSERT_STR_CONTAINS(s.ToString(),
"Invalid argument: split rows may only contain values "
- "for range partitioned columns: val")
+ "for range partitioned columns: val");
}
{ // Overlapping bounds.
http://git-wip-us.apache.org/repos/asf/kudu/blob/fb6cc895/src/kudu/util/debug-util-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/util/debug-util-test.cc b/src/kudu/util/debug-util-test.cc
index 3122adb..74b5b79 100644
--- a/src/kudu/util/debug-util-test.cc
+++ b/src/kudu/util/debug-util-test.cc
@@ -93,7 +93,7 @@ TEST_F(DebugUtilTest, TestSignalStackTrace) {
// We have to loop a little bit because it takes a little while for the thread
// to start up and actually call our function.
ASSERT_EVENTUALLY([&]() {
- ASSERT_STR_CONTAINS(DumpThreadStack(t->tid()), "SleeperThread")
+ ASSERT_STR_CONTAINS(DumpThreadStack(t->tid()), "SleeperThread");
});
// Test that we can change the signal and that the stack traces still work,
http://git-wip-us.apache.org/repos/asf/kudu/blob/fb6cc895/src/kudu/util/flags-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/util/flags-test.cc b/src/kudu/util/flags-test.cc
index e7a90ef..dd5acd0 100644
--- a/src/kudu/util/flags-test.cc
+++ b/src/kudu/util/flags-test.cc
@@ -86,11 +86,11 @@ TEST_F(FlagsTest, TestNonDefaultFlags) {
std::string result = GetNonDefaultFlags(default_flags);
for (const auto& expected : expected_flags) {
- ASSERT_STR_CONTAINS(result, expected)
+ ASSERT_STR_CONTAINS(result, expected);
}
for (const auto& unexpected : unexpected_flags) {
- ASSERT_STR_NOT_CONTAINS(result, unexpected)
+ ASSERT_STR_NOT_CONTAINS(result, unexpected);
}
ASSERT_STR_CONTAINS(result, strings::Substitute("--test_sensitive_flag=$0",
http://git-wip-us.apache.org/repos/asf/kudu/blob/fb6cc895/src/kudu/util/test_macros.h
----------------------------------------------------------------------
diff --git a/src/kudu/util/test_macros.h b/src/kudu/util/test_macros.h
index 407de18..63cae5a 100644
--- a/src/kudu/util/test_macros.h
+++ b/src/kudu/util/test_macros.h
@@ -56,21 +56,12 @@
} \
} while (0);
-#define ASSERT_STR_CONTAINS(str, substr) do { \
- const std::string& _s = (str); \
- if (_s.find((substr)) == std::string::npos) { \
- FAIL() << "Expected to find substring '" << (substr) \
- << "'. Got: '" << _s << "'"; \
- } \
-} while (0);
+// Substring matches.
+#define ASSERT_STR_CONTAINS(str, substr) \
+ ASSERT_THAT(str, testing::HasSubstr(substr))
-#define ASSERT_STR_NOT_CONTAINS(str, substr) do { \
- const std::string& _s = (str); \
- if (_s.find((substr)) != std::string::npos) { \
- FAIL() << "Expected not to find substring '" << (substr) \
- << "'. Got: '" << _s << "'"; \
- } \
-} while (0);
+#define ASSERT_STR_NOT_CONTAINS(str, substr) \
+ ASSERT_THAT(str, testing::Not(testing::HasSubstr(substr)))
// Substring regular expressions in extended regex (POSIX) syntax.
#define ASSERT_STR_MATCHES(str, pattern) \