Crate wasm_testsuite

Source
Expand description

§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.

Re-exports§

pub use wast;

Modules§

data