HTTP mocking for Rust!

Get it on crates.io.

Documentation available at https://docs.rs/mockito.

Before upgrading, make sure to check out the changelog.

Contribution Guidelines

  1. Check the existing issues and pull requests.
  2. One commit is one feature - consider squashing.
  3. Format code with cargo fmt.
  4. :shipit:

Development

Tests

Run tests:

sh cargo test

...or run tests using a different toolchain:

sh rustup run --install 1.35.0 cargo test

...or run tests while disabling the default features (e.g. the colors):

sh cargo test --no-default-features

Code style

Mockito uses rustfmt as a general code style.

Install rustfmt:

sh rustup component add rustfmt

Format code:

sh cargo fmt

Some editors might provide a plugin to format your Rust code automatically.

Linter

Mockito uses clippy as a linter.

Install clippy:

sh rustup component add clippy-preview

Run the linter:

```sh

Touch a file to force cargo to rerun clippy on the project

touch src/lib.rs

cargo clippy --lib --tests --all-features -- -D clippy::pedantic -D clippy::nursery ```

...or run the linter using a different toolchain:

sh rustup run --install 1.35.0 cargo clippy --lib --tests --all-features -- -D clippy::pedantic -D clippy::nursery

Release

Release:

sh cargo package && cargo publish

Benchmarks

Install rust nightly:

sh rustup install nightly

Run benchmarks:

sh rustup run nightly cargo bench


Logo courtesy to http://niastudio.net :ok_hand: