Skip to content

Commit c64cd40

Browse files
committed
core: Do not rely on debug output in interface tests
No cows were harmed in making this change
1 parent 9ee5d81 commit c64cd40

File tree

1 file changed

+43
-67
lines changed

1 file changed

+43
-67
lines changed

core/tests/interfaces.rs

Lines changed: 43 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,8 @@ async fn one_interface_zero_entities() {
6767
.unwrap();
6868

6969
let data = extract_data!(res).unwrap();
70-
assert_eq!(format!("{:?}", data), "Object({\"leggeds\": List([])})")
70+
let exp = object! { leggeds: Vec::<r::Value>::new() };
71+
assert_eq!(data, exp);
7172
}
7273

7374
#[tokio::test]
@@ -87,21 +88,17 @@ async fn one_interface_one_entity() {
8788
.await
8889
.unwrap();
8990
let data = extract_data!(res).unwrap();
90-
assert_eq!(
91-
format!("{:?}", data),
92-
"Object({\"leggeds\": List([Object({\"legs\": Int(3)})])})"
93-
);
91+
let exp = object! { leggeds: vec![ object!{ legs: 3 }]};
92+
assert_eq!(data, exp);
9493

9594
// Query by ID.
9695
let query = "query { legged(id: \"1\") { legs } }";
9796
let res = insert_and_query(subgraph_id, schema, vec![], query)
9897
.await
9998
.unwrap();
10099
let data = extract_data!(res).unwrap();
101-
assert_eq!(
102-
format!("{:?}", data),
103-
"Object({\"legged\": Object({\"legs\": Int(3)})})",
104-
);
100+
let exp = object! { legged: object! { legs: 3 }};
101+
assert_eq!(data, exp);
105102
}
106103

107104
#[tokio::test]
@@ -121,10 +118,8 @@ async fn one_interface_one_entity_typename() {
121118
.await
122119
.unwrap();
123120
let data = extract_data!(res).unwrap();
124-
assert_eq!(
125-
format!("{:?}", data),
126-
"Object({\"leggeds\": List([Object({\"__typename\": String(\"Animal\")})])})"
127-
)
121+
let exp = object! { leggeds: vec![ object!{ __typename: "Animal" } ]};
122+
assert_eq!(data, exp);
128123
}
129124

130125
#[tokio::test]
@@ -150,21 +145,17 @@ async fn one_interface_multiple_entities() {
150145
.await
151146
.unwrap();
152147
let data = extract_data!(res).unwrap();
153-
assert_eq!(
154-
format!("{:?}", data),
155-
"Object({\"leggeds\": List([Object({\"legs\": Int(3)}), Object({\"legs\": Int(4)})])})"
156-
);
148+
let exp = object! { leggeds: vec![ object! { legs: 3 }, object! { legs: 4 }]};
149+
assert_eq!(data, exp);
157150

158151
// Test for support issue #32.
159152
let query = "query { legged(id: \"2\") { legs } }";
160153
let res = insert_and_query(subgraph_id, schema, vec![], query)
161154
.await
162155
.unwrap();
163156
let data = extract_data!(res).unwrap();
164-
assert_eq!(
165-
format!("{:?}", data),
166-
"Object({\"legged\": Object({\"legs\": Int(4)})})",
167-
);
157+
let exp = object! { legged: object! { legs: 4 }};
158+
assert_eq!(data, exp);
168159
}
169160

170161
#[tokio::test]
@@ -187,10 +178,8 @@ async fn reference_interface() {
187178
.unwrap();
188179

189180
let data = extract_data!(res).unwrap();
190-
assert_eq!(
191-
format!("{:?}", data),
192-
"Object({\"leggeds\": List([Object({\"leg\": Object({\"id\": String(\"1\")})})])})"
193-
)
181+
let exp = object! { leggeds: vec![ object!{ leg: object! { id: "1" } }] };
182+
assert_eq!(data, exp);
194183
}
195184

