pw_assert: Add short name option

This adds a flag PW_ASSERT_USE_SHORT_NAMES to enable raw CHECK and CRASH
macros without the PW_ prefix.

Change-Id: I1337b6edaa8b8cd834a02fd87c5a1419e84902b5
diff --git a/pw_assert/assert_test.cc b/pw_assert/assert_test.cc
index 89cd39b..5532f2e 100644
--- a/pw_assert/assert_test.cc
+++ b/pw_assert/assert_test.cc
@@ -19,6 +19,7 @@
 // TODO(pwbug/88): Add verification of the actually logged statements.
 
 // clang-format off
+#define PW_ASSERT_USE_SHORT_NAMES 1
 #include "pw_assert/assert.h"
 // clang-format on
 
@@ -166,4 +167,31 @@
   EXPECT_EQ(global_state_for_multi_evaluate_test, 2);
 }
 
+// Note: This requires enabling PW_ASSERT_USE_SHORT_NAMES 1 above.
+TEST(Check, ShortNamesWork) {
+  MAYBE_SKIP_TEST;
+
+  // Crash
+  CRASH(FAIL_IF_HIDDEN);
+  CRASH(FAIL_IF_HIDDEN_ARGS, z);
+
+  // Check
+  CHECK(true, FAIL_IF_DISPLAYED);
+  CHECK(true, FAIL_IF_DISPLAYED_ARGS, z);
+  CHECK(false, FAIL_IF_HIDDEN);
+  CHECK(false, FAIL_IF_HIDDEN_ARGS, z);
+
+  // Check with binary comparison
+  int x_int = 50;
+  int y_int = 66;
+
+  CHECK_INT_LE(Add3(1, 2, 3), y_int);
+  CHECK_INT_LE(x_int, Add3(1, 2, 3));
+
+  CHECK_INT_LE(Add3(1, 2, 3), y_int, FAIL_IF_DISPLAYED);
+  CHECK_INT_LE(x_int, Add3(1, 2, 3), FAIL_IF_DISPLAYED_ARGS, z);
+
+  CHECK_INT_LE(Add3(1, 2, 3), Add3(1, 2, 3), "INT: " FAIL_IF_DISPLAYED);
+  CHECK_INT_LE(x_int, y_int, "INT: " FAIL_IF_DISPLAYED_ARGS, z);
+}
 }  // namespace