[libc] Support StringView equality tests
authorMichael Jones <michaelrj@google.com>
Fri, 5 Aug 2022 20:40:45 +0000 (13:40 -0700)
committerMichael Jones <michaelrj@google.com>
Wed, 10 Aug 2022 18:23:53 +0000 (11:23 -0700)
Previously, the integer_to_string tests used EXPECT_TRUE(.equals)
which doesn't have useful error messages. Now they properly check
equality with the EXPECT_EQ macro, which allows for comparing the
strings more naturally.

Reviewed By: sivachandra

Differential Revision: https://reviews.llvm.org/D131300

libc/test/src/__support/integer_to_string_test.cpp
libc/utils/UnitTest/LibcTest.cpp
libc/utils/UnitTest/LibcTest.h

index d328bf3..77123ff 100644 (file)
@@ -17,235 +17,169 @@ using __llvm_libc::integer_to_string;
 using __llvm_libc::cpp::StringView;
 
 TEST(LlvmLibcIntegerToStringTest, UINT8) {
-  EXPECT_TRUE(integer_to_string(uint8_t(0)).str().equals(StringView("0")));
-  EXPECT_TRUE(integer_to_string(uint8_t(1)).str().equals(StringView("1")));
-  EXPECT_TRUE(integer_to_string(uint8_t(12)).str().equals(StringView("12")));
-  EXPECT_TRUE(integer_to_string(uint8_t(123)).str().equals(StringView("123")));
-  EXPECT_TRUE(
-      integer_to_string(uint8_t(UINT8_MAX)).str().equals(StringView("255")));
-  EXPECT_TRUE(integer_to_string(uint8_t(-1)).str().equals(StringView("255")));
+  EXPECT_EQ(integer_to_string(uint8_t(0)).str(), (StringView("0")));
+  EXPECT_EQ(integer_to_string(uint8_t(1)).str(), (StringView("1")));
+  EXPECT_EQ(integer_to_string(uint8_t(12)).str(), (StringView("12")));
+  EXPECT_EQ(integer_to_string(uint8_t(123)).str(), (StringView("123")));
+  EXPECT_EQ(integer_to_string(uint8_t(UINT8_MAX)).str(), (StringView("255")));
+  EXPECT_EQ(integer_to_string(uint8_t(-1)).str(), (StringView("255")));
 }
 
 TEST(LlvmLibcIntegerToStringTest, INT8) {
-  EXPECT_TRUE(integer_to_string(int8_t(0)).str().equals(StringView("0")));
-  EXPECT_TRUE(integer_to_string(int8_t(1)).str().equals(StringView("1")));
-  EXPECT_TRUE(integer_to_string(int8_t(12)).str().equals(StringView("12")));
-  EXPECT_TRUE(integer_to_string(int8_t(123)).str().equals(StringView("123")));
-  EXPECT_TRUE(integer_to_string(int8_t(-12)).str().equals(StringView("-12")));
-  EXPECT_TRUE(integer_to_string(int8_t(-123)).str().equals(StringView("-123")));
-  EXPECT_TRUE(
-      integer_to_string(int8_t(INT8_MAX)).str().equals(StringView("127")));
-  EXPECT_TRUE(
-      integer_to_string(int8_t(INT8_MIN)).str().equals(StringView("-128")));
+  EXPECT_EQ(integer_to_string(int8_t(0)).str(), (StringView("0")));
+  EXPECT_EQ(integer_to_string(int8_t(1)).str(), (StringView("1")));
+  EXPECT_EQ(integer_to_string(int8_t(12)).str(), (StringView("12")));
+  EXPECT_EQ(integer_to_string(int8_t(123)).str(), (StringView("123")));
+  EXPECT_EQ(integer_to_string(int8_t(-12)).str(), (StringView("-12")));
+  EXPECT_EQ(integer_to_string(int8_t(-123)).str(), (StringView("-123")));
+  EXPECT_EQ(integer_to_string(int8_t(INT8_MAX)).str(), (StringView("127")));
+  EXPECT_EQ(integer_to_string(int8_t(INT8_MIN)).str(), (StringView("-128")));
 }
 
 TEST(LlvmLibcIntegerToStringTest, UINT16) {
-  EXPECT_TRUE(integer_to_string(uint16_t(0)).str().equals(StringView("0")));
-  EXPECT_TRUE(integer_to_string(uint16_t(1)).str().equals(StringView("1")));
-  EXPECT_TRUE(integer_to_string(uint16_t(12)).str().equals(StringView("12")));
-  EXPECT_TRUE(integer_to_string(uint16_t(123)).str().equals(StringView("123")));
-  EXPECT_TRUE(
-      integer_to_string(uint16_t(1234)).str().equals(StringView("1234")));
-  EXPECT_TRUE(
-      integer_to_string(uint16_t(12345)).str().equals(StringView("12345")));
-  EXPECT_TRUE(integer_to_string(uint16_t(UINT16_MAX))
-                  .str()
-                  .equals(StringView("65535")));
-  EXPECT_TRUE(
-      integer_to_string(uint16_t(-1)).str().equals(StringView("65535")));
+  EXPECT_EQ(integer_to_string(uint16_t(0)).str(), (StringView("0")));
+  EXPECT_EQ(integer_to_string(uint16_t(1)).str(), (StringView("1")));
+  EXPECT_EQ(integer_to_string(uint16_t(12)).str(), (StringView("12")));
+  EXPECT_EQ(integer_to_string(uint16_t(123)).str(), (StringView("123")));
+  EXPECT_EQ(integer_to_string(uint16_t(1234)).str(), (StringView("1234")));
+  EXPECT_EQ(integer_to_string(uint16_t(12345)).str(), (StringView("12345")));
+  EXPECT_EQ(integer_to_string(uint16_t(UINT16_MAX)).str(),
+            (StringView("65535")));
+  EXPECT_EQ(integer_to_string(uint16_t(-1)).str(), (StringView("65535")));
 }
 
 TEST(LlvmLibcIntegerToStringTest, INT16) {
-  EXPECT_TRUE(integer_to_string(int16_t(0)).str().equals(StringView("0")));
-  EXPECT_TRUE(integer_to_string(int16_t(1)).str().equals(StringView("1")));
-  EXPECT_TRUE(integer_to_string(int16_t(12)).str().equals(StringView("12")));
-  EXPECT_TRUE(integer_to_string(int16_t(123)).str().equals(StringView("123")));
-  EXPECT_TRUE(
-      integer_to_string(int16_t(1234)).str().equals(StringView("1234")));
-  EXPECT_TRUE(
-      integer_to_string(int16_t(12345)).str().equals(StringView("12345")));
-  EXPECT_TRUE(integer_to_string(int16_t(-1)).str().equals(StringView("-1")));
-  EXPECT_TRUE(integer_to_string(int16_t(-12)).str().equals(StringView("-12")));
-  EXPECT_TRUE(
-      integer_to_string(int16_t(-123)).str().equals(StringView("-123")));
-  EXPECT_TRUE(
-      integer_to_string(int16_t(-1234)).str().equals(StringView("-1234")));
-  EXPECT_TRUE(
-      integer_to_string(int16_t(-12345)).str().equals(StringView("-12345")));
-  EXPECT_TRUE(
-      integer_to_string(int16_t(INT16_MAX)).str().equals(StringView("32767")));
-  EXPECT_TRUE(
-      integer_to_string(int16_t(INT16_MIN)).str().equals(StringView("-32768")));
+  EXPECT_EQ(integer_to_string(int16_t(0)).str(), (StringView("0")));
+  EXPECT_EQ(integer_to_string(int16_t(1)).str(), (StringView("1")));
+  EXPECT_EQ(integer_to_string(int16_t(12)).str(), (StringView("12")));
+  EXPECT_EQ(integer_to_string(int16_t(123)).str(), (StringView("123")));
+  EXPECT_EQ(integer_to_string(int16_t(1234)).str(), (StringView("1234")));
+  EXPECT_EQ(integer_to_string(int16_t(12345)).str(), (StringView("12345")));
+  EXPECT_EQ(integer_to_string(int16_t(-1)).str(), (StringView("-1")));
+  EXPECT_EQ(integer_to_string(int16_t(-12)).str(), (StringView("-12")));
+  EXPECT_EQ(integer_to_string(int16_t(-123)).str(), (StringView("-123")));
+  EXPECT_EQ(integer_to_string(int16_t(-1234)).str(), (StringView("-1234")));
+  EXPECT_EQ(integer_to_string(int16_t(-12345)).str(), (StringView("-12345")));
+  EXPECT_EQ(integer_to_string(int16_t(INT16_MAX)).str(), (StringView("32767")));
+  EXPECT_EQ(integer_to_string(int16_t(INT16_MIN)).str(),
+            (StringView("-32768")));
 }
 
 TEST(LlvmLibcIntegerToStringTest, UINT32) {
-  EXPECT_TRUE(integer_to_string(uint32_t(0)).str().equals(StringView("0")));
-  EXPECT_TRUE(integer_to_string(uint32_t(1)).str().equals(StringView("1")));
-  EXPECT_TRUE(integer_to_string(uint32_t(12)).str().equals(StringView("12")));
-  EXPECT_TRUE(integer_to_string(uint32_t(123)).str().equals(StringView("123")));
-  EXPECT_TRUE(
-      integer_to_string(uint32_t(1234)).str().equals(StringView("1234")));
-  EXPECT_TRUE(
-      integer_to_string(uint32_t(12345)).str().equals(StringView("12345")));
-  EXPECT_TRUE(
-      integer_to_string(uint32_t(123456)).str().equals(StringView("123456")));
-  EXPECT_TRUE(
-      integer_to_string(uint32_t(1234567)).str().equals(StringView("1234567")));
-  EXPECT_TRUE(integer_to_string(uint32_t(12345678))
-                  .str()
-                  .equals(StringView("12345678")));
-  EXPECT_TRUE(integer_to_string(uint32_t(123456789))
-                  .str()
-                  .equals(StringView("123456789")));
-  EXPECT_TRUE(integer_to_string(uint32_t(1234567890))
-                  .str()
-                  .equals(StringView("1234567890")));
-  EXPECT_TRUE(integer_to_string(uint32_t(UINT32_MAX))
-                  .str()
-                  .equals(StringView("4294967295")));
-  EXPECT_TRUE(
-      integer_to_string(uint32_t(-1)).str().equals(StringView("4294967295")));
+  EXPECT_EQ(integer_to_string(uint32_t(0)).str(), (StringView("0")));
+  EXPECT_EQ(integer_to_string(uint32_t(1)).str(), (StringView("1")));
+  EXPECT_EQ(integer_to_string(uint32_t(12)).str(), (StringView("12")));
+  EXPECT_EQ(integer_to_string(uint32_t(123)).str(), (StringView("123")));
+  EXPECT_EQ(integer_to_string(uint32_t(1234)).str(), (StringView("1234")));
+  EXPECT_EQ(integer_to_string(uint32_t(12345)).str(), (StringView("12345")));
+  EXPECT_EQ(integer_to_string(uint32_t(123456)).str(), (StringView("123456")));
+  EXPECT_EQ(integer_to_string(uint32_t(1234567)).str(),
+            (StringView("1234567")));
+  EXPECT_EQ(integer_to_string(uint32_t(12345678)).str(),
+            (StringView("12345678")));
+  EXPECT_EQ(integer_to_string(uint32_t(123456789)).str(),
+            (StringView("123456789")));
+  EXPECT_EQ(integer_to_string(uint32_t(1234567890)).str(),
+            (StringView("1234567890")));
+  EXPECT_EQ(integer_to_string(uint32_t(UINT32_MAX)).str(),
+            (StringView("4294967295")));
+  EXPECT_EQ(integer_to_string(uint32_t(-1)).str(), (StringView("4294967295")));
 }
 
 TEST(LlvmLibcIntegerToStringTest, INT32) {
-  EXPECT_TRUE(integer_to_string(int32_t(0)).str().equals(StringView("0")));
-  EXPECT_TRUE(integer_to_string(int32_t(1)).str().equals(StringView("1")));
-  EXPECT_TRUE(integer_to_string(int32_t(12)).str().equals(StringView("12")));
-  EXPECT_TRUE(integer_to_string(int32_t(123)).str().equals(StringView("123")));
-  EXPECT_TRUE(
-      integer_to_string(int32_t(1234)).str().equals(StringView("1234")));
-  EXPECT_TRUE(
-      integer_to_string(int32_t(12345)).str().equals(StringView("12345")));
-  EXPECT_TRUE(
-      integer_to_string(int32_t(123456)).str().equals(StringView("123456")));
-  EXPECT_TRUE(
-      integer_to_string(int32_t(1234567)).str().equals(StringView("1234567")));
-  EXPECT_TRUE(integer_to_string(int32_t(12345678))
-                  .str()
-                  .equals(StringView("12345678")));
-  EXPECT_TRUE(integer_to_string(int32_t(123456789))
-                  .str()
-                  .equals(StringView("123456789")));
-  EXPECT_TRUE(integer_to_string(int32_t(1234567890))
-                  .str()
-                  .equals(StringView("1234567890")));
-  EXPECT_TRUE(integer_to_string(int32_t(-1)).str().equals(StringView("-1")));
-  EXPECT_TRUE(integer_to_string(int32_t(-12)).str().equals(StringView("-12")));
-  EXPECT_TRUE(
-      integer_to_string(int32_t(-123)).str().equals(StringView("-123")));
-  EXPECT_TRUE(
-      integer_to_string(int32_t(-1234)).str().equals(StringView("-1234")));
-  EXPECT_TRUE(
-      integer_to_string(int32_t(-12345)).str().equals(StringView("-12345")));
-  EXPECT_TRUE(
-      integer_to_string(int32_t(-123456)).str().equals(StringView("-123456")));
-  EXPECT_TRUE(integer_to_string(int32_t(-1234567))
-                  .str()
-                  .equals(StringView("-1234567")));
-  EXPECT_TRUE(integer_to_string(int32_t(-12345678))
-                  .str()
-                  .equals(StringView("-12345678")));
-  EXPECT_TRUE(integer_to_string(int32_t(-123456789))
-                  .str()
-                  .equals(StringView("-123456789")));
-  EXPECT_TRUE(integer_to_string(int32_t(-1234567890))
-                  .str()
-                  .equals(StringView("-1234567890")));
-  EXPECT_TRUE(integer_to_string(int32_t(INT32_MAX))
-                  .str()
-                  .equals(StringView("2147483647")));
-  EXPECT_TRUE(integer_to_string(int32_t(INT32_MIN))
-                  .str()
-                  .equals(StringView("-2147483648")));
+  EXPECT_EQ(integer_to_string(int32_t(0)).str(), (StringView("0")));
+  EXPECT_EQ(integer_to_string(int32_t(1)).str(), (StringView("1")));
+  EXPECT_EQ(integer_to_string(int32_t(12)).str(), (StringView("12")));
+  EXPECT_EQ(integer_to_string(int32_t(123)).str(), (StringView("123")));
+  EXPECT_EQ(integer_to_string(int32_t(1234)).str(), (StringView("1234")));
+  EXPECT_EQ(integer_to_string(int32_t(12345)).str(), (StringView("12345")));
+  EXPECT_EQ(integer_to_string(int32_t(123456)).str(), (StringView("123456")));
+  EXPECT_EQ(integer_to_string(int32_t(1234567)).str(), (StringView("1234567")));
+  EXPECT_EQ(integer_to_string(int32_t(12345678)).str(),
+            (StringView("12345678")));
+  EXPECT_EQ(integer_to_string(int32_t(123456789)).str(),
+            (StringView("123456789")));
+  EXPECT_EQ(integer_to_string(int32_t(1234567890)).str(),
+            (StringView("1234567890")));
+  EXPECT_EQ(integer_to_string(int32_t(-1)).str(), (StringView("-1")));
+  EXPECT_EQ(integer_to_string(int32_t(-12)).str(), (StringView("-12")));
+  EXPECT_EQ(integer_to_string(int32_t(-123)).str(), (StringView("-123")));
+  EXPECT_EQ(integer_to_string(int32_t(-1234)).str(), (StringView("-1234")));
+  EXPECT_EQ(integer_to_string(int32_t(-12345)).str(), (StringView("-12345")));
+  EXPECT_EQ(integer_to_string(int32_t(-123456)).str(), (StringView("-123456")));
+  EXPECT_EQ(integer_to_string(int32_t(-1234567)).str(),
+            (StringView("-1234567")));
+  EXPECT_EQ(integer_to_string(int32_t(-12345678)).str(),
+            (StringView("-12345678")));
+  EXPECT_EQ(integer_to_string(int32_t(-123456789)).str(),
+            (StringView("-123456789")));
+  EXPECT_EQ(integer_to_string(int32_t(-1234567890)).str(),
+            (StringView("-1234567890")));
+  EXPECT_EQ(integer_to_string(int32_t(INT32_MAX)).str(),
+            (StringView("2147483647")));
+  EXPECT_EQ(integer_to_string(int32_t(INT32_MIN)).str(),
+            (StringView("-2147483648")));
 }
 
 TEST(LlvmLibcIntegerToStringTest, UINT64) {
-  EXPECT_TRUE(integer_to_string(uint64_t(0)).str().equals(StringView("0")));
-  EXPECT_TRUE(integer_to_string(uint64_t(1)).str().equals(StringView("1")));
-  EXPECT_TRUE(integer_to_string(uint64_t(12)).str().equals(StringView("12")));
-  EXPECT_TRUE(integer_to_string(uint64_t(123)).str().equals(StringView("123")));
-  EXPECT_TRUE(
-      integer_to_string(uint64_t(1234)).str().equals(StringView("1234")));
-  EXPECT_TRUE(
-      integer_to_string(uint64_t(12345)).str().equals(StringView("12345")));
-  EXPECT_TRUE(
-      integer_to_string(uint64_t(123456)).str().equals(StringView("123456")));
-  EXPECT_TRUE(
-      integer_to_string(uint64_t(1234567)).str().equals(StringView("1234567")));
-  EXPECT_TRUE(integer_to_string(uint64_t(12345678))
-                  .str()
-                  .equals(StringView("12345678")));
-  EXPECT_TRUE(integer_to_string(uint64_t(123456789))
-                  .str()
-                  .equals(StringView("123456789")));
-  EXPECT_TRUE(integer_to_string(uint64_t(1234567890))
-                  .str()
-                  .equals(StringView("1234567890")));
-  EXPECT_TRUE(integer_to_string(uint64_t(1234567890123456789))
-                  .str()
-                  .equals(StringView("1234567890123456789")));
-  EXPECT_TRUE(integer_to_string(uint64_t(UINT64_MAX))
-                  .str()
-                  .equals(StringView("18446744073709551615")));
-  EXPECT_TRUE(integer_to_string(uint64_t(-1))
-                  .str()
-                  .equals(StringView("18446744073709551615")));
+  EXPECT_EQ(integer_to_string(uint64_t(0)).str(), (StringView("0")));
+  EXPECT_EQ(integer_to_string(uint64_t(1)).str(), (StringView("1")));
+  EXPECT_EQ(integer_to_string(uint64_t(12)).str(), (StringView("12")));
+  EXPECT_EQ(integer_to_string(uint64_t(123)).str(), (StringView("123")));
+  EXPECT_EQ(integer_to_string(uint64_t(1234)).str(), (StringView("1234")));
+  EXPECT_EQ(integer_to_string(uint64_t(12345)).str(), (StringView("12345")));
+  EXPECT_EQ(integer_to_string(uint64_t(123456)).str(), (StringView("123456")));
+  EXPECT_EQ(integer_to_string(uint64_t(1234567)).str(),
+            (StringView("1234567")));
+  EXPECT_EQ(integer_to_string(uint64_t(12345678)).str(),
+            (StringView("12345678")));
+  EXPECT_EQ(integer_to_string(uint64_t(123456789)).str(),
+            (StringView("123456789")));
+  EXPECT_EQ(integer_to_string(uint64_t(1234567890)).str(),
+            (StringView("1234567890")));
+  EXPECT_EQ(integer_to_string(uint64_t(1234567890123456789)).str(),
+            (StringView("1234567890123456789")));
+  EXPECT_EQ(integer_to_string(uint64_t(UINT64_MAX)).str(),
+            (StringView("18446744073709551615")));
+  EXPECT_EQ(integer_to_string(uint64_t(-1)).str(),
+            (StringView("18446744073709551615")));
 }
 
 TEST(LlvmLibcIntegerToStringTest, INT64) {
-  EXPECT_TRUE(integer_to_string(int64_t(0)).str().equals(StringView("0")));
-  EXPECT_TRUE(integer_to_string(int64_t(1)).str().equals(StringView("1")));
-  EXPECT_TRUE(integer_to_string(int64_t(12)).str().equals(StringView("12")));
-  EXPECT_TRUE(integer_to_string(int64_t(123)).str().equals(StringView("123")));
-  EXPECT_TRUE(
-      integer_to_string(int64_t(1234)).str().equals(StringView("1234")));
-  EXPECT_TRUE(
-      integer_to_string(int64_t(12345)).str().equals(StringView("12345")));
-  EXPECT_TRUE(
-      integer_to_string(int64_t(123456)).str().equals(StringView("123456")));
-  EXPECT_TRUE(
-      integer_to_string(int64_t(1234567)).str().equals(StringView("1234567")));
-  EXPECT_TRUE(integer_to_string(int64_t(12345678))
-                  .str()
-                  .equals(StringView("12345678")));
-  EXPECT_TRUE(integer_to_string(int64_t(123456789))
-                  .str()
-                  .equals(StringView("123456789")));
-  EXPECT_TRUE(integer_to_string(int64_t(1234567890))
-                  .str()
-                  .equals(StringView("1234567890")));
-  EXPECT_TRUE(integer_to_string(int64_t(1234567890123456789))
-                  .str()
-                  .equals(StringView("1234567890123456789")));
-  EXPECT_TRUE(integer_to_string(int64_t(-1)).str().equals(StringView("-1")));
-  EXPECT_TRUE(integer_to_string(int64_t(-12)).str().equals(StringView("-12")));
-  EXPECT_TRUE(
-      integer_to_string(int64_t(-123)).str().equals(StringView("-123")));
-  EXPECT_TRUE(
-      integer_to_string(int64_t(-1234)).str().equals(StringView("-1234")));
-  EXPECT_TRUE(
-      integer_to_string(int64_t(-12345)).str().equals(StringView("-12345")));
-  EXPECT_TRUE(
-      integer_to_string(int64_t(-123456)).str().equals(StringView("-123456")));
-  EXPECT_TRUE(integer_to_string(int64_t(-1234567))
-                  .str()
-                  .equals(StringView("-1234567")));
-  EXPECT_TRUE(integer_to_string(int64_t(-12345678))
-                  .str()
-                  .equals(StringView("-12345678")));
-  EXPECT_TRUE(integer_to_string(int64_t(-123456789))
-                  .str()
-                  .equals(StringView("-123456789")));
-  EXPECT_TRUE(integer_to_string(int64_t(-1234567890))
-                  .str()
-                  .equals(StringView("-1234567890")));
-  EXPECT_TRUE(integer_to_string(int64_t(-1234567890123456789))
-                  .str()
-                  .equals(StringView("-1234567890123456789")));
-  EXPECT_TRUE(integer_to_string(int64_t(INT64_MAX))
-                  .str()
-                  .equals(StringView("9223372036854775807")));
-  EXPECT_TRUE(integer_to_string(int64_t(INT64_MIN))
-                  .str()
-                  .equals(StringView("-9223372036854775808")));
+  EXPECT_EQ(integer_to_string(int64_t(0)).str(), (StringView("0")));
+  EXPECT_EQ(integer_to_string(int64_t(1)).str(), (StringView("1")));
+  EXPECT_EQ(integer_to_string(int64_t(12)).str(), (StringView("12")));
+  EXPECT_EQ(integer_to_string(int64_t(123)).str(), (StringView("123")));
+  EXPECT_EQ(integer_to_string(int64_t(1234)).str(), (StringView("1234")));
+  EXPECT_EQ(integer_to_string(int64_t(12345)).str(), (StringView("12345")));
+  EXPECT_EQ(integer_to_string(int64_t(123456)).str(), (StringView("123456")));
+  EXPECT_EQ(integer_to_string(int64_t(1234567)).str(), (StringView("1234567")));
+  EXPECT_EQ(integer_to_string(int64_t(12345678)).str(),
+            (StringView("12345678")));
+  EXPECT_EQ(integer_to_string(int64_t(123456789)).str(),
+            (StringView("123456789")));
+  EXPECT_EQ(integer_to_string(int64_t(1234567890)).str(),
+            (StringView("1234567890")));
+  EXPECT_EQ(integer_to_string(int64_t(1234567890123456789)).str(),
+            (StringView("1234567890123456789")));
+  EXPECT_EQ(integer_to_string(int64_t(-1)).str(), (StringView("-1")));
+  EXPECT_EQ(integer_to_string(int64_t(-12)).str(), (StringView("-12")));
+  EXPECT_EQ(integer_to_string(int64_t(-123)).str(), (StringView("-123")));
+  EXPECT_EQ(integer_to_string(int64_t(-1234)).str(), (StringView("-1234")));
+  EXPECT_EQ(integer_to_string(int64_t(-12345)).str(), (StringView("-12345")));
+  EXPECT_EQ(integer_to_string(int64_t(-123456)).str(), (StringView("-123456")));
+  EXPECT_EQ(integer_to_string(int64_t(-1234567)).str(),
+            (StringView("-1234567")));
+  EXPECT_EQ(integer_to_string(int64_t(-12345678)).str(),
+            (StringView("-12345678")));
+  EXPECT_EQ(integer_to_string(int64_t(-123456789)).str(),
+            (StringView("-123456789")));
+  EXPECT_EQ(integer_to_string(int64_t(-1234567890)).str(),
+            (StringView("-1234567890")));
+  EXPECT_EQ(integer_to_string(int64_t(-1234567890123456789)).str(),
+            (StringView("-1234567890123456789")));
+  EXPECT_EQ(integer_to_string(int64_t(INT64_MAX)).str(),
+            (StringView("9223372036854775807")));
+  EXPECT_EQ(integer_to_string(int64_t(INT64_MIN)).str(),
+            (StringView("-9223372036854775808")));
 }
index 2785994..9dc357e 100644 (file)
@@ -9,6 +9,7 @@
 #include "LibcTest.h"
 
 #include "src/__support/CPP/UInt128.h"
+#include "src/__support/CPP/StringView.h"
 #include "utils/testutils/ExecuteFunction.h"
 #include <cassert>
 #include <iostream>
@@ -42,6 +43,9 @@ describeValue(ValType Value) {
 }
 
 std::string describeValue(std::string Value) { return std::string(Value); }
+std::string describeValue(cpp::StringView Value) {
+  return std::string(Value.data(), Value.size());
+}
 
 // When the value is UInt128 or __uint128_t, show its hexadecimal digits.
 // We cannot just use a UInt128 specialization as that resolves to only
@@ -278,6 +282,12 @@ template bool test<__llvm_libc::cpp::UInt<128>>(
     __llvm_libc::cpp::UInt<128> RHS, const char *LHSStr, const char *RHSStr,
     const char *File, unsigned long Line);
 
+template bool test<__llvm_libc::cpp::StringView>(RunContext *Ctx, TestCondition Cond,
+                                       __llvm_libc::cpp::StringView LHS,
+                                       __llvm_libc::cpp::StringView RHS,
+                                       const char *LHSStr, const char *RHSStr,
+                                       const char *File, unsigned long Line);
+
 } // namespace internal
 
 bool Test::testStrEq(const char *LHS, const char *RHS, const char *LHSStr,
index 27a2c23..ea90e13 100644 (file)
@@ -14,6 +14,7 @@
 
 #include "PlatformDefs.h"
 
+#include "src/__support/CPP/StringView.h"
 #include "src/__support/CPP/type_traits.h"
 #include "utils/testutils/ExecuteFunction.h"
 #include "utils/testutils/StreamWrapper.h"
@@ -105,6 +106,14 @@ protected:
                           (unsigned long long)RHS, LHSStr, RHSStr, File, Line);
   }
 
+  template <typename ValType,
+            cpp::enable_if_t<
+                cpp::is_same_v<ValType, __llvm_libc::cpp::StringView>, int> = 0>
+  bool test(TestCondition Cond, ValType LHS, ValType RHS, const char *LHSStr,
+            const char *RHSStr, const char *File, unsigned long Line) {
+    return internal::test(Ctx, Cond, LHS, RHS, LHSStr, RHSStr, File, Line);
+  }
+
   bool testStrEq(const char *LHS, const char *RHS, const char *LHSStr,
                  const char *RHSStr, const char *File, unsigned long Line);