diff --git a/.github/workflows/clippy-and-fmt.yml b/.github/workflows/clippy-and-fmt.yml new file mode 100644 index 000000000..3ff6c230c --- /dev/null +++ b/.github/workflows/clippy-and-fmt.yml @@ -0,0 +1,28 @@ +name: Clippy and rustfmt check + +on: + push: + branches: + - master + pull_request: + +jobs: + clippy_check: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@master + - uses: actions-rs/toolchain@v1 + with: + toolchain: nightly + components: clippy, rustfmt + override: true + - name: Clippy + uses: actions-rs/cargo@v1 + with: + command: clippy + args: --all-features + - name: rustfmt + uses: actions-rs/cargo@v1 + with: + command: fmt + args: --all -- --check diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 000000000..00b6a510b --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,62 @@ +name: CI + +on: + push: + branches: + - master + pull_request: + +jobs: + build_and_test: + strategy: + fail-fast: false + matrix: + toolchain: + - x86_64-pc-windows-msvc + - x86_64-pc-windows-gnu + - x86_64-unknown-linux-gnu + - x86_64-apple-darwin + version: + - stable + - nightly + include: + - toolchain: x86_64-pc-windows-msvc + os: windows-latest + - toolchain: x86_64-pc-windows-gnu + os: windows-latest + - toolchain: x86_64-unknown-linux-gnu + os: ubuntu-latest + - toolchain: x86_64-apple-darwin + os: macOS-latest + + name: ${{ matrix.version }} - ${{ matrix.toolchain }} + runs-on: ${{ matrix.os }} + + steps: + - uses: actions/checkout@master + + - name: Install ${{ matrix.version }} + uses: actions-rs/toolchain@v1 + with: + toolchain: ${{ matrix.version }}-${{ matrix.toolchain }} + default: true + + - name: checks + uses: actions-rs/cargo@v1 + with: + command: check + args: --all --bins --examples --tests + + - name: tests (stable) + if: matrix.version == 'stable' + uses: actions-rs/cargo@v1 + with: + command: test + args: --all --no-fail-fast -- --nocapture + + - name: tests (nightly) + if: matrix.version == 'nightly' + uses: actions-rs/cargo@v1 + with: + command: test + args: --all --all-features --no-fail-fast -- --nocapture diff --git a/.github/workflows/msrv.yml b/.github/workflows/msrv.yml new file mode 100644 index 000000000..f96292e69 --- /dev/null +++ b/.github/workflows/msrv.yml @@ -0,0 +1,35 @@ +name: Check MSRV + +on: + push: + branches: + - master + pull_request: + +jobs: + build_and_test: + strategy: + fail-fast: false + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@master + + - name: Install Rust + uses: actions-rs/toolchain@v1 + with: + toolchain: 1.39.0-x86_64-unknown-linux-gnu + default: true + + - name: checks + uses: actions-rs/cargo@v1 + with: + command: check + args: --all --bins --examples --tests + + - name: tests + uses: actions-rs/cargo@v1 + with: + command: test + args: --all --no-fail-fast -- --nocapture diff --git a/src/headers/authorization/scheme/basic.rs b/src/headers/authorization/scheme/basic.rs index 751c08861..700dd6b24 100644 --- a/src/headers/authorization/scheme/basic.rs +++ b/src/headers/authorization/scheme/basic.rs @@ -202,31 +202,3 @@ mod tests { ); } } - -#[cfg(all(test, feature = "nightly"))] -mod benches { - use test::Bencher; - - use actix_web::http::header::{HeaderValue, IntoHeaderValue}; - - use super::{Basic, Scheme}; - - #[bench] - fn bench_parsing(b: &mut Bencher) { - let value = - HeaderValue::from_static("Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="); - b.iter(|| Basic::parse(&value)); - } - - #[bench] - fn bench_serializing(b: &mut Bencher) { - b.iter(|| { - let basic = Basic { - user_id: "Aladdin".into(), - password: Some("open sesame".into()), - }; - - basic.try_into() - }) - } -}