Overview
This is the project for a reference implementation of Pact in Rust. It implements the V3 Pact specification.
There are 7 main modules to this implementation:
pact_matching
This is a library that provides the Pact models and functions for matching requests and responses, as well as reading and writing pact files.
pact_mock_server
This is a library that provides an in-process mock server for Pact client tests. It uses the pact_matching library.
pact_mock_server_ffi
This is a library that implements exported functions using C bindings for controlling the in-process mock server from non-rust languages.
pact_mock_server_cli
This module provides a command line executable that provides a standalone pact mock server and commands for controlling the mock servers. It uses the libpact_mock_server and libpact_matching libraries.
pact_consumer
This is a library that provides the Pact consumer test support and DSL.
pact_verifier
This library provides support for verifying a provider against pact files.
pact_verifier_cli
Command line excutable that uses the pact_verifier to be able to verify a running provider against pact files.