use crate::helper::*; use wundergraph_example::MyContext; #[test] fn delete_existing() { let (schema, pool) = get_example_schema(); let ctx = MyContext::new(pool.get().unwrap()); let res = execute_query( &schema, &ctx, " { Heros { id heroName } } ", ); assert!(res.is_ok()); assert_json_snapshot!( res.as_json(), @r###"[ { "Heros": [ { "heroName": "Luke Skywalker", "id": 1 }, { "heroName": "Darth Vader", "id": 2 }, { "heroName": "Han Solo", "id": 3 }, { "heroName": "Leia Organa", "id": 4 }, { "heroName": "Wilhuff Tarkin", "id": 5 } ] }, [] ]"### ); let res = execute_query( &schema, &ctx, r#" mutation DeleteHero { DeleteHero(DeleteHero: {id: 5}) { count } } "#, ); assert!(res.is_ok()); assert_json_snapshot!( res.as_json(), @r###"[ { "DeleteHero": { "count": 1 } }, [] ]"### ); let res = execute_query( &schema, &ctx, " { Heros { id heroName } } ", ); assert!(res.is_ok()); assert_json_snapshot!( res.as_json(), @r###"[ { "Heros": [ { "heroName": "Luke Skywalker", "id": 1 }, { "heroName": "Darth Vader", "id": 2 }, { "heroName": "Han Solo", "id": 3 }, { "heroName": "Leia Organa", "id": 4 } ] }, [] ]"### ); } #[test] fn delete_non_existing() { let (schema, pool) = get_example_schema(); let ctx = MyContext::new(pool.get().unwrap()); let res = execute_query( &schema, &ctx, " { Heros { id heroName } } ", ); assert!(res.is_ok()); assert_json_snapshot!( res.as_json(), @r###"[ { "Heros": [ { "heroName": "Luke Skywalker", "id": 1 }, { "heroName": "Darth Vader", "id": 2 }, { "heroName": "Han Solo", "id": 3 }, { "heroName": "Leia Organa", "id": 4 }, { "heroName": "Wilhuff Tarkin", "id": 5 } ] }, [] ]"### ); let res = execute_query( &schema, &ctx, r#" mutation DeleteHero { DeleteHero(DeleteHero: {id: 42}) { count } } "#, ); assert!(res.is_ok()); assert_json_snapshot!( res.as_json(), @r###"[ { "DeleteHero": { "count": 0 } }, [] ]"### ); let res = execute_query( &schema, &ctx, " { Heros { id heroName } } ", ); assert!(res.is_ok()); assert_json_snapshot!( res.as_json(), @r###"[ { "Heros": [ { "heroName": "Luke Skywalker", "id": 1 }, { "heroName": "Darth Vader", "id": 2 }, { "heroName": "Han Solo", "id": 3 }, { "heroName": "Leia Organa", "id": 4 }, { "heroName": "Wilhuff Tarkin", "id": 5 } ] }, [] ]"### ); }