Closed
Description
Because of a Cargo bug (rust-lang/cargo#6961), building Parsec's tests will fail if the test client is using a different version of the interface than the service itself.
Example:
error[E0308]: mismatched types
--> tests/per_provider/persistent_after.rs:50:5
|
50 | / assert_eq!(
51 | | client
52 | | .destroy_key(key_name)
53 | | .expect_err("This key should have been destroyed."),
54 | | ResponseStatus::KeyDoesNotExist
55 | | );
| |______^ expected enum `parsec_interface::requests::response_status::ResponseStatus`, found a different enum `parsec_interface::requests::response_status::ResponseStatus`
|
= note: expected type `parsec_interface::requests::response_status::ResponseStatus` (enum `parsec_interface::requests::response_status::ResponseStatus`)
found type `parsec_interface::requests::response_status::ResponseStatus` (enum `parsec_interface::requests::response_status::ResponseStatus`)
note: Perhaps two different versions of crate `parsec_interface` are being used?
--> tests/per_provider/persistent_after.rs:50:5
|
50 | / assert_eq!(
51 | | client
52 | | .destroy_key(key_name)
53 | | .expect_err("This key should have been destroyed."),
54 | | ResponseStatus::KeyDoesNotExist
55 | | );
| |______^
= note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)