You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Ian Chamberlain 98fc093c43
Copy test runner and actions from ctru-rs
1 year ago
.github Copy test runner and actions from ctru-rs 1 year ago
docker Copy test runner and actions from ctru-rs 1 year ago
src Copy test runner and actions from ctru-rs 1 year ago
tests Copy test runner and actions from ctru-rs 1 year ago
.gitignore Copy test runner and actions from ctru-rs 1 year ago
Cargo.toml Copy test runner and actions from ctru-rs 1 year ago
README.md Rework a bunch of stuff in citra dockerfile 2 years ago

README.md

test-runner-3ds

A set of tools for running automated Rust tests against Citra (3DS emulator).

Usage

./run.sh 3DSX_FILE

Goals

  • Docker container for manually running tests against Citra
  • GitHub Action for running automated tests
  • Rust testing framework (custom runner) for use with the 3ds
  • (maybe) Acceptance testing framework or glue for one?

Workflow / Notes

  1. Build a test executable (type tbd)
  2. citra-emu container: bind-mount test executable and choose it
  3. driver container perform input / output as needed for test, via VNC
    • possible extension: 3dslink -s to get actual stdout/stderr (return code?)
    • acceptance testing of images, hopefully via screenshot

To do work

  • Reorganize docker build files vs runtime files a bit
  • Make this repo useable as a github action
  • Run itself as part of CI? I guess?
  • Simpler user-run workflow:
    • Ideally, a single command to spin everything up, build + load a 3dsx and run a vdo script.
    • Maybe cargo args passed in as environment variable or something?
  • Clearly defined dependencies + use cases:
    • Should this be usable without Rust?
    • Is docker the only real dependency?
    • Does this need a separate binary, or can we just use native cargo test capabilities?