diff options
Diffstat (limited to '.github')
| -rw-r--r-- | .github/workflows/test-validators.yml | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/.github/workflows/test-validators.yml b/.github/workflows/test-validators.yml index 3d9eef8..1396fd2 100644 --- a/.github/workflows/test-validators.yml +++ b/.github/workflows/test-validators.yml @@ -119,3 +119,34 @@ jobs: else echo "Correctly detected invalid file" fi + + test-rust: + name: Test Rust Validator + runs-on: ubuntu-latest + container: + image: rust:latest + steps: + - uses: actions/checkout@v4 + + - name: Build validator + working-directory: validators/rust + run: cargo build --release + + - name: Validate minimal example + run: ./validators/rust/target/release/validate examples/minimal.gitinfo + + - name: Validate open-source-project example + run: ./validators/rust/target/release/validate examples/open-source-project.gitinfo + + - name: Validate mirror-only example (JSONC with comments) + run: ./validators/rust/target/release/validate examples/mirror-only.gitinfo + + - name: Test invalid file detection + run: | + echo '{"invalid_field": "should fail"}' > /tmp/invalid.gitinfo + if ./validators/rust/target/release/validate /tmp/invalid.gitinfo; then + echo "Expected validation to fail but it passed" + exit 1 + else + echo "Correctly detected invalid file" + fi |
