Skip to content
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions core/engine/src/builtins/weak_set/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -253,3 +253,6 @@ impl WeakSet {
Ok(set.contains_key(value.inner()).into())
}
}

#[cfg(test)]
mod tests;
Comment thread
mrhapile marked this conversation as resolved.
27 changes: 27 additions & 0 deletions core/engine/src/builtins/weak_set/tests.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
use crate::{TestAction, run_test_actions};

#[test]
fn weakset_add_and_has() {
run_test_actions([
TestAction::run("var ws = new WeakSet(); var obj = {}; ws.add(obj);"),
TestAction::assert("ws.has(obj)"),
]);
}

#[test]
fn weakset_add_chaining() {
run_test_actions([
TestAction::run("var ws = new WeakSet(); var obj = {};"),
TestAction::assert("ws.add(obj) === ws"),
]);
}

#[test]
fn weakset_delete_behavior() {
run_test_actions([
TestAction::run("var ws = new WeakSet(); var obj = {}; ws.add(obj);"),
TestAction::assert("ws.delete(obj) === true"),
TestAction::assert("ws.delete(obj) === false"),
TestAction::assert("ws.has(obj) === false"),
]);
}
Loading