Migrating WebAssembly tests
This is a class project for Advanced Software Engineering with Jon Bell. You can look at a poster i made or read a report i wrote about it, including analysis of failures found. Reporting and validating failures is ongoing work.
Make sure to download this repository with submodules:
git clone --recurse-submodules git@github.com:CosineP/wast-wrong.git
I have a small patch to the wasmtime tests that prevents a few failures in wasmtime.patch.
Install nix package manager. Run nix-shell. Otherwise you will need to
manually install many packages, and i can't help you.
Then, install wasmtime v7.0.0. One way to do that is to run cd wasmtime && cargo build --release and then add $PWD/wasmtime/target/release to your
PATH.
$ ./harness.sh p # | grep FAILED for quiet output
No. While I've put a lot of effort into making sure silly spurious failures haven't crept in, it's not guaranteed that every failure is a bug. Reporting these failures to maintainers will be the only way to ultimately determine that.
Known false positives are in the file called uninteresting. They are
automatically excluded from the test harness. Note that 31 of these are the
same spurious failure over many instructions.
Runs each implementation on a single test:
$ ./harness.sh run ./my-test.wast
Run the harness on the spec testsuite to see many spurious failures:
$ ./harness.sh smoke