Clean up introspection tests
* Prefix test function names with 'introspection' * Use graphql_value! macro instead of manual construction
This commit is contained in:
parent
9b021b2fe7
commit
85ba97dcd9
1 changed files with 38 additions and 80 deletions
|
@ -7,7 +7,7 @@ use types::scalars::EmptyMutation;
|
||||||
use value::Value;
|
use value::Value;
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_query_type_name() {
|
fn test_introspection_query_type_name() {
|
||||||
let doc = r#"
|
let doc = r#"
|
||||||
query IntrospectionQueryTypeQuery {
|
query IntrospectionQueryTypeQuery {
|
||||||
__schema {
|
__schema {
|
||||||
|
@ -22,30 +22,21 @@ fn test_query_type_name() {
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
::execute(doc, None, &schema, &Variables::new(), &database),
|
::execute(doc, None, &schema, &Variables::new(), &database),
|
||||||
Ok((
|
Ok((
|
||||||
Value::object(
|
graphql_value!({
|
||||||
vec![(
|
"__schema": {
|
||||||
"__schema",
|
"queryType": {
|
||||||
Value::object(
|
"name": "Query"
|
||||||
vec![(
|
}
|
||||||
"queryType",
|
}
|
||||||
Value::object(
|
|
||||||
vec![("name", Value::scalar("Query"))].into_iter().collect(),
|
}),
|
||||||
),
|
|
||||||
)]
|
|
||||||
.into_iter()
|
|
||||||
.collect(),
|
|
||||||
),
|
|
||||||
)]
|
|
||||||
.into_iter()
|
|
||||||
.collect()
|
|
||||||
),
|
|
||||||
vec![]
|
vec![]
|
||||||
))
|
))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_specific_type_name() {
|
fn test_introspection_type_name() {
|
||||||
let doc = r#"
|
let doc = r#"
|
||||||
query IntrospectionQueryTypeQuery {
|
query IntrospectionQueryTypeQuery {
|
||||||
__type(name: "Droid") {
|
__type(name: "Droid") {
|
||||||
|
@ -58,21 +49,18 @@ fn test_specific_type_name() {
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
::execute(doc, None, &schema, &Variables::new(), &database),
|
::execute(doc, None, &schema, &Variables::new(), &database),
|
||||||
Ok((
|
Ok((
|
||||||
Value::object(
|
graphql_value!({
|
||||||
vec![(
|
"__type": {
|
||||||
"__type",
|
"name": "Droid",
|
||||||
Value::object(vec![("name", Value::scalar("Droid"))].into_iter().collect()),
|
},
|
||||||
)]
|
}),
|
||||||
.into_iter()
|
|
||||||
.collect()
|
|
||||||
),
|
|
||||||
vec![]
|
vec![]
|
||||||
))
|
))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_specific_object_type_name_and_kind() {
|
fn test_introspection_specific_object_type_name_and_kind() {
|
||||||
let doc = r#"
|
let doc = r#"
|
||||||
query IntrospectionDroidKindQuery {
|
query IntrospectionDroidKindQuery {
|
||||||
__type(name: "Droid") {
|
__type(name: "Droid") {
|
||||||
|
@ -87,28 +75,19 @@ fn test_specific_object_type_name_and_kind() {
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
::execute(doc, None, &schema, &Variables::new(), &database),
|
::execute(doc, None, &schema, &Variables::new(), &database),
|
||||||
Ok((
|
Ok((
|
||||||
Value::object(
|
graphql_value!({
|
||||||
vec![(
|
"__type": {
|
||||||
"__type",
|
"name": "Droid",
|
||||||
Value::object(
|
"kind": "OBJECT",
|
||||||
vec![
|
}
|
||||||
("name", Value::scalar("Droid")),
|
}),
|
||||||
("kind", Value::scalar("OBJECT")),
|
vec![],
|
||||||
]
|
|
||||||
.into_iter()
|
|
||||||
.collect(),
|
|
||||||
),
|
|
||||||
)]
|
|
||||||
.into_iter()
|
|
||||||
.collect()
|
|
||||||
),
|
|
||||||
vec![]
|
|
||||||
))
|
))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_specific_interface_type_name_and_kind() {
|
fn test_introspection_specific_interface_type_name_and_kind() {
|
||||||
let doc = r#"
|
let doc = r#"
|
||||||
query IntrospectionDroidKindQuery {
|
query IntrospectionDroidKindQuery {
|
||||||
__type(name: "Character") {
|
__type(name: "Character") {
|
||||||
|
@ -123,28 +102,19 @@ fn test_specific_interface_type_name_and_kind() {
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
::execute(doc, None, &schema, &Variables::new(), &database),
|
::execute(doc, None, &schema, &Variables::new(), &database),
|
||||||
Ok((
|
Ok((
|
||||||
Value::object(
|
graphql_value!({
|
||||||
vec![(
|
"__type": {
|
||||||
"__type",
|
"name": "Character",
|
||||||
Value::object(
|
"kind": "INTERFACE",
|
||||||
vec![
|
}
|
||||||
("name", Value::scalar("Character")),
|
}),
|
||||||
("kind", Value::scalar("INTERFACE")),
|
|
||||||
]
|
|
||||||
.into_iter()
|
|
||||||
.collect(),
|
|
||||||
),
|
|
||||||
)]
|
|
||||||
.into_iter()
|
|
||||||
.collect()
|
|
||||||
),
|
|
||||||
vec![]
|
vec![]
|
||||||
))
|
))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_documentation() {
|
fn test_introspection_documentation() {
|
||||||
let doc = r#"
|
let doc = r#"
|
||||||
query IntrospectionDroidDescriptionQuery {
|
query IntrospectionDroidDescriptionQuery {
|
||||||
__type(name: "Droid") {
|
__type(name: "Droid") {
|
||||||
|
@ -159,31 +129,19 @@ fn test_documentation() {
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
::execute(doc, None, &schema, &Variables::new(), &database),
|
::execute(doc, None, &schema, &Variables::new(), &database),
|
||||||
Ok((
|
Ok((
|
||||||
Value::object(
|
graphql_value!({
|
||||||
vec![(
|
"__type": {
|
||||||
"__type",
|
"name": "Droid",
|
||||||
Value::object(
|
"description": "A mechanical creature in the Star Wars universe.",
|
||||||
vec![
|
},
|
||||||
("name", Value::scalar("Droid")),
|
}),
|
||||||
(
|
|
||||||
"description",
|
|
||||||
Value::scalar("A mechanical creature in the Star Wars universe."),
|
|
||||||
),
|
|
||||||
]
|
|
||||||
.into_iter()
|
|
||||||
.collect(),
|
|
||||||
),
|
|
||||||
)]
|
|
||||||
.into_iter()
|
|
||||||
.collect()
|
|
||||||
),
|
|
||||||
vec![]
|
vec![]
|
||||||
))
|
))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_possible_types() {
|
fn test_introspection_possible_types() {
|
||||||
let doc = r#"
|
let doc = r#"
|
||||||
query IntrospectionDroidDescriptionQuery {
|
query IntrospectionDroidDescriptionQuery {
|
||||||
__type(name: "Character") {
|
__type(name: "Character") {
|
||||||
|
|
Loading…
Add table
Reference in a new issue