io-webdav 0.1.0

WebDAV client library for Rust
Documentation
name: Tests

on:
  push:

jobs:
  tests:
    uses: pimalaya/nix/.github/workflows/tests.yml@master
    secrets: inherit

  coverage:
    name: coverage -> codecov
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@stable
        with:
          # The LLVM engine (accurate on method chains and generics) needs the
          # llvm-tools component.
          components: llvm-tools-preview
      - uses: taiki-e/install-action@cargo-tarpaulin
      - name: Measure coverage (cobertura.xml)
        # Default features (rustls-ring) already activate every feature-gated
        # source line; the other TLS backends only swap the implementation.
        run: cargo tarpaulin --engine llvm --out Xml
      - name: Upload to Codecov
        uses: codecov/codecov-action@v4
        with:
          files: cobertura.xml
          token: ${{ secrets.CODECOV_TOKEN }}
          fail_ci_if_error: false

  fastmail-tests:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: cachix/install-nix-action@v31
        with:
          extra_nix_config: experimental-features = nix-command flakes
      - uses: cachix/cachix-action@v17
        with:
          name: soywod
          authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
          extraPullNames: nix-community
      - run: nix develop -c cargo test --features rustls-ring --test fastmail -- --ignored
        env:
          RUST_LOG: trace
          FASTMAIL_EMAIL: ${{ secrets.FASTMAIL_EMAIL }}
          FASTMAIL_APP_PASSWORD: ${{ secrets.FASTMAIL_APP_PASSWORD }}

  radicale-tests:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: cachix/install-nix-action@v31
        with:
          extra_nix_config: experimental-features = nix-command flakes
      - uses: cachix/cachix-action@v17
        with:
          name: soywod
          authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
          extraPullNames: nix-community
      - run: ./tests/radicale.sh
      - run: nix develop -c cargo test --features rustls-ring --test radicale -- --ignored
        env:
          RUST_LOG: trace

  stalwart-tests:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: cachix/install-nix-action@v31
        with:
          extra_nix_config: experimental-features = nix-command flakes
      - uses: cachix/cachix-action@v17
        with:
          name: soywod
          authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
          extraPullNames: nix-community
      - run: ./tests/stalwart.sh
      - run: nix develop -c cargo test --features rustls-ring --test stalwart -- --ignored
        env:
          RUST_LOG: trace