summaryrefslogtreecommitdiff
path: root/modules/codec/tests
diff options
context:
space:
mode:
Diffstat (limited to 'modules/codec/tests')
-rw-r--r--modules/codec/tests/data.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/modules/codec/tests/data.cpp b/modules/codec/tests/data.cpp
index a686b6d..57c56d3 100644
--- a/modules/codec/tests/data.cpp
+++ b/modules/codec/tests/data.cpp
@@ -10,6 +10,27 @@ using Int32Array = Array<
>;
}
+SAW_TEST("Data Native/Bool"){
+ using namespace saw;
+
+ data<sch::Bool> t{true};
+ data<sch::Bool> f;
+
+ SAW_EXPECT(t.get(), "Should hold true");
+ SAW_EXPECT(!f.get(), "Should default to false");
+
+ SAW_EXPECT((t != f), "Should not be equal");
+ SAW_EXPECT(((t && f).get() == false), "Wrong conjunction");
+ SAW_EXPECT(((t || f).get() == true), "Wrong disjunction");
+ SAW_EXPECT(((!f).get() == true), "Wrong negation");
+
+ f.set(true);
+ SAW_EXPECT((t == f), "Should be equal");
+
+ constexpr data<sch::Bool> ct{true};
+ static_assert(ct.get(), "Should be usable at compile time");
+}
+
SAW_TEST("Data Native/Array Access with Data Native"){
using namespace saw;