Vendor dependencies

Let's see how I like this workflow.
This commit is contained in:
John Doty 2022-12-19 08:27:18 -08:00
parent 34d1830413
commit 9c435dc440
7500 changed files with 1665121 additions and 99 deletions

47
vendor/js-sys/tests/headless.rs vendored Normal file
View file

@ -0,0 +1,47 @@
#![cfg(target_arch = "wasm32")]
extern crate js_sys;
extern crate wasm_bindgen;
extern crate wasm_bindgen_test;
use js_sys::Array;
use wasm_bindgen::prelude::*;
use wasm_bindgen_test::*;
wasm_bindgen_test_configure!(run_in_browser);
#[wasm_bindgen(module = "/tests/headless.js")]
extern "C" {
fn is_array_values_supported() -> bool;
}
#[wasm_bindgen]
extern "C" {
type ValuesIterator;
#[wasm_bindgen(method, structural)]
fn next(this: &ValuesIterator) -> IterNext;
type IterNext;
#[wasm_bindgen(method, getter, structural)]
fn value(this: &IterNext) -> JsValue;
#[wasm_bindgen(method, getter, structural)]
fn done(this: &IterNext) -> bool;
}
#[wasm_bindgen_test]
fn array_iterator_values() {
if !is_array_values_supported() {
return;
}
let array = Array::new();
array.push(&8.into());
array.push(&3.into());
array.push(&2.into());
let iter = ValuesIterator::from(JsValue::from(array.values()));
assert_eq!(iter.next().value(), 8);
assert_eq!(iter.next().value(), 3);
assert_eq!(iter.next().value(), 2);
assert!(iter.next().done());
}