1234567891011121314151617181920212223242526272829303132333435363738 |
- package goja
- import (
- "testing"
- )
- func TestWeakMap(t *testing.T) {
- vm := New()
- _, err := vm.RunString(`
- var m = new WeakMap();
- var m1 = new WeakMap();
- var key = {};
- m.set(key, true);
- m1.set(key, false);
- if (!m.has(key)) {
- throw new Error("has");
- }
- if (m.get(key) !== true) {
- throw new Error("value does not match");
- }
- if (!m1.has(key)) {
- throw new Error("has (m1)");
- }
- if (m1.get(key) !== false) {
- throw new Error("m1 value does not match");
- }
- m.delete(key);
- if (m.has(key)) {
- throw new Error("m still has after delete");
- }
- if (!m1.has(key)) {
- throw new Error("m1 does not have after delete from m");
- }
- `)
- if err != nil {
- t.Fatal(err)
- }
- }
|