diff options
Diffstat (limited to 'asl/tests/string_view_tests.cpp')
-rw-r--r-- | asl/tests/string_view_tests.cpp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/asl/tests/string_view_tests.cpp b/asl/tests/string_view_tests.cpp index f3cc752..dafb91c 100644 --- a/asl/tests/string_view_tests.cpp +++ b/asl/tests/string_view_tests.cpp @@ -1,3 +1,27 @@ #include "asl/string_view.hpp" #include "asl/testing/testing.hpp" +// @Todo Don't use stdlib, remake memcmp +#include <string.h> + +static_assert(asl::trivially_destructible<asl::string_view>); +static_assert(asl::trivially_copyable<asl::string_view>); + +ASL_TEST(default) +{ + asl::string_view s1; + ASL_TEST_EXPECT(s1.is_empty()); + + asl::string_view s2 = nullptr; + ASL_TEST_EXPECT(s2.is_empty()); +} + +ASL_TEST(from_literal) +{ + asl::string_view s1 = "Hello"_sv; + ASL_TEST_ASSERT(s1.size() == 5); + ASL_TEST_EXPECT(memcmp(s1.data(), "Hello", 5) == 0); + + asl::string_view s2 = ""_sv; + ASL_TEST_EXPECT(s2.is_empty()); +} |