summaryrefslogtreecommitdiff
path: root/asl/tests
diff options
context:
space:
mode:
authorSteven Le Rouzic <steven.lerouzic@gmail.com>2025-01-03 01:22:21 +0100
committerSteven Le Rouzic <steven.lerouzic@gmail.com>2025-01-03 01:22:21 +0100
commiteb58edf811a328ddcc5e671a258be208da212630 (patch)
treea739433160dc93e7c652142389c62d5e389c16f3 /asl/tests
parent05de08dab9f962e554d0b29ca7157669fdb061e9 (diff)
Add string
Diffstat (limited to 'asl/tests')
-rw-r--r--asl/tests/buffer_tests.cpp12
-rw-r--r--asl/tests/string_tests.cpp21
2 files changed, 33 insertions, 0 deletions
diff --git a/asl/tests/buffer_tests.cpp b/asl/tests/buffer_tests.cpp
index ad26c96..f3d6446 100644
--- a/asl/tests/buffer_tests.cpp
+++ b/asl/tests/buffer_tests.cpp
@@ -131,6 +131,18 @@ ASL_TEST(push)
ASL_TEST_EXPECT(b[6] == 7);
}
+ASL_TEST(from_span)
+{
+ int data[] = {1, 2, 4, 8};
+ asl::buffer<int> b{data};
+
+ ASL_TEST_EXPECT(b.size() == 4);
+ ASL_TEST_EXPECT(b[0] == 1);
+ ASL_TEST_EXPECT(b[1] == 2);
+ ASL_TEST_EXPECT(b[2] == 4);
+ ASL_TEST_EXPECT(b[3] == 8);
+}
+
struct MoveableType
{
int moved{};
diff --git a/asl/tests/string_tests.cpp b/asl/tests/string_tests.cpp
new file mode 100644
index 0000000..80aaf24
--- /dev/null
+++ b/asl/tests/string_tests.cpp
@@ -0,0 +1,21 @@
+#include "asl/string.hpp"
+#include "asl/testing/testing.hpp"
+#include "asl/format.hpp"
+
+ASL_TEST(default)
+{
+ asl::string s;
+ ASL_TEST_ASSERT(s.size() == 0);
+ ASL_TEST_ASSERT(s.as_string_view().size() == 0);
+ ASL_TEST_ASSERT(s == ""_sv);
+ ASL_TEST_ASSERT(s == s);
+}
+
+ASL_TEST(from_string_view)
+{
+ asl::string s = "hello"_sv;
+ ASL_TEST_ASSERT(s.size() == 5);
+ ASL_TEST_ASSERT(s == "hello"_sv);
+}
+
+static_assert(asl::formattable<asl::string<>>);