#testing #pact #cdc

pact-plugin-driver

Pact support library that provides an interface for interacting with Pact plugins

52 releases

0.5.1 Jan 31, 2024
0.4.6 Dec 14, 2023
0.4.5 Jul 10, 2023
0.3.3 Mar 14, 2023
0.0.11 Nov 29, 2021

#104 in Hardware support

Download history 1609/week @ 2023-11-02 2005/week @ 2023-11-09 2070/week @ 2023-11-16 2012/week @ 2023-11-23 1580/week @ 2023-11-30 1929/week @ 2023-12-07 2615/week @ 2023-12-14 1601/week @ 2023-12-21 2531/week @ 2023-12-28 2050/week @ 2024-01-04 2664/week @ 2024-01-11 3793/week @ 2024-01-18 3095/week @ 2024-01-25 2976/week @ 2024-02-01 3071/week @ 2024-02-08 2385/week @ 2024-02-15

12,764 downloads per month
Used in 10 crates (6 directly)

MIT license

200KB
4.5K SLoC

Pact plugin driver library for Rust

Pact support library that provides an interface for interacting with Pact plugins

State of implementation

  • The ability to find plugins.
  • Load plugins and extract the plugin manifests that describe what the plugin provides.
  • Provide a catalogue of features provided by the plugins.
  • Provide a messaging bus to facilitate communication between the language implementation and the plugins.
  • Manage the plugin lifecycles.

Crate features

All features are enabled by default

  • datetime: Enables support of date and time expressions and generators. This will add the chronos crate as a dependency.
  • xml: Enables support for parsing XML documents. This feature will add the sxd-document crate as a dependency.

Building the Rust driver

The Rust driver is built with Cargo. The build can be run with cargo build, but there is a test DriverPactTest that requires a Protobuf plugin to work. Either skip or disable that test, or install the prototype Protobuf plugin before running the build.

The Protobuf compiler is required to be installed and available on the path.

Dependencies

~28–70MB
~1M SLoC