12 unstable releases (3 breaking)

new 0.4.3 Feb 12, 2025
0.4.2 Jan 28, 2025
0.4.0 Dec 28, 2024
0.3.3 Dec 8, 2024
0.1.0 Dec 10, 2023

#218 in WebAssembly

Download history 112/week @ 2024-11-30 570/week @ 2024-12-07 102/week @ 2024-12-14 50/week @ 2024-12-21 177/week @ 2024-12-28 145/week @ 2025-01-04 86/week @ 2025-01-11 104/week @ 2025-01-18 118/week @ 2025-01-25 30/week @ 2025-02-01 109/week @ 2025-02-08

363 downloads per month

Apache-2.0

16MB
290K SLoC

WebAssembly 289K 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

~5.5MB
~102K SLoC