Automated doc tests #1135
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Automated doc tests | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
schedule: | |
- cron: "0 1 * * *" | |
workflow_dispatch: | |
jobs: | |
entrypoint-check: | |
name: "Run entrypoint checks" | |
runs-on: "ubuntu-latest" | |
steps: | |
- uses: actions/checkout@v4 | |
- name: "Install ripgrep" | |
run: sudo apt-get install -y ripgrep | |
- name: Check the repo for wrong entrypoint mentions | |
run: | | |
for item in $(find src -type f -name "*.mdx" -not -path "*/tutorial/*"); do | |
echo "Checking $item" | |
rg "^\s*#\[entry_point\]" $item && echo "Found file that didn't match specification: $item" && exit 1 | |
done | |
exit 0 | |
extract-and-run: | |
name: "Extract and run tests" | |
runs-on: "ubuntu-latest" | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Rust toolchain | |
uses: dtolnay/rust-toolchain@stable | |
- name: Update crates we care about | |
working-directory: ./docs-test-gen | |
run: | | |
#cargo update -p cosmwasm-core | |
cargo update -p cosmwasm-crypto | |
cargo update -p cosmwasm-derive | |
cargo update -p cosmwasm-schema-derive | |
cargo update -p cosmwasm-schema | |
cargo update -p cosmwasm-std | |
cargo update -p cw2 | |
cargo update -p cw-storage-plus | |
cargo update -p cw-storey | |
cargo update -p serde | |
cargo update -p sylvia | |
- uses: Swatinem/rust-cache@v2 | |
with: | |
workspaces: | | |
docs-test-gen | |
- name: Extract all the tests | |
working-directory: ./docs-test-gen | |
run: cargo run | |
- name: Run all the generated tests | |
working-directory: ./docs-test-gen | |
run: cargo test | |
- name: Clippy all the generated tests | |
working-directory: ./docs-test-gen | |
run: cargo clippy --all-targets -- -D warnings |