Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@ This repository contains a set of tests to evaluate and compare the compatibilit
| [Hive Gateway](https://the-guild.dev/graphql/hive/gateway) | 98.96% | 🟢 190 ❌ 2 | 🟢 42 ❌ 2 |
| [Apollo Router](https://www.apollographql.com/) | 97.40% | 🟢 187 ❌ 5 | 🟢 41 ❌ 3 |
| [Apollo Gateway](https://www.apollographql.com/) | 96.88% | 🟢 186 ❌ 6 | 🟢 40 ❌ 4 |
| [Cosmo Router](https://wundergraph.com) | 94.27% | 🟢 181 ❌ 11 | 🟢 37 ❌ 7 |
| [Grafbase Gateway](https://grafbase.com) | 91.67% | 🟢 176 ❌ 16 | 🟢 38 ❌ 6 |
| [Inigo Gateway](https://inigo.io) | 47.92% | 🟢 92 ❌ 100 | 🟢 12 ❌ 32 |
| [Cosmo Router](https://wundergraph.com) | 0.00% | ❌ 192 | ❌ 44 |

<!-- gateways:end -->

Expand Down
152 changes: 76 additions & 76 deletions REPORT.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@
| [Hive Gateway](https://the-guild.dev/graphql/hive/gateway) | 98.96% | 🟢 190 ❌ 2 | 🟢 42 ❌ 2 |
| [Apollo Router](https://www.apollographql.com/) | 97.40% | 🟢 187 ❌ 5 | 🟢 41 ❌ 3 |
| [Apollo Gateway](https://www.apollographql.com/) | 96.88% | 🟢 186 ❌ 6 | 🟢 40 ❌ 4 |
| [Cosmo Router](https://wundergraph.com) | 94.27% | 🟢 181 ❌ 11 | 🟢 37 ❌ 7 |
| [Grafbase Gateway](https://grafbase.com) | 91.67% | 🟢 176 ❌ 16 | 🟢 38 ❌ 6 |
| [Inigo Gateway](https://inigo.io) | 47.92% | 🟢 92 ❌ 100 | 🟢 12 ❌ 32 |
| [Cosmo Router](https://wundergraph.com) | 0.00% | ❌ 192 | ❌ 44 |

## Detailed Results

Expand Down Expand Up @@ -514,25 +514,25 @@ You can look at the full list of tests [here](./src/test-suites/). Every test id
<pre>🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢</pre>
</details>

<a id="cosmo-router"></a>
<a id="grafbase-gateway"></a>

### Cosmo Router
### Grafbase Gateway

- [Repository](https://github.com/wundergraph/cosmo)
- [Website](https://wundergraph.com)
- [Repository](https://github.com/grafbase/grafbase)
- [Website](https://grafbase.com)

<details>
<summary>Results</summary>
<a href="./src/test-suites/abstract-types">abstract-types</a>
<pre>🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢</pre>
<a href="./src/test-suites/child-type-mismatch">child-type-mismatch</a>
<pre>❌❌❌🟢</pre>
<pre>🟢🟢🟢🟢</pre>
<a href="./src/test-suites/circular-reference-interface">circular-reference-interface</a>
<pre>🟢🟢</pre>
<a href="./src/test-suites/complex-entity-call">complex-entity-call</a>
<pre></pre>
<pre>🟢</pre>
<a href="./src/test-suites/corrupted-supergraph-node-id">corrupted-supergraph-node-id</a>
<pre>🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢</pre>
<pre>❌🟢❌🟢🟢❌🟢🟢🟢🟢</pre>
<a href="./src/test-suites/enum-intersection">enum-intersection</a>
<pre>🟢🟢🟢🟢🟢</pre>
<a href="./src/test-suites/fed1-external-extends">fed1-external-extends</a>
Expand Down Expand Up @@ -568,17 +568,17 @@ You can look at the full list of tests [here](./src/test-suites/). Every test id
<a href="./src/test-suites/null-keys">null-keys</a>
<pre>🟢</pre>
<a href="./src/test-suites/override-type-interface">override-type-interface</a>
<pre>🟢🟢🟢🟢</pre>
<pre>❌❌❌❌</pre>
<a href="./src/test-suites/override-with-requires">override-with-requires</a>
<pre>🟢🟢🟢🟢</pre>
<a href="./src/test-suites/parent-entity-call">parent-entity-call</a>
<pre>🟢</pre>
<a href="./src/test-suites/parent-entity-call-complex">parent-entity-call-complex</a>
<pre></pre>
<pre>🟢</pre>
<a href="./src/test-suites/provides-on-interface">provides-on-interface</a>
<pre>❌❌</pre>
<pre>🟢🟢</pre>
<a href="./src/test-suites/provides-on-union">provides-on-union</a>
<pre>❌❌</pre>
<pre>🟢🟢</pre>
<a href="./src/test-suites/requires-circular">requires-circular</a>
<pre>🟢🟢</pre>
<a href="./src/test-suites/requires-interface">requires-interface</a>
Expand All @@ -598,7 +598,7 @@ You can look at the full list of tests [here](./src/test-suites/). Every test id
<a href="./src/test-suites/simple-inaccessible">simple-inaccessible</a>
<pre>🟢🟢🟢🟢</pre>
<a href="./src/test-suites/simple-interface-object">simple-interface-object</a>
<pre>🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢</pre>
<pre>🟢🟢🟢🟢🟢🟢🟢🟢❌❌❌❌❌</pre>
<a href="./src/test-suites/simple-override">simple-override</a>
<pre>🟢🟢</pre>
<a href="./src/test-suites/simple-requires-provides">simple-requires-provides</a>
Expand All @@ -610,34 +610,34 @@ You can look at the full list of tests [here](./src/test-suites/). Every test id
<a href="./src/test-suites/union-interface-distributed">union-interface-distributed</a>
<pre>🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢</pre>
<a href="./src/test-suites/union-intersection">union-intersection</a>
<pre>🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢</pre>
<pre>🟢🟢🟢🟢🟢🟢🟢🟢❌🟢🟢❌</pre>
</details>

<a id="grafbase-gateway"></a>
<a id="inigo-gateway"></a>

### Grafbase Gateway
### Inigo Gateway

- [Repository](https://github.com/grafbase/grafbase)
- [Website](https://grafbase.com)
- [Repository](https://github.com/inigolabs)
- [Website](https://inigo.io)

<details>
<summary>Results</summary>
<a href="./src/test-suites/abstract-types">abstract-types</a>
<pre>🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢</pre>
<pre>🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢❌❌❌</pre>
<a href="./src/test-suites/child-type-mismatch">child-type-mismatch</a>
<pre>🟢🟢🟢🟢</pre>
<pre>❌❌❌🟢</pre>
<a href="./src/test-suites/circular-reference-interface">circular-reference-interface</a>
<pre>🟢🟢</pre>
<a href="./src/test-suites/complex-entity-call">complex-entity-call</a>
<pre>🟢</pre>
<pre></pre>
<a href="./src/test-suites/corrupted-supergraph-node-id">corrupted-supergraph-node-id</a>
<pre>❌🟢❌🟢🟢❌🟢🟢🟢🟢</pre>
<pre>🟢❌❌❌❌🟢🟢🟢🟢🟢</pre>
<a href="./src/test-suites/enum-intersection">enum-intersection</a>
<pre>🟢🟢🟢🟢🟢</pre>
<pre>❌❌❌❌❌</pre>
<a href="./src/test-suites/fed1-external-extends">fed1-external-extends</a>
<pre>🟢🟢🟢🟢</pre>
<a href="./src/test-suites/fed1-external-extends-resolvable">fed1-external-extends-resolvable</a>
<pre>🟢</pre>
<pre></pre>
<a href="./src/test-suites/fed1-external-extension">fed1-external-extension</a>
<pre>🟢🟢🟢🟢</pre>
<a href="./src/test-suites/fed2-external-extends">fed2-external-extends</a>
Expand All @@ -647,130 +647,130 @@ You can look at the full list of tests [here](./src/test-suites/). Every test id
<a href="./src/test-suites/include-skip">include-skip</a>
<pre>🟢🟢🟢🟢</pre>
<a href="./src/test-suites/input-object-intersection">input-object-intersection</a>
<pre>🟢🟢🟢</pre>
<pre>🟢❌❌</pre>
<a href="./src/test-suites/interface-object-indirect-extension">interface-object-indirect-extension</a>
<pre>❌</pre>
<a href="./src/test-suites/interface-object-with-requires">interface-object-with-requires</a>
<pre>🟢🟢🟢🟢🟢🟢🟢</pre>
<pre>❌❌❌❌❌❌❌</pre>
<a href="./src/test-suites/keys-mashup">keys-mashup</a>
<pre>🟢</pre>
<pre></pre>
<a href="./src/test-suites/mutations">mutations</a>
<pre>🟢🟢🟢🟢</pre>
<pre>🟢🟢🟢</pre>
<a href="./src/test-suites/mysterious-external">mysterious-external</a>
<pre>🟢🟢</pre>
<a href="./src/test-suites/nested-provides">nested-provides</a>
<pre>🟢🟢</pre>
<pre>❌❌</pre>
<a href="./src/test-suites/node">node</a>
<pre>🟢</pre>
<a href="./src/test-suites/non-resolvable-interface-object">non-resolvable-interface-object</a>
<pre>🟢🟢🟢🟢🟢🟢🟢</pre>
<pre>🟢🟢🟢🟢🟢❌❌</pre>
<a href="./src/test-suites/null-keys">null-keys</a>
<pre>🟢</pre>
<pre></pre>
<a href="./src/test-suites/override-type-interface">override-type-interface</a>
<pre>❌❌❌❌</pre>
<pre>❌❌🟢🟢</pre>
<a href="./src/test-suites/override-with-requires">override-with-requires</a>
<pre>🟢🟢🟢🟢</pre>
<a href="./src/test-suites/parent-entity-call">parent-entity-call</a>
<pre>🟢</pre>
<a href="./src/test-suites/parent-entity-call-complex">parent-entity-call-complex</a>
<pre>🟢</pre>
<pre></pre>
<a href="./src/test-suites/provides-on-interface">provides-on-interface</a>
<pre>🟢🟢</pre>
<pre>❌❌</pre>
<a href="./src/test-suites/provides-on-union">provides-on-union</a>
<pre>🟢🟢</pre>
<pre>❌❌</pre>
<a href="./src/test-suites/requires-circular">requires-circular</a>
<pre>🟢🟢</pre>
<pre>❌❌</pre>
<a href="./src/test-suites/requires-interface">requires-interface</a>
<pre>🟢🟢🟢🟢🟢</pre>
<pre>❌❌❌❌❌</pre>
<a href="./src/test-suites/requires-requires">requires-requires</a>
<pre>🟢🟢🟢🟢🟢</pre>
<a href="./src/test-suites/requires-with-argument">requires-with-argument</a>
<pre>🟢🟢🟢🟢🟢</pre>
<pre>❌❌❌❌❌</pre>
<a href="./src/test-suites/requires-with-argument-conflict">requires-with-argument-conflict</a>
<pre>❌</pre>
<a href="./src/test-suites/requires-with-fragments">requires-with-fragments</a>
<pre>🟢🟢🟢🟢🟢🟢</pre>
<pre>❌❌❌❌❌❌</pre>
<a href="./src/test-suites/shared-root">shared-root</a>
<pre>🟢🟢</pre>
<pre>❌❌</pre>
<a href="./src/test-suites/simple-entity-call">simple-entity-call</a>
<pre>🟢</pre>
<pre></pre>
<a href="./src/test-suites/simple-inaccessible">simple-inaccessible</a>
<pre>🟢🟢🟢🟢</pre>
<pre>🟢🟢🟢</pre>
<a href="./src/test-suites/simple-interface-object">simple-interface-object</a>
<pre>🟢🟢🟢🟢🟢🟢🟢🟢❌❌❌❌❌</pre>
<pre>❌❌❌❌❌❌❌❌❌❌❌❌❌</pre>
<a href="./src/test-suites/simple-override">simple-override</a>
<pre>🟢🟢</pre>
<pre>🟢</pre>
<a href="./src/test-suites/simple-requires-provides">simple-requires-provides</a>
<pre>🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢</pre>
<a href="./src/test-suites/typename">typename</a>
<pre>🟢🟢🟢🟢🟢🟢</pre>
<pre>❌❌❌❌❌❌</pre>
<a href="./src/test-suites/unavailable-override">unavailable-override</a>
<pre>🟢🟢</pre>
<pre>🟢</pre>
<a href="./src/test-suites/union-interface-distributed">union-interface-distributed</a>
<pre>🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢</pre>
<pre>❌❌🟢🟢❌❌🟢🟢🟢🟢</pre>
<a href="./src/test-suites/union-intersection">union-intersection</a>
<pre>🟢🟢🟢🟢🟢🟢🟢🟢❌🟢🟢❌</pre>
<pre>❌❌❌❌❌❌❌❌❌🟢❌❌</pre>
</details>

<a id="inigo-gateway"></a>
<a id="cosmo-router"></a>

### Inigo Gateway
### Cosmo Router

- [Repository](https://github.com/inigolabs)
- [Website](https://inigo.io)
- [Repository](https://github.com/wundergraph/cosmo)
- [Website](https://wundergraph.com)

<details>
<summary>Results</summary>
<a href="./src/test-suites/abstract-types">abstract-types</a>
<pre>🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢❌❌❌</pre>
<pre>❌❌❌❌❌❌❌❌❌❌❌❌❌❌❌❌❌❌</pre>
<a href="./src/test-suites/child-type-mismatch">child-type-mismatch</a>
<pre>❌❌❌🟢</pre>
<pre>❌❌❌</pre>
<a href="./src/test-suites/circular-reference-interface">circular-reference-interface</a>
<pre>🟢🟢</pre>
<pre>❌❌</pre>
<a href="./src/test-suites/complex-entity-call">complex-entity-call</a>
<pre>❌</pre>
<a href="./src/test-suites/corrupted-supergraph-node-id">corrupted-supergraph-node-id</a>
<pre>🟢❌❌❌❌🟢🟢🟢🟢🟢</pre>
<pre>❌❌❌❌❌❌❌❌❌❌</pre>
<a href="./src/test-suites/enum-intersection">enum-intersection</a>
<pre>❌❌❌❌❌</pre>
<a href="./src/test-suites/fed1-external-extends">fed1-external-extends</a>
<pre>🟢🟢🟢🟢</pre>
<pre>❌❌❌❌</pre>
<a href="./src/test-suites/fed1-external-extends-resolvable">fed1-external-extends-resolvable</a>
<pre>❌</pre>
<a href="./src/test-suites/fed1-external-extension">fed1-external-extension</a>
<pre>🟢🟢🟢🟢</pre>
<pre>❌❌❌❌</pre>
<a href="./src/test-suites/fed2-external-extends">fed2-external-extends</a>
<pre>🟢🟢🟢🟢</pre>
<pre>❌❌❌❌</pre>
<a href="./src/test-suites/fed2-external-extension">fed2-external-extension</a>
<pre>🟢🟢🟢🟢</pre>
<pre>❌❌❌❌</pre>
<a href="./src/test-suites/include-skip">include-skip</a>
<pre>🟢🟢🟢🟢</pre>
<pre>❌❌❌❌</pre>
<a href="./src/test-suites/input-object-intersection">input-object-intersection</a>
<pre>🟢❌❌</pre>
<pre>❌❌</pre>
<a href="./src/test-suites/interface-object-indirect-extension">interface-object-indirect-extension</a>
<pre>❌</pre>
<a href="./src/test-suites/interface-object-with-requires">interface-object-with-requires</a>
<pre>❌❌❌❌❌❌❌</pre>
<a href="./src/test-suites/keys-mashup">keys-mashup</a>
<pre>❌</pre>
<a href="./src/test-suites/mutations">mutations</a>
<pre>🟢🟢❌🟢</pre>
<pre>❌❌❌❌</pre>
<a href="./src/test-suites/mysterious-external">mysterious-external</a>
<pre>🟢🟢</pre>
<pre>❌❌</pre>
<a href="./src/test-suites/nested-provides">nested-provides</a>
<pre>❌❌</pre>
<a href="./src/test-suites/node">node</a>
<pre>🟢</pre>
<pre></pre>
<a href="./src/test-suites/non-resolvable-interface-object">non-resolvable-interface-object</a>
<pre>🟢🟢🟢🟢🟢❌❌</pre>
<pre>❌❌❌❌❌❌❌</pre>
<a href="./src/test-suites/null-keys">null-keys</a>
<pre>❌</pre>
<a href="./src/test-suites/override-type-interface">override-type-interface</a>
<pre>❌❌🟢🟢</pre>
<pre>❌❌❌❌</pre>
<a href="./src/test-suites/override-with-requires">override-with-requires</a>
<pre>🟢🟢🟢🟢</pre>
<pre>❌❌❌❌</pre>
<a href="./src/test-suites/parent-entity-call">parent-entity-call</a>
<pre>🟢</pre>
<pre></pre>
<a href="./src/test-suites/parent-entity-call-complex">parent-entity-call-complex</a>
<pre>❌</pre>
<a href="./src/test-suites/provides-on-interface">provides-on-interface</a>
Expand All @@ -782,7 +782,7 @@ You can look at the full list of tests [here](./src/test-suites/). Every test id
<a href="./src/test-suites/requires-interface">requires-interface</a>
<pre>❌❌❌❌❌</pre>
<a href="./src/test-suites/requires-requires">requires-requires</a>
<pre>🟢🟢🟢🟢🟢</pre>
<pre>❌❌❌❌❌</pre>
<a href="./src/test-suites/requires-with-argument">requires-with-argument</a>
<pre>❌❌❌❌❌</pre>
<a href="./src/test-suites/requires-with-argument-conflict">requires-with-argument-conflict</a>
Expand All @@ -794,19 +794,19 @@ You can look at the full list of tests [here](./src/test-suites/). Every test id
<a href="./src/test-suites/simple-entity-call">simple-entity-call</a>
<pre>❌</pre>
<a href="./src/test-suites/simple-inaccessible">simple-inaccessible</a>
<pre>🟢🟢❌🟢</pre>
<pre>❌❌❌❌</pre>
<a href="./src/test-suites/simple-interface-object">simple-interface-object</a>
<pre>❌❌❌❌❌❌❌❌❌❌❌❌❌</pre>
<a href="./src/test-suites/simple-override">simple-override</a>
<pre>❌🟢</pre>
<pre>❌</pre>
<a href="./src/test-suites/simple-requires-provides">simple-requires-provides</a>
<pre>🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢🟢</pre>
<pre>❌❌❌❌❌❌❌❌❌❌❌❌</pre>
<a href="./src/test-suites/typename">typename</a>
<pre>❌❌❌❌❌❌</pre>
<a href="./src/test-suites/unavailable-override">unavailable-override</a>
<pre>❌🟢</pre>
<pre>❌</pre>
<a href="./src/test-suites/union-interface-distributed">union-interface-distributed</a>
<pre>❌❌🟢🟢❌❌🟢🟢🟢🟢</pre>
<pre>❌❌❌❌❌❌❌❌❌❌</pre>
<a href="./src/test-suites/union-intersection">union-intersection</a>
<pre>❌❌❌❌❌❌❌❌❌🟢❌❌</pre>
<pre>❌❌❌❌❌❌❌❌❌❌❌</pre>
</details>
Loading