File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -361,6 +361,7 @@ mod test {
361361 use std:: { collections:: HashMap , fs:: File } ;
362362
363363 use crate :: unicode:: encode_unicode;
364+ use proptest:: prelude:: * ;
364365
365366 use super :: * ;
366367 #[ test]
@@ -684,4 +685,30 @@ mod test {
684685 ) ;
685686 }
686687 }
688+
689+ proptest ! {
690+ #[ test]
691+ fn test_encode_proptest( s: String ) {
692+ let result = encode( & s) ;
693+ let _encoded = match result {
694+ Ok ( encoded) => {
695+ assert!( !encoded. is_empty( ) || s. is_empty( ) ) ;
696+
697+ let unicode_result = encode_to_unicode( & s) ;
698+ assert!( unicode_result. is_ok( ) ) ;
699+
700+ let unicode_string = unicode_result. unwrap( ) ;
701+ assert!( !unicode_string. is_empty( ) || s. is_empty( ) ) ;
702+
703+ encoded
704+ }
705+ Err ( _) => {
706+ return Ok ( ( ) ) ; // ok
707+ }
708+ } ;
709+
710+ // let decoded = decode(&encoded);
711+ // assert_eq!(s, decoded, "Decoded string does not match original input: {}", s);
712+ }
713+ }
687714}
You can’t perform that action at this time.
0 commit comments