9 unstable releases (3 breaking)

new 0.4.0 Dec 28, 2024
0.3.3 Dec 8, 2024
0.2.2 Mar 1, 2024
0.2.1 Jan 26, 2024
0.1.0 Dec 10, 2023

#226 in WebAssembly

Download history 9/week @ 2024-09-21 4/week @ 2024-09-28 112/week @ 2024-11-30 570/week @ 2024-12-07 102/week @ 2024-12-14 50/week @ 2024-12-21 139/week @ 2024-12-28

967 downloads per month

Apache-2.0

16MB
290K SLoC

WebAssembly 290K SLoC // 0.0% comments Rust 201 SLoC // 0.0% comments

wasm-testsuite

wasm-testsuite used to be part of tinywasm and was extracted into its own crate. Currently it only includes the test data and not a test runner.

crates.io docs.rs

This crate contains the the WebAssembly Test Suite for all versions of the WebAssembly spec and new proposals that are not yet part of the spec. Tests cases can change between minor versions of this crate as new tests are added or existing tests are modified.

Usage

use wasm_testsuite::data::{Proposal, SpecVersion, proposal, spec};

fn main() -> eyre::Result<()> {
    for test in spec(&SpecVersion::V2) {
        let name = test.name();
        let raw = test.raw();
        let wast_directives = test.wast()?.directives();
    }

    for p in Proposal::all() {
        for test in proposal(p) {
            let name = test.name();
            let raw = test.raw();
            let wast_directives = test.wast()?.directives();
        }
    }

    Ok(())
}

License

This crate is licensed under the Apache License, Version 2.0.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in wasm-testsuite by you, as defined in the Apache-2.0 license, shall be licensed as above, without any additional terms or conditions.

Note: The tests contained in data/ are from the WebAssembly Test Suite and are licensed under the Apache License, Version 2.0 as well.

Dependencies

~3.5MB
~58K SLoC