conformance: prepare the conformance test suite
- move the conformance related files to a dedicated directory - simplify parts of the conformance script - create a scaffolding for a new GitHub action to run conformance tests - use the new --output-dir flag from the conformance suite for saving results on demand
This commit is contained in:
parent
bba5acdc8b
commit
367175d97b
1 changed files with 57 additions and 18 deletions
38
.github/workflows/conformance.yml
vendored
Normal file
38
.github/workflows/conformance.yml
vendored
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
name: Conformance Tests
|
||||
|
||||
on:
|
||||
# TODO: enable automatic triggering when tested.
|
||||
# push:
|
||||
# branches: [main]
|
||||
# pull_request:
|
||||
workflow_dispatch:
|
||||
|
||||
concurrency:
|
||||
group: conformance-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
server-conformance:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4
|
||||
- name: Set up Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5
|
||||
with:
|
||||
go-version: "^1.25"
|
||||
- name: Start everything-server
|
||||
run: |
|
||||
go run ./conformance/everything-server/main.go -http=":3001" &
|
||||
# Wait for the server to be ready.
|
||||
timeout 15 bash -c 'until curl -s http://localhost:3001/mcp; do sleep 0.5; done'
|
||||
- name: "Run conformance tests"
|
||||
uses: modelcontextprotocol/conformance@c2f3fdaf781dcd5a862cb0d2f6454c1c210bf0f0 # v0.1.11
|
||||
with:
|
||||
mode: server
|
||||
url: http://localhost:3001/mcp
|
||||
suite: active
|
||||
expected-failures: ./conformance/baseline.yml
|
||||
Loading…
Reference in a new issue