Vendor things
This commit is contained in:
parent
5deceec006
commit
977e3c17e5
19434 changed files with 10682014 additions and 0 deletions
50
third-party/vendor/js-sys/tests/wasm/WeakSet.rs
vendored
Normal file
50
third-party/vendor/js-sys/tests/wasm/WeakSet.rs
vendored
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
use js_sys::*;
|
||||
use wasm_bindgen::prelude::*;
|
||||
use wasm_bindgen_test::*;
|
||||
|
||||
#[wasm_bindgen]
|
||||
extern "C" {
|
||||
type SomeValue;
|
||||
#[wasm_bindgen(method, setter, structural)]
|
||||
fn set_some(this: &SomeValue, val: JsValue);
|
||||
}
|
||||
|
||||
fn some_value() -> Object {
|
||||
let value = SomeValue::from(JsValue::from(Object::new()));
|
||||
value.set_some("value".into());
|
||||
Object::from(JsValue::from(value))
|
||||
}
|
||||
|
||||
#[wasm_bindgen_test]
|
||||
fn new() {
|
||||
assert!(JsValue::from(WeakSet::new()).is_object())
|
||||
}
|
||||
|
||||
#[wasm_bindgen_test]
|
||||
fn has() {
|
||||
let set = WeakSet::new();
|
||||
let value = some_value();
|
||||
assert!(!set.has(&value));
|
||||
set.add(&value);
|
||||
assert!(set.has(&value));
|
||||
assert!(!set.has(&some_value()));
|
||||
}
|
||||
|
||||
#[wasm_bindgen_test]
|
||||
fn delete() {
|
||||
let set = WeakSet::new();
|
||||
let value = some_value();
|
||||
set.add(&value);
|
||||
assert!(set.has(&value));
|
||||
assert!(set.delete(&value));
|
||||
assert!(!set.has(&value));
|
||||
assert!(!set.delete(&value));
|
||||
}
|
||||
|
||||
#[wasm_bindgen_test]
|
||||
fn weakset_inheritance() {
|
||||
let set = WeakSet::new();
|
||||
assert!(set.is_instance_of::<WeakSet>());
|
||||
assert!(set.is_instance_of::<Object>());
|
||||
let _: &Object = set.as_ref();
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue