Skip to content

Commit

Permalink
Merge branch 'master' of github.com:EntityGraphQL/EntityGraphQL
Browse files Browse the repository at this point in the history
  • Loading branch information
lukemurray committed Aug 16, 2022
2 parents 8f86d2b + 3fa7603 commit 5f6014c
Showing 1 changed file with 33 additions and 0 deletions.
33 changes: 33 additions & 0 deletions src/tests/EntityGraphQL.Tests/SchemaTests/SchemaBuilderTests.cs
Expand Up @@ -198,6 +198,39 @@ public void NonAbstractClassesBecomeObjectsIntrospection()
Assert.Equal("OBJECT", ((dynamic)res.Data["__type"]).kind);
}

[Fact]
public void TestIgnoreReferencedTypes() {
var schemaBuilderOptions = new SchemaBuilderOptions {
IgnoreTypes = new HashSet<string> { typeof(C).FullName }
};

var schemaProvider = new SchemaProvider<TestIgnoreTypesSchema>();
schemaProvider.AddType<B>(typeof(B).Name, null).AddAllFields(schemaBuilderOptions);
schemaProvider.Query().AddAllFields(schemaBuilderOptions);
schemaProvider.UpdateType<A>(type => type.AddField("b", null).Resolve(a => new B()));

Assert.True(schemaProvider.HasType(typeof(A)));
Assert.True(schemaProvider.HasType(typeof(B)));
Assert.False(schemaProvider.HasType(typeof(C)));
Assert.False(schemaProvider.HasType(typeof(D)));
}
private class TestIgnoreTypesSchema {
public IEnumerable<A> As { get; }
}
private class A {
public int I = 0;
}
private class B {
public int I = 0;
public C C = new();
}
private class C {
public D D = new();
}
private class D {
public int I = 0;
}

// This would be your Entity/Object graph you use with EntityFramework
private class TestSchema
{
Expand Down

0 comments on commit 5f6014c

Please sign in to comment.