summaryrefslogtreecommitdiff
path: root/tests/std/test_stack.zc
diff options
context:
space:
mode:
Diffstat (limited to 'tests/std/test_stack.zc')
-rw-r--r--tests/std/test_stack.zc14
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/std/test_stack.zc b/tests/std/test_stack.zc
index ecc9d3c..03e51a4 100644
--- a/tests/std/test_stack.zc
+++ b/tests/std/test_stack.zc
@@ -28,6 +28,20 @@ test "Stack Push/Pop" {
assert(v.is_none(), "v should not have a valid value");
}
+test "Stack Length and Clear" {
+ print "Testing Stack clear";
+ var stack = Stack<i32>::new();
+ defer stack.free();
+
+ assert(stack.is_empty() && stack.length() == 0, "Stack should be empty");
+
+ stack.push(123);
+ assert(!stack.is_empty() && stack.length() == 1, "Stack should have 1 value");
+
+ stack.clear();
+ assert(stack.is_empty() && stack.length() == 0, "Stack should be empty");
+}
+
test "Stack Clone" {
print "Testing Stack Cloning";
var stack = Stack<i32>::new();