@@ -478,63 +478,71 @@ fn array_contains(array: &Vec<Value>, find: &Value) -> bool {
478
478
#[ test]
479
479
fn same_array ( ) {
480
480
use serde_json:: json;
481
- let array_one = vec ! [ json!( "a" ) , json!( 1 ) , json!( r#" {"a":"b"}"# ) , json!( null) ] ;
482
- let array_two = vec ! [ json!( "a" ) , json!( 1 ) , json!( r#" {"a":"b"}"# ) , json!( null) ] ;
481
+ let array_one = vec ! [ json!( "a" ) , json!( 1 ) , json!( { "a" : "b" } ) , json!( null) ] ;
482
+ let array_two = vec ! [ json!( "a" ) , json!( 1 ) , json!( { "a" : "b" } ) , json!( null) ] ;
483
483
assert_eq ! ( is_same_array( & array_one, & array_two) , true ) ;
484
484
}
485
485
486
486
#[ test]
487
487
fn same_array_out_of_order ( ) {
488
488
use serde_json:: json;
489
- let array_one = vec ! [ json!( "a" ) , json!( true ) , json!( r#" {"a":"b"}"# ) ] ;
490
- let array_two = vec ! [ json!( r#" {"a":"b"}"# ) , json!( "a" ) , json!( true ) ] ;
489
+ let array_one = vec ! [ json!( "a" ) , json!( true ) , json!( { "a" : "b" } ) ] ;
490
+ let array_two = vec ! [ json!( { "a" : "b" } ) , json!( "a" ) , json!( true ) ] ;
491
491
assert_eq ! ( is_same_array( & array_one, & array_two) , true ) ;
492
492
}
493
493
494
494
#[ test]
495
495
fn different_array ( ) {
496
496
use serde_json:: json;
497
- let array_one = vec ! [ json!( "a" ) , json!( 1 ) , json!( r#" {"a":"b"}"# ) ] ;
498
- let array_two = vec ! [ json!( r#" {"a":"b"}"# ) , json!( "a" ) , json!( 2 ) ] ;
497
+ let array_one = vec ! [ json!( "a" ) , json!( 1 ) , json!( { "a" : "b" } ) ] ;
498
+ let array_two = vec ! [ json!( { "a" : "b" } ) , json!( "a" ) , json!( 2 ) ] ;
499
499
assert_eq ! ( is_same_array( & array_one, & array_two) , false ) ;
500
500
}
501
501
502
502
#[ test]
503
503
fn different_array_sizes ( ) {
504
504
use serde_json:: json;
505
- let array_one = vec ! [ json!( "a" ) , json!( 1 ) , json!( r#" {"a":"b"}"# ) ] ;
506
- let array_two = vec ! [ json!( r#" {"a":"b"}"# ) , json!( "a" ) ] ;
505
+ let array_one = vec ! [ json!( "a" ) , json!( 1 ) , json!( { "a" : "b" } ) ] ;
506
+ let array_two = vec ! [ json!( { "a" : "b" } ) , json!( "a" ) ] ;
507
507
assert_eq ! ( is_same_array( & array_one, & array_two) , false ) ;
508
508
}
509
509
510
510
#[ test]
511
- fn array_with_multiple_objects_with_superset ( ) {
511
+ fn array_with_multiple_objects_with_actual_superset ( ) {
512
512
use serde_json:: json;
513
- let array_one = vec ! [ json!( "a" ) , json!( 1 ) , json!( r#"{"a":"b"}"# ) , json!( r#"{"c":"d"}"# ) ] ;
514
- let array_two = vec ! [ json!( "a" ) , json!( 1 ) , json!( r#"{"a":"b", "c":"d"}"# ) , json!( r#"{"c":"d"}"# ) ] ;
513
+ let array_one = vec ! [ json!( "a" ) , json!( 1 ) , json!( { "a" : "b" } ) , json!( { "c" : "d" } ) ] ;
514
+ let array_two = vec ! [ json!( "a" ) , json!( 1 ) , json!( { "c" : "d" , "a" : "b" } ) , json!( { "c" : "d" } ) ] ;
515
+ assert_eq ! ( is_same_array( & array_one, & array_two) , true ) ;
516
+ }
517
+
518
+ #[ test]
519
+ fn array_with_multiple_objects_with_expected_superset ( ) {
520
+ use serde_json:: json;
521
+ let array_one = vec ! [ json!( "a" ) , json!( 1 ) , json!( { "a" : "b" , "c" : "d" } ) , json!( { "c" : "d" } ) ] ;
522
+ let array_two = vec ! [ json!( "a" ) , json!( 1 ) , json!( { "a" : "b" } ) , json!( { "c" : "d" } ) ] ;
515
523
assert_eq ! ( is_same_array( & array_one, & array_two) , false ) ;
516
524
}
517
525
518
526
#[ test]
519
527
fn array_with_duplicates_out_of_order ( ) {
520
528
use serde_json:: json;
521
- let array_one = vec ! [ json!( "a" ) , json!( 1 ) , json!( r#" {"a":"b"}"# ) , json!( r#" {"a":"b"}"# ) ] ;
522
- let array_two = vec ! [ json!( r#" {"a":"b"}"# ) , json!( "a" ) , json!( 1 ) , json!( r#" {"a":"b"}"# ) ] ;
529
+ let array_one = vec ! [ json!( "a" ) , json!( 1 ) , json!( { "a" : "b" } ) , json!( { "a" : "b" } ) ] ;
530
+ let array_two = vec ! [ json!( { "a" : "b" } ) , json!( "a" ) , json!( 1 ) , json!( { "a" : "b" } ) ] ;
523
531
assert_eq ! ( is_same_array( & array_one, & array_two) , true ) ;
524
532
}
525
533
526
534
#[ test]
527
535
fn same_array_with_nested_array ( ) {
528
536
use serde_json:: json;
529
- let array_one = vec ! [ json!( "a" ) , json!( 1 ) , json!( r#" {"a":"b"}"# ) , json!( vec![ json!( "a" ) , json!( 1 ) ] ) ] ;
530
- let array_two = vec ! [ json!( "a" ) , json!( 1 ) , json!( r#" {"a":"b"}"# ) , json!( vec![ json!( "a" ) , json!( 1 ) ] ) ] ;
537
+ let array_one = vec ! [ json!( "a" ) , json!( 1 ) , json!( { "a" : "b" } ) , json!( vec![ json!( "a" ) , json!( 1 ) ] ) ] ;
538
+ let array_two = vec ! [ json!( "a" ) , json!( 1 ) , json!( { "a" : "b" } ) , json!( vec![ json!( "a" ) , json!( 1 ) ] ) ] ;
531
539
assert_eq ! ( is_same_array( & array_one, & array_two) , true ) ;
532
540
}
533
541
534
542
#[ test]
535
543
fn different_array_with_nested_array ( ) {
536
544
use serde_json:: json;
537
- let array_one = vec ! [ json!( "a" ) , json!( 1 ) , json!( r#" {"a":"b"}"# ) , json!( vec![ json!( "a" ) , json!( 1 ) ] ) ] ;
538
- let array_two = vec ! [ json!( "a" ) , json!( 1 ) , json!( r#" {"a":"b"}"# ) , json!( vec![ json!( "a" ) , json!( 2 ) ] ) ] ;
545
+ let array_one = vec ! [ json!( "a" ) , json!( 1 ) , json!( { "a" : "b" } ) , json!( vec![ json!( "a" ) , json!( 1 ) ] ) ] ;
546
+ let array_two = vec ! [ json!( "a" ) , json!( 1 ) , json!( { "a" : "b" } ) , json!( vec![ json!( "a" ) , json!( 2 ) ] ) ] ;
539
547
assert_eq ! ( is_same_array( & array_one, & array_two) , false ) ;
540
548
}
0 commit comments