Skip to content

Commit b8b6a68

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

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]
@@ -323,10 +314,10 @@ async fn follow_interface_reference() {
323314
.unwrap();
324315

325316
let data = extract_data!(res).unwrap();
326-
assert_eq!(
327-
format!("{:?}", data),
328-
"Object({\"legged\": Object({\"parent\": Object({\"id\": String(\"parent\")})})})"
329-
)
317+
let exp = object! {
318+
legged: object! { parent: object! { id: "parent" } }
319+
};
320+
assert_eq!(data, exp)
330321
}
331322

332323
#[tokio::test]
@@ -426,11 +417,11 @@ async fn two_interfaces() {
426417
.await
427418
.unwrap();
428419
let data = extract_data!(res).unwrap();
429-
assert_eq!(
430-
format!("{:?}", data),
431-
"Object({\"ibars\": List([Object({\"bar\": Int(100)}), Object({\"bar\": Int(200)})]), \
432-
\"ifoos\": List([Object({\"foo\": String(\"bla\")}), Object({\"foo\": String(\"ble\")})])})"
433-
);
420+
let exp = object! {
421+
ibars: vec![ object! { bar: 100 }, object! { bar: 200 }],
422+
ifoos: vec![ object! { foo: "bla" }, object! { foo: "ble" } ]
423+
};
424+
assert_eq!(data, exp);
434425
}
435426

436427
#[tokio::test]
@@ -454,21 +445,17 @@ async fn interface_non_inline_fragment() {
454445
.await
455446
.unwrap();
456447
let data = extract_data!(res).unwrap();
457-
assert_eq!(
458-
format!("{:?}", data),
459-
r#"Object({"leggeds": List([Object({"name": String("cow")})])})"#
460-
);
448+
let exp = object! { leggeds: vec![ object! { name: "cow" } ]};
449+
assert_eq!(data, exp);
461450

462451
// Query the fragment and something else.
463452
let query = "query { leggeds { legs, ...frag } } fragment frag on Animal { name }";
464453
let res = insert_and_query(subgraph_id, schema, vec![], query)
465454
.await
466455
.unwrap();
467456
let data = extract_data!(res).unwrap();
468-
assert_eq!(
469-
format!("{:?}", data),
470-
r#"Object({"leggeds": List([Object({"legs": Int(3), "name": String("cow")})])})"#,
471-
);
457+
let exp = object! { leggeds: vec![ object!{ legs: 3, name: "cow" } ]};
458+
assert_eq!(data, exp);
472459
}
473460

474461
#[tokio::test]
@@ -501,10 +488,8 @@ async fn interface_inline_fragment() {
501488
.await
502489
.unwrap();
503490
let data = extract_data!(res).unwrap();
504-
assert_eq!(
505-
format!("{:?}", data),
506-
r#"Object({"leggeds": List([Object({"airspeed": Int(24)}), Object({"name": String("cow")})])})"#
507-
);
491+
let exp = object! { leggeds: vec![ object!{ airspeed: 24 }, object! { name: "cow" }]};
492+
assert_eq!(data, exp);
508493
}
509494

510495
#[tokio::test]
@@ -567,20 +552,11 @@ async fn interface_inline_fragment_with_subquery() {
567552
.await
568553
.unwrap();
569554
let data = extract_data!(res).unwrap();
570-
571-
assert_eq!(
572-
format!("{:?}", data),
573-
"Object({\
574-
\"leggeds\": List([\
575-
Object({\
576-
\"airspeed\": Int(5), \
577-
\"legs\": Int(2), \
578-
\"parent\": Object({\"id\": String(\"mama_bird\")})\
579-
}), \
580-
Object({\"legs\": Int(4)})\
581-
])\
582-
})"
583-
);
555+
let exp = object! {
556+
leggeds: vec![ object!{ airspeed: 5, legs: 2, parent: object! { id: "mama_bird" } },
557+
object!{ legs: 4 }]
558+
};
559+
assert_eq!(data, exp);
584560
}
585561

586562
#[tokio::test]

0 commit comments

Comments
 (0)