diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 470c733d8..d0f583d9d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -30,6 +30,9 @@ jobs: benchmarks: needs: trigger uses: ./.github/workflows/benchmarks.yml + coverage: + needs: trigger + uses: ./.github/workflows/coverage.yml check-all-green: needs: diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml new file mode 100644 index 000000000..f0c70098b --- /dev/null +++ b/.github/workflows/coverage.yml @@ -0,0 +1,17 @@ +name: Tests +on: [workflow_call] +permissions: {} + +jobs: + coverage-linux: + runs-on: ubuntu-22.04 + steps: + - uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 + - name: Install stable toolchain + uses: actions-rs/toolchain@b2417cde72dcf67f306c0ae8e0828a81bf0b189f # v1.0.6 + - name: Download tarpaulin + run: curl -L 'https://github.com/xd009642/tarpaulin/releases/download/0.27.1/cargo-tarpaulin-x86_64-unknown-linux-musl.tar.gz' | tar xvz + - name: Verify download + run: echo '564ea439a14eced45cdb3e50b55a463502d9fbfb7722535c5d0390b6577ce343 cargo-tarpaulin' | sha256sum --check --status + - name: Run cargo-tarpaulin + run: ./cargo-tarpaulin -v --all --out Xml --offline --exclude-files '../3rd-party/*,clis/*' diff --git a/crates/telio-sockets/src/protector/linux.rs b/crates/telio-sockets/src/protector/linux.rs index f75378ddf..31f3ea906 100644 --- a/crates/telio-sockets/src/protector/linux.rs +++ b/crates/telio-sockets/src/protector/linux.rs @@ -75,6 +75,7 @@ mod tests { use super::*; + #[cfg(not(tarpaulin))] #[rstest] #[case(IpAddr::V4(Ipv4Addr::LOCALHOST))] #[case(IpAddr::V4(Ipv4Addr::UNSPECIFIED))]