196185
#[tokio::test]
@@ -253,13 +242,15 @@ async fn reference_interface_derived() {
253242
.unwrap();
254243

255244
let data = extract_data!(res).unwrap();
256-
assert_eq!(
257-
format!("{:?}", data),
258-
"Object({\"events\": List([\
259-
Object({\"id\": String(\"buy\"), \"transaction\": Object({\"id\": String(\"txn\")})}), \
260-
Object({\"id\": String(\"gift\"), \"transaction\": Object({\"id\": String(\"txn\")})}), \
261-
Object({\"id\": String(\"sell1\"), \"transaction\": Object({\"id\": String(\"txn\")})}), \
262-
Object({\"id\": String(\"sell2\"), \"transaction\": Object({\"id\": String(\"txn\")})})])})");
245+
let exp = object! {
246+
events: vec![
247+
object! { id: "buy", transaction: object! { id: "txn" } },
248+
object! { id: "gift", transaction: object! { id: "txn" } },
249+
object! { id: "sell1", transaction: object! { id: "txn" } },
250+
object! { id: "sell2", transaction: object! { id: "txn" } }
251+
]
252+
};
253+
assert_eq!(data, exp);
263254
}
264255

265256
#[tokio::test]
@@ -321,10 +312,10 @@ async fn follow_interface_reference() {
321312
.unwrap();
322313

323314
let data = extract_data!(res).unwrap();
324-
assert_eq!(
325-
format!("{:?}", data),
326-
"Object({\"legged\": Object({\"parent\": Object({\"id\": String(\"parent\")})})})"
327-
)
315+
let exp = object! {
316+
legged: object! { parent: object! { id: "parent" } }
317+
};
318+
assert_eq!(data, exp)
328319
}
329320

330321
#[tokio::test]
@@ -424,11 +415,11 @@ async fn two_interfaces() {
424415
.await
425416
.unwrap();
426417
let data = extract_data!(res).unwrap();
427-
assert_eq!(
428-
format!("{:?}", data),
429-
"Object({\"ibars\": List([Object({\"bar\": Int(100)}), Object({\"bar\": Int(200)})]), \
430-
\"ifoos\": List([Object({\"foo\": String(\"bla\")}), Object({\"foo\": String(\"ble\")})])})"
431-
);
418+
let exp = object! {
419+
ibars: vec![ object! { bar: 100 }, object! { bar: 200 }],
420+
ifoos: vec![ object! { foo: "bla" }, object! { foo: "ble" } ]
421+
};
422+
assert_eq!(data, exp);
432423
}
433424

434425
#[tokio::test]
@@ -452,21 +443,17 @@ async fn interface_non_inline_fragment() {
452443
.await
453444
.unwrap();
454445
let data = extract_data!(res).unwrap();
455-
assert_eq!(
456-
format!("{:?}", data),
457-
r#"Object({"leggeds": List([Object({"name": String("cow")})])})"#
458-
);
446+
let exp = object! { leggeds: vec![ object! { name: "cow" } ]};
447+
assert_eq!(data, exp);
459448

460449
// Query the fragment and something else.
461450
let query = "query { leggeds { legs, ...frag } } fragment frag on Animal { name }";
462451
let res = insert_and_query(subgraph_id, schema, vec![], query)
463452
.await
464453
.unwrap();
465454
let data = extract_data!(res).unwrap();
466-
assert_eq!(
467-
format!("{:?}", data),
468-
r#"Object({"leggeds": List([Object({"legs": Int(3), "name": String("cow")})])})"#,
469-
);
455+
let exp = object! { leggeds: vec![ object!{ legs: 3, name: "cow" } ]};
456+
assert_eq!(data, exp);
470457
}
471458

472459
#[tokio::test]
@@ -499,10 +486,8 @@ async fn interface_inline_fragment() {
499486
.await
500487
.unwrap();
501488
let data = extract_data!(res).unwrap();
502-
assert_eq!(
503-
format!("{:?}", data),
504-
r#"Object({"leggeds": List([Object({"airspeed": Int(24)}), Object({"name": String("cow")})])})"#
505-
);
489+
let exp = object! { leggeds: vec![ object!{ airspeed: 24 }, object! { name: "cow" }]};
490+
assert_eq!(data, exp);
506491
}
507492

508493
#[tokio::test]
@@ -565,20 +550,11 @@ async fn interface_inline_fragment_with_subquery() {
565550
.await
566551
.unwrap();
567552
let data = extract_data!(res).unwrap();
568-
569-
assert_eq!(
570-
format!("{:?}", data),
571-
"Object({\
572-
\"leggeds\": List([\
573-
Object({\
574-
\"airspeed\": Int(5), \
575-
\"legs\": Int(2), \
576-
\"parent\": Object({\"id\": String(\"mama_bird\")})\
577-
}), \
578-
Object({\"legs\": Int(4)})\
579-
])\
580-
})"
581-
);
553+
let exp = object! {
554+
leggeds: vec![ object!{ airspeed: 5, legs: 2, parent: object! { id: "mama_bird" } },
555+
object!{ legs: 4 }]
556+
};
557+
assert_eq!(data, exp);
582558
}
583559

584560
#[tokio::test]

0 commit comments

Comments
 (0)