tests: add inaccessible case for Object macro
This commit is contained in:
parent
dd4515c18f
commit
0f8b2c52bd
|
@ -330,6 +330,20 @@ pub async fn test_entity_shareable() {
|
||||||
|
|
||||||
#[tokio::test]
|
#[tokio::test]
|
||||||
pub async fn test_entity_inaccessible() {
|
pub async fn test_entity_inaccessible() {
|
||||||
|
struct MyCustomObjInaccessible;
|
||||||
|
|
||||||
|
#[Object(inaccessible)]
|
||||||
|
impl MyCustomObjInaccessible {
|
||||||
|
async fn a(&self) -> i32 {
|
||||||
|
todo!()
|
||||||
|
}
|
||||||
|
|
||||||
|
#[graphql(inaccessible)]
|
||||||
|
async fn custom_object_inaccessible(&self) -> i32 {
|
||||||
|
todo!()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#[derive(SimpleObject)]
|
#[derive(SimpleObject)]
|
||||||
struct MyObjFieldInaccessible {
|
struct MyObjFieldInaccessible {
|
||||||
#[graphql(inaccessible)]
|
#[graphql(inaccessible)]
|
||||||
|
@ -459,20 +473,24 @@ pub async fn test_entity_inaccessible() {
|
||||||
async fn inaccessible_input(&self, _value: MyInputObjInaccessible) -> i32 {
|
async fn inaccessible_input(&self, _value: MyInputObjInaccessible) -> i32 {
|
||||||
todo!()
|
todo!()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async fn inaccessible_custom_object(&self) -> MyCustomObjInaccessible {
|
||||||
|
todo!()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
let schema_sdl = Schema::new(Query, EmptyMutation, EmptySubscription)
|
let schema_sdl = Schema::new(Query, EmptyMutation, EmptySubscription)
|
||||||
.sdl_with_options(SDLExportOptions::new().federation());
|
.sdl_with_options(SDLExportOptions::new().federation());
|
||||||
|
|
||||||
println!("{}", schema_sdl);
|
|
||||||
|
|
||||||
// FIELD_DEFINITION
|
// FIELD_DEFINITION
|
||||||
assert!(schema_sdl.contains("inaccessibleField(id: Int!): Int! @inaccessible"));
|
assert!(schema_sdl.contains("inaccessibleField(id: Int!): Int! @inaccessible"));
|
||||||
assert!(schema_sdl.contains("objFieldInaccessibleA: Int! @inaccessible"));
|
assert!(schema_sdl.contains("objFieldInaccessibleA: Int! @inaccessible"));
|
||||||
assert!(schema_sdl.contains("inaccessibleInterfaceValue: String! @inaccessible"));
|
assert!(schema_sdl.contains("inaccessibleInterfaceValue: String! @inaccessible"));
|
||||||
|
assert!(schema_sdl.contains("customObjectInaccessible: Int! @inaccessible"));
|
||||||
// INTERFACE
|
// INTERFACE
|
||||||
assert!(schema_sdl.contains("interface MyInterfaceInaccessible @inaccessible"));
|
assert!(schema_sdl.contains("interface MyInterfaceInaccessible @inaccessible"));
|
||||||
// OBJECT
|
// OBJECT
|
||||||
|
assert!(schema_sdl.contains("type MyCustomObjInaccessible @inaccessible"));
|
||||||
assert!(schema_sdl.contains(r#"type MyObjInaccessible @key(fields: "id") @inaccessible"#));
|
assert!(schema_sdl.contains(r#"type MyObjInaccessible @key(fields: "id") @inaccessible"#));
|
||||||
assert!(schema_sdl
|
assert!(schema_sdl
|
||||||
.contains("type MyInterfaceObjB implements MyInterfaceInaccessible @inaccessible"));
|
.contains("type MyInterfaceObjB implements MyInterfaceInaccessible @inaccessible"));
|
||||||
|
|
Loading…
Reference in New Issue
Block a user