diff --git a/.forgejo/workflows/bottest.yaml b/.forgejo/workflows/bottest.yaml new file mode 100644 index 0000000..0815f9a --- /dev/null +++ b/.forgejo/workflows/bottest.yaml @@ -0,0 +1,61 @@ +name: GBCI + +on: + push: + branches: ["main"] + pull_request: + branches: ["main"] + +jobs: + test: + runs-on: gbo + + steps: + - name: Disable SSL verification (temporary) + run: git config --global http.sslVerify false + + - uses: actions/checkout@v4 + + - name: Checkout botlib dependency + uses: actions/checkout@v4 + with: + repository: GeneralBots/botlib + path: ../botlib + + - name: Checkout botserver dependency + uses: actions/checkout@v4 + with: + repository: GeneralBots/botserver + path: ../botserver + + - name: Cache Cargo registry + uses: actions/cache@v4 + with: + path: | + ~/.cargo/registry + ~/.cargo/git + target + key: ${{ runner.os }}-cargo-bottest-${{ hashFiles('**/Cargo.lock') }} + restore-keys: | + ${{ runner.os }}-cargo-bottest- + + - name: Install Rust + uses: msrd0/rust-toolchain@v1 + with: + toolchain: stable + + - name: Run build + run: | + cargo build --locked + + - name: Run unit tests + run: | + cargo test --locked + + - name: Run integration tests + run: | + cargo test --locked --features integration + + - name: Run all tests with full features + run: | + cargo test --locked --features full