test(tvix/eval): Add proptests covering trait impls for String

Add a suite of proptests covering the laws of the handwritten stdlib
trait impls (Eq, Ord, and Hash) for String, generated from a new set of
macros for generating those tests which can be applied to other types.

Change-Id: Ib3276c9e96fca497aece094e5612707d3dc77ccd
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6626
Autosubmit: grfn <grfn@gws.fyi>
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
This commit is contained in:
Griffin Smith 2022-09-17 13:50:58 -04:00 committed by clbot
parent 51f1924f19
commit 3935c34401
3 changed files with 153 additions and 0 deletions

View file

@ -177,3 +177,14 @@ impl Display for NixString {
f.write_str("\"")
}
}
#[cfg(test)]
mod tests {
use super::*;
use crate::properties::{eq_laws, hash_laws, ord_laws};
eq_laws!(NixString);
hash_laws!(NixString);
ord_laws!(NixString);
}