mqi 0.3.0

Idiomatic IBM® MQ Interface (MQI) and MQ Administration Interface (MQAI) APIs
Documentation
name: Test Coverage
on:
  push:
    branches:
      - develop
  pull_request:
    branches:
      - develop

concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true

env:
  CARGO_TERM_COLOR: always

permissions: {}

jobs:
  test:
    name: "Coverage"
    runs-on: ubuntu-24.04
    permissions:
      contents: read
      
    steps:
      - uses: actions/checkout@v4
        with:
          persist-credentials: false
      - uses: advantic-au/action-mq-client@stable
        id: mq-client
      - uses: dtolnay/rust-toolchain@b3b07ba8b418998c39fb20f53e8b695cdcc8de1b
        with:
          toolchain: nightly
      - uses: taiki-e/install-action@c07504cae06f832dc8de08911c9a9c5cddb0d2d3 # v2.56.13
        with:
          tool: nextest, cargo-llvm-cov
      - uses: Swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # v2.8.0
      - name: Generate code coverage
        run: |
          cargo llvm-cov --no-report nextest --profile ci --features mqai,dlopen2,mqc_latest,mock
          cargo llvm-cov --no-report test --doc --features mqai,dlopen2,mqc_latest,mock
          cargo llvm-cov report --doctests --ignore-filename-regex "build/.+" --codecov --output-path coverage/codecov.json
          cargo llvm-cov report --doctests --ignore-filename-regex "build/.+"
        env:
          MQ_HOME: ${{ steps.mq-client.outputs.client-install-path }}
      - name: Upload coverage to Codecov
        uses: codecov/codecov-action@v5
        with:
          files: coverage/codecov.json
          token: ${{ secrets.CODECOV_TOKEN }}
          fail_ci_if_error: true