1
0
mirror of https://github.com/fluencelabs/wasm-bindgen synced 2025-03-31 17:31:06 +00:00
Pauan 3f4acc453b
Dramatically improving the build time of web-sys ()
* Pre-generating web-sys

* Fixing build errors

* Minor refactor for the unit tests

* Changing to generate #[wasm_bindgen} annotations

* Fixing code generation

* Adding in main bin to wasm-bindgen-webidl

* Fixing more problems

* Adding in support for unstable APIs

* Fixing bug with code generation

* More code generation fixes

* Improving the webidl program

* Removing unnecessary cfg from the generated code

* Splitting doc comments onto separate lines

* Improving the generation for unstable features

* Adding in support for string values in enums

* Now runs rustfmt on the mod.rs file

* Fixing codegen for constructors

* Fixing webidl-tests

* Fixing build errors

* Another fix for build errors

* Renaming typescript_name to typescript_type

* Adding in docs for typescript_type

* Adding in CI script to verify that web-sys is up to date

* Fixing CI script

* Fixing CI script

* Don't suppress git diff output

* Remove duplicate definitions of `Location`

Looks to be a preexisting bug in wasm-bindgen?

* Regenerate webidl

* Try to get the git diff command right

* Handle named constructors in WebIDL

* Remove stray rustfmt.toml

* Add back NamedConstructorBar definition in tests

* Run stable rustfmt over everything

* Don't run Cargo in a build script

Instead refactor things so webidl-tests can use the Rust-code-generation
as a library in a build script. Also fixes `cargo fmt` in the
repository.

* Fixup generated code

* Running web-sys checks on stable

* Improving the code generation a little

* Running rustfmt

Co-authored-by: Alex Crichton <alex@alexcrichton.com>
2020-03-02 17:39:36 -06:00

21 lines
768 B
Rust

use crate::generated::*;
use wasm_bindgen::Clamped;
use wasm_bindgen_test::*;
#[wasm_bindgen_test]
fn take_and_return_a_bunch_of_slices() {
let f = TestArrays::new().unwrap();
assert_eq!(f.strings("y"), "x");
assert_eq!(f.byte_strings("yz"), "xx");
assert_eq!(f.usv_strings("abc"), "efg");
assert_eq!(f.f32(&mut [1.0, 2.0]), [3.0, 4.0, 5.0]);
assert_eq!(f.f64(&mut [1.0, 2.0]), [3.0, 4.0, 5.0]);
assert_eq!(f.i8(&mut [1, 2]), [3, 4, 5]);
assert_eq!(f.i16(&mut [1, 2]), [3, 4, 5]);
assert_eq!(f.i32(&mut [1, 2]), [3, 4, 5]);
assert_eq!(f.u8(&mut [1, 2]), [3, 4, 5]);
assert_eq!(f.u16(&mut [1, 2]), [3, 4, 5]);
assert_eq!(f.u32(&mut [1, 2]), [3, 4, 5]);
assert_eq!(f.u8_clamped(Clamped(&mut [1, 2])).0, [3, 4, 5]);
}