on:
  pull_request:
  push:
    branches: [main]
jobs:
  # run the automated tests, reporting success if the tests pass and were built
  # without warnings. the examples are run as tests, because we've configured
  # each example target with `test = true` and `harness = false` in Cargo.toml.
  # Trunk build failures caused by problems outside the Rust source code, like
  # missing assets, should be caught by `trunk_build_test`
  test:
    runs-on: docker
    container:
      image: cimg/rust:1.86-node
    defaults:
      run:
        # set the default working directory for each `run` step, relative to the
        # workspace directory. this default only affects `run` steps (and if we
        # tried to set the `working-directory` label for any other kind of step,
        # it wouldn't be recognized anyway)
        working-directory: app-proto
    steps:
      # Check out the repository so that its top-level directory is the
      # workspace directory (action variable `github.workspace`, environment
      # variable `$GITHUB_WORKSPACE`):
      - uses: https://code.forgejo.org/actions/checkout@v4
      
      - uses: ./.forgejo/setup-trunk
      - run: RUSTFLAGS='-D warnings' cargo test