Skip to content

Commit

Permalink
support hotchocolate 13.6.0 (#36)
Browse files Browse the repository at this point in the history
  • Loading branch information
dariuszkuc committed Oct 26, 2023
1 parent a38d9d5 commit 1ef8c47
Show file tree
Hide file tree
Showing 37 changed files with 1,799 additions and 2,136 deletions.
4 changes: 2 additions & 2 deletions Compatibility/Products.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@
</ItemGroup>

<ItemGroup>
<PackageReference Include="HotChocolate.AspNetCore" Version="13.5.1" />
<PackageReference Include="HotChocolate.AspNetCore.CommandLine" Version="13.5.1" />
<PackageReference Include="HotChocolate.AspNetCore" Version="13.6.0" />
<PackageReference Include="HotChocolate.AspNetCore.CommandLine" Version="13.6.0" />
<ProjectReference Include="..\Federation\ApolloGraphQL.HotChocolate.Federation.csproj" />
</ItemGroup>

Expand Down
4 changes: 2 additions & 2 deletions Compatibility/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,13 @@ npm install --dev @apollo/federation-subgraph-compatibility
Generate test schema

```shell
dotnet run --project compatibility/Products.csproj schema export --output products.graphql
dotnet run --project Compatibility/Products.csproj schema export --output products.graphql
```

Run compatibility tests

```shell
npx fedtest docker --compose compatibility/docker-compose.yaml --schema compatibility/products.graphql
npx fedtest docker --compose Compatibility/docker-compose.yaml --schema Compatibility/products.graphql
```

See [compatibility script documentation](https://www.npmjs.com/package/@apollo/federation-subgraph-compatibility) for additional details.
329 changes: 147 additions & 182 deletions Compatibility/packages.lock.json

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
</ItemGroup>

<ItemGroup>
<PackageReference Include="HotChocolate.AspNetCore" Version="13.5.1" />
<PackageReference Include="HotChocolate.AspNetCore" Version="13.6.0" />
<ProjectReference Include="..\Federation\ApolloGraphQL.HotChocolate.Federation.csproj" />
</ItemGroup>

Expand Down
7 changes: 3 additions & 4 deletions Federation.Tests/Directives/ExternalDirectiveTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ public void AnnotateExternalToTypeFieldCodeFirst()
// arrange
Snapshot.FullName();

var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddQueryType(o => o
.Name("Query")
.Field("field")
Expand Down Expand Up @@ -63,7 +63,7 @@ public void AnnotateExternalToTypeFieldSchemaFirst()
// arrange
Snapshot.FullName();

var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddDocumentFromString(
@"
type Query {
Expand Down Expand Up @@ -91,8 +91,7 @@ public void AnnotateExternalToTypeFieldPureCodeFirst()
{
// arrange
Snapshot.FullName();

var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddQueryType<Query>()
.Create();
Expand Down
7 changes: 4 additions & 3 deletions Federation.Tests/Directives/KeyDirectiveTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ public void AnnotateKeyToObjectTypeCodeFirst()
// arrange
Snapshot.FullName();

var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddQueryType(o => o
.Name("Query")
.Field("someField")
Expand Down Expand Up @@ -81,7 +81,7 @@ public void AnnotateKeyToObjectTypeSchemaFirst()
// arrange
Snapshot.FullName();

var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddDocumentFromString(
@"
type TestType @key(fields: ""id"") {
Expand Down Expand Up @@ -122,7 +122,8 @@ public void AnnotateKeyToObjectTypePureCodeFirst()
// arrange
Snapshot.FullName();

var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.ModifyOptions(opts => opts.QueryTypeName = "QueryOfTestTypeClassDirective")
.AddApolloFederation()
.AddQueryType<Query<TestTypeClassDirective>>()
.Create();
Expand Down
6 changes: 3 additions & 3 deletions Federation.Tests/Directives/ProvidesDirectiveTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ public void AnnotateProvidesToFieldSchemaFirst()
// arrange
Snapshot.FullName();

var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddDocumentFromString(
@"
type Review @key(fields: ""id"") {
Expand Down Expand Up @@ -79,7 +79,7 @@ public void AnnotateProvidesToFieldCodeFirst()
// arrange
Snapshot.FullName();

var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddType(
new ObjectType(o =>
{
Expand Down Expand Up @@ -135,7 +135,7 @@ public void AnnotateProvidesToClassAttributePureCodeFirst()
// arrange
Snapshot.FullName();

var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddQueryType<Query>()
.Create();
Expand Down
6 changes: 3 additions & 3 deletions Federation.Tests/Directives/RequiresDirectiveTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ public void AnnotateProvidesToFieldSchemaFirst()
// arrange
Snapshot.FullName();

var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddDocumentFromString(
@"type Review @key(fields: ""id"") {
id: Int!
Expand Down Expand Up @@ -106,7 +106,7 @@ public void AnnotateProvidesToFieldCodeFirst()
o.Field("someField").Argument("a", a => a.Type<IntType>()).Type(reviewType);
});

var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddQueryType(queryType)
.AddType<FieldSetType>()
.AddDirectiveType<KeyDirectiveType>()
Expand Down Expand Up @@ -136,7 +136,7 @@ public void AnnotateProvidesToClassAttributePureCodeFirst()
// arrange
Snapshot.FullName();

var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddQueryType<Query>()
.Create();
Expand Down
12 changes: 6 additions & 6 deletions Federation.Tests/EntitiesResolverTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,13 @@

namespace ApolloGraphQL.HotChocolate.Federation;

public class EntitiesResolverTests
public class EntitiesResolverTests : FederationTypesTestBase
{
[Fact]
public async void TestResolveViaForeignServiceType()
{
// arrange
var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddQueryType<Query>()
.Create();
Expand Down Expand Up @@ -45,7 +45,7 @@ public async void TestResolveViaForeignServiceType()
public async void TestResolveViaForeignServiceType_MixedTypes()
{
// arrange
var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddQueryType<Query>()
.Create();
Expand Down Expand Up @@ -74,7 +74,7 @@ public async void TestResolveViaForeignServiceType_MixedTypes()
public async void TestResolveViaEntityResolver_WithDataLoader()
{
// arrange
var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddQueryType<Query>()
.Create();
Expand Down Expand Up @@ -109,7 +109,7 @@ public async void TestResolveViaEntityResolver_WithDataLoader()
[Fact]
public async void TestResolveViaEntityResolver_NoTypeFound()
{
var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddQueryType<Query>()
.Create();
Expand All @@ -130,7 +130,7 @@ public async void TestResolveViaEntityResolver_NoTypeFound()
[Fact]
public async void TestResolveViaEntityResolver_NoResolverFound()
{
var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddQueryType<Query>()
.Create();
Expand Down
16 changes: 8 additions & 8 deletions Federation.Tests/EntityTypeTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@

namespace ApolloGraphQL.HotChocolate.Federation;

public class EntityTypeTests
public class EntityTypeTests : FederationTypesTestBase
{
[Fact]
public void TestEntityTypeSchemaFirstSingleKey()
{
// arrange
var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddDocumentFromString(
@"
Expand Down Expand Up @@ -46,7 +46,7 @@ public void TestEntityTypeSchemaFirstSingleKey()
public void TestEntityTypeSchemaFirstMultiKey()
{
// arrange
var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddDocumentFromString(
@"
Expand Down Expand Up @@ -74,7 +74,7 @@ public void TestEntityTypeSchemaFirstMultiKey()
public void TestEntityTypeSchemaFirstNestedKey()
{
// arrange
var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddDocumentFromString(
@"
Expand Down Expand Up @@ -107,7 +107,7 @@ public void TestEntityTypeCodeFirstNoEntities_ShouldThrow()
void CreateSchema()
{
// arrange
SchemaBuilder.New()
CreateSchemaBuilder()
.AddApolloFederation()
.AddQueryType<Query<Address>>()
.Create();
Expand All @@ -121,7 +121,7 @@ void CreateSchema()
public void TestEntityTypeCodeFirstClassKeyAttributeSingleKey()
{
// arrange
var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddQueryType<Query<Review>>()
.Create();
Expand All @@ -137,7 +137,7 @@ public void TestEntityTypeCodeFirstClassKeyAttributeSingleKey()
public void TestEntityTypeCodeFirstClassKeyAttributeMultiKey()
{
// arrange
var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddQueryType<Query<UserWithClassAttribute>>()
.Create();
Expand All @@ -156,7 +156,7 @@ public void TestEntityTypeCodeFirstClassKeyAttributeMultiKey()
public void TestEntityTypeCodeFirstClassKeyAttributeNestedKey()
{
// arrange
var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddQueryType<Query<UserWithNestedKeyClassAttribute>>()
.Create();
Expand Down
18 changes: 16 additions & 2 deletions Federation.Tests/FederationTypesTestBase.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,30 @@
using ApolloGraphQL.HotChocolate.Federation.One;
using HotChocolate;
using HotChocolate.Types;
using Xunit;

namespace ApolloGraphQL.HotChocolate.Federation;

public class FederationTypesTestBase
{
protected ISchemaBuilder CreateSchemaBuilder()
{
return SchemaBuilder.New()
.ModifyOptions(opt =>
{
// tag is added by default
opt.EnableTag = false;
// this is set after we process our federated schema extensions
if (opt.QueryTypeName is null)
{
opt.QueryTypeName = "Query";
}
});
}

protected ISchema CreateSchema(Action<ISchemaBuilder> configure)
{
var builder =
SchemaBuilder.New()
CreateSchemaBuilder()
.AddQueryType(
c =>
{
Expand Down
14 changes: 7 additions & 7 deletions Federation.Tests/One/FederationSchemaPrinterTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

namespace ApolloGraphQL.HotChocolate.Federation.One;

public class FederationSchemaPrinterTests
public class FederationSchemaPrinterTests : FederationTypesTestBase
{
[Fact]
public void TestFederationPrinter_ShouldThrow()
Expand All @@ -27,7 +27,7 @@ public void TestFederationPrinter_ShouldThrow()
public void TestFederationPrinterApolloDirectivesSchemaFirst()
{
// arrange
var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddDocumentFromString(
@"type TestType @key(fields: ""id"") {
Expand All @@ -50,7 +50,7 @@ public void TestFederationPrinterApolloDirectivesSchemaFirst()
public void TestFederationPrinterSchemaFirst()
{
// arrange
var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddDocumentFromString(@"
type TestType @key(fields: ""id"") {
Expand Down Expand Up @@ -105,7 +105,7 @@ interface iQuery {
public void TestFederationPrinterSchemaFirst_With_DateTime()
{
// arrange
var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddDocumentFromString(@"
type TestType @key(fields: ""id"") {
Expand Down Expand Up @@ -163,7 +163,7 @@ scalar DateTime
public void TestFederationPrinterApolloDirectivesPureCodeFirst()
{
// arrange
var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddQueryType<QueryRoot<User>>()
.Create();
Expand All @@ -177,7 +177,7 @@ public void TestFederationPrinterApolloDirectivesPureCodeFirst()
public void TestFederationPrinterTypeExtensionPureCodeFirst()
{
// arrange
var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddApolloFederation()
.AddQueryType<QueryRoot<Product>>()
.Create();
Expand All @@ -191,7 +191,7 @@ public void TestFederationPrinterTypeExtensionPureCodeFirst()
public void CustomDirective()
{
// arrange
var schema = SchemaBuilder.New()
var schema = CreateSchemaBuilder()
.AddQueryType<QueryWithDirective>()
.AddDirectiveType(new CustomDirectiveType())
.Create();
Expand Down

0 comments on commit 1ef8c47

Please sign in to comment.