Fabian 02d45c6d68 add a few tests (mu, space invaders) преди 11 месеца
..
api 2d0497eba1 state test: test that vm still runs after restoring преди 11 месеца
benchmark f45e086992 tests: add DISABLE_JIT env var преди 1 година
devices f45e086992 tests: add DISABLE_JIT env var преди 1 година
expect 95d35d1b21 enable wasm multivalue преди 1 година
full 02d45c6d68 add a few tests (mu, space invaders) преди 11 месеца
jit-paging f45e086992 tests: add DISABLE_JIT env var преди 1 година
kvm-unit-tests f45e086992 tests: add DISABLE_JIT env var преди 1 година
manual 080482da89 s/V86Starter/V86 преди 1 година
nasm c86dc4f642 nasmtests: more tests, new large arithmetic test generation, compile faster преди 1 година
qemu 7629bb033b Fix constraints on instructions that don't overwrite full xmm register преди 1 година
rust acb8ad5423 Avoid console.assert (doesn't throw) преди 3 години
Readme.md 2697aa6192 Document env variables for tests преди 3 години

Readme.md

Use the corresponding make target in the root directory to run a test. The following list is roughtly sorted from most interesting/useful to least.

  • nasm: Small unit tests written in assembly, which are run using gdb on the host.
  • qemu: Based on tests from qemu. Builds a Linux binary, which tests many CPU features, which are then compared to a run on qemu.
  • kvm-unit-test: Based on tests from the KVM project, tests various CPU features.
  • full: Starts several OSes and checks if they boot correctly.
  • jit-paging: Tests jit and paging interaction.
  • api: Tests for several API functions of v86.
  • devices: Device tests.
  • rust: Rust unit test helpers.
  • expect: Expect tests for the jit output. Contains a set of asm+wasm files, where the jit is expected to produce the wasm file given the asm file.

The following environmental variables are respected by most tests if applicable:

  • TEST_RELEASE_BUILD=1: Test the release build (libv86.js, v86.wasm) instead of the debug build (libv86-debug.js, v86-debug.wasm)
  • MAX_PARALLEL_TESTS=n: Maximum number of tests to run in parallel. Defaults to the number of cores in your system or less.
  • TEST_NAME="…": Run only the specified test (only expect, full, nasm)