From 75e956eac30050bb10d131b8f14ecbc396abcf17 Mon Sep 17 00:00:00 2001 From: Steven Le Rouzic Date: Wed, 13 Nov 2024 23:58:18 +0100 Subject: Use string_view for formatting --- asl/tests/string_view_tests.cpp | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) (limited to 'asl/tests/string_view_tests.cpp') diff --git a/asl/tests/string_view_tests.cpp b/asl/tests/string_view_tests.cpp index dafb91c..1c12603 100644 --- a/asl/tests/string_view_tests.cpp +++ b/asl/tests/string_view_tests.cpp @@ -25,3 +25,38 @@ ASL_TEST(from_literal) asl::string_view s2 = ""_sv; ASL_TEST_EXPECT(s2.is_empty()); } + +ASL_TEST(substr1) +{ + asl::string_view s1 = "abcd"; + + asl::string_view s2 = s1.substr(0); + ASL_TEST_ASSERT(s2.size() == 4); + ASL_TEST_EXPECT(memcmp(s2.data(), "abcd", 4) == 0); + + s2 = s1.substr(2); + ASL_TEST_ASSERT(s2.size() == 2); + ASL_TEST_EXPECT(memcmp(s2.data(), "cd", 2) == 0); + + s2 = s1.substr(4); + ASL_TEST_ASSERT(s2.size() == 0); +} + +ASL_TEST(substr2) +{ + asl::string_view s1 = "abcd"; + + asl::string_view s2 = s1.substr(0, 4); + ASL_TEST_ASSERT(s2.size() == 4); + ASL_TEST_EXPECT(memcmp(s2.data(), "abcd", 4) == 0); + + s2 = s1.substr(1, 2); + ASL_TEST_ASSERT(s2.size() == 2); + ASL_TEST_EXPECT(memcmp(s2.data(), "bc", 2) == 0); + + s2 = s1.substr(4, 0); + ASL_TEST_ASSERT(s2.size() == 0); + + s2 = s1.substr(1, 0); + ASL_TEST_ASSERT(s2.size() == 0); +} -- cgit