|
@@ -1,4 +1,5 @@
|
|
|
use lox::dup_filter;
|
|
|
+use lox::dup_filter::SeenType::{Fresh, Seen};
|
|
|
use lox::BridgeDb;
|
|
|
|
|
|
use curve25519_dalek::scalar::Scalar;
|
|
@@ -23,23 +24,23 @@ fn test_dup_filter() {
|
|
|
let s4 = Scalar::random(&mut rng);
|
|
|
let s5 = Scalar::random(&mut rng);
|
|
|
// Check basic behaviour
|
|
|
- assert_eq!(df1.check(&s1), false);
|
|
|
- assert_eq!(df1.filter(&s1), Ok(()));
|
|
|
- assert_eq!(df1.check(&s1), true);
|
|
|
- assert_eq!(df1.filter(&s1), Err(()));
|
|
|
+ assert_eq!(df1.check(&s1), Fresh);
|
|
|
+ assert_eq!(df1.filter(&s1), Fresh);
|
|
|
+ assert_eq!(df1.check(&s1), Seen);
|
|
|
+ assert_eq!(df1.filter(&s1), Seen);
|
|
|
// Ensure different instances of DupFilter have different tables
|
|
|
- assert_eq!(df2.check(&s1), false);
|
|
|
- assert_eq!(df2.filter(&s1), Ok(()));
|
|
|
- assert_eq!(df2.filter(&s1), Err(()));
|
|
|
- assert_eq!(df2.check(&s1), true);
|
|
|
+ assert_eq!(df2.check(&s1), Fresh);
|
|
|
+ assert_eq!(df2.filter(&s1), Fresh);
|
|
|
+ assert_eq!(df2.filter(&s1), Seen);
|
|
|
+ assert_eq!(df2.check(&s1), Seen);
|
|
|
// Check multiple ids
|
|
|
- assert_eq!(df1.check(&s2), false);
|
|
|
- assert_eq!(df1.filter(&s3), Ok(()));
|
|
|
- assert_eq!(df1.filter(&s4), Ok(()));
|
|
|
- assert_eq!(df1.filter(&s3), Err(()));
|
|
|
- assert_eq!(df1.check(&s1), true);
|
|
|
- assert_eq!(df1.filter(&s1), Err(()));
|
|
|
- assert_eq!(df1.filter(&s5), Ok(()));
|
|
|
+ assert_eq!(df1.check(&s2), Fresh);
|
|
|
+ assert_eq!(df1.filter(&s3), Fresh);
|
|
|
+ assert_eq!(df1.filter(&s4), Fresh);
|
|
|
+ assert_eq!(df1.filter(&s3), Seen);
|
|
|
+ assert_eq!(df1.check(&s1), Seen);
|
|
|
+ assert_eq!(df1.filter(&s1), Seen);
|
|
|
+ assert_eq!(df1.filter(&s5), Fresh);
|
|
|
println!("df1 = {:?}", df1);
|
|
|
println!("df2 = {:?}", df2);
|
|
|
}
|