@apollo/gateway 2.0.0-alpha.3 → 2.0.0-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/dist/config.d.ts +41 -15
  2. package/dist/config.d.ts.map +1 -1
  3. package/dist/config.js +28 -18
  4. package/dist/config.js.map +1 -1
  5. package/dist/datasources/LocalGraphQLDataSource.js.map +1 -1
  6. package/dist/executeQueryPlan.d.ts.map +1 -1
  7. package/dist/executeQueryPlan.js +1 -1
  8. package/dist/executeQueryPlan.js.map +1 -1
  9. package/dist/index.d.ts +36 -24
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +197 -295
  12. package/dist/index.js.map +1 -1
  13. package/dist/schema-helper/addResolversToSchema.d.ts +4 -0
  14. package/dist/schema-helper/addResolversToSchema.d.ts.map +1 -0
  15. package/dist/schema-helper/addResolversToSchema.js +62 -0
  16. package/dist/schema-helper/addResolversToSchema.js.map +1 -0
  17. package/dist/schema-helper/error.d.ts +6 -0
  18. package/dist/schema-helper/error.d.ts.map +1 -0
  19. package/dist/schema-helper/error.js +14 -0
  20. package/dist/schema-helper/error.js.map +1 -0
  21. package/dist/schema-helper/index.d.ts +4 -0
  22. package/dist/schema-helper/index.d.ts.map +1 -0
  23. package/dist/schema-helper/index.js +16 -0
  24. package/dist/schema-helper/index.js.map +1 -0
  25. package/dist/schema-helper/resolverMap.d.ts +16 -0
  26. package/dist/schema-helper/resolverMap.d.ts.map +1 -0
  27. package/dist/schema-helper/resolverMap.js +3 -0
  28. package/dist/schema-helper/resolverMap.js.map +1 -0
  29. package/dist/supergraphManagers/IntrospectAndCompose/index.d.ts +31 -0
  30. package/dist/supergraphManagers/IntrospectAndCompose/index.d.ts.map +1 -0
  31. package/dist/supergraphManagers/IntrospectAndCompose/index.js +112 -0
  32. package/dist/supergraphManagers/IntrospectAndCompose/index.js.map +1 -0
  33. package/dist/supergraphManagers/IntrospectAndCompose/loadServicesFromRemoteEndpoint.d.ts +12 -0
  34. package/dist/supergraphManagers/IntrospectAndCompose/loadServicesFromRemoteEndpoint.d.ts.map +1 -0
  35. package/dist/{loadServicesFromRemoteEndpoint.js → supergraphManagers/IntrospectAndCompose/loadServicesFromRemoteEndpoint.js} +6 -6
  36. package/dist/supergraphManagers/IntrospectAndCompose/loadServicesFromRemoteEndpoint.js.map +1 -0
  37. package/dist/supergraphManagers/LegacyFetcher/index.d.ts +33 -0
  38. package/dist/supergraphManagers/LegacyFetcher/index.d.ts.map +1 -0
  39. package/dist/supergraphManagers/LegacyFetcher/index.js +149 -0
  40. package/dist/supergraphManagers/LegacyFetcher/index.js.map +1 -0
  41. package/dist/supergraphManagers/LocalCompose/index.d.ts +19 -0
  42. package/dist/supergraphManagers/LocalCompose/index.d.ts.map +1 -0
  43. package/dist/supergraphManagers/LocalCompose/index.js +55 -0
  44. package/dist/supergraphManagers/LocalCompose/index.js.map +1 -0
  45. package/dist/supergraphManagers/UplinkFetcher/index.d.ts +32 -0
  46. package/dist/supergraphManagers/UplinkFetcher/index.d.ts.map +1 -0
  47. package/dist/supergraphManagers/UplinkFetcher/index.js +96 -0
  48. package/dist/supergraphManagers/UplinkFetcher/index.js.map +1 -0
  49. package/dist/{loadSupergraphSdlFromStorage.d.ts → supergraphManagers/UplinkFetcher/loadSupergraphSdlFromStorage.d.ts} +1 -1
  50. package/dist/supergraphManagers/UplinkFetcher/loadSupergraphSdlFromStorage.d.ts.map +1 -0
  51. package/dist/{loadSupergraphSdlFromStorage.js → supergraphManagers/UplinkFetcher/loadSupergraphSdlFromStorage.js} +1 -1
  52. package/dist/supergraphManagers/UplinkFetcher/loadSupergraphSdlFromStorage.js.map +1 -0
  53. package/dist/{outOfBandReporter.d.ts → supergraphManagers/UplinkFetcher/outOfBandReporter.d.ts} +0 -0
  54. package/dist/supergraphManagers/UplinkFetcher/outOfBandReporter.d.ts.map +1 -0
  55. package/dist/{outOfBandReporter.js → supergraphManagers/UplinkFetcher/outOfBandReporter.js} +2 -2
  56. package/dist/supergraphManagers/UplinkFetcher/outOfBandReporter.js.map +1 -0
  57. package/dist/supergraphManagers/index.d.ts +5 -0
  58. package/dist/supergraphManagers/index.d.ts.map +1 -0
  59. package/dist/supergraphManagers/index.js +12 -0
  60. package/dist/supergraphManagers/index.js.map +1 -0
  61. package/dist/utilities/createHash.d.ts +2 -0
  62. package/dist/utilities/createHash.d.ts.map +1 -0
  63. package/dist/utilities/createHash.js +15 -0
  64. package/dist/utilities/createHash.js.map +1 -0
  65. package/dist/utilities/isNodeLike.d.ts +3 -0
  66. package/dist/utilities/isNodeLike.d.ts.map +1 -0
  67. package/dist/utilities/isNodeLike.js +8 -0
  68. package/dist/utilities/isNodeLike.js.map +1 -0
  69. package/package.json +8 -7
  70. package/src/__tests__/executeQueryPlan.test.ts +1 -1
  71. package/src/__tests__/execution-utils.ts +3 -3
  72. package/src/__tests__/gateway/buildService.test.ts +2 -2
  73. package/src/__tests__/gateway/endToEnd.test.ts +1 -1
  74. package/src/__tests__/gateway/lifecycle-hooks.test.ts +59 -125
  75. package/src/__tests__/gateway/opentelemetry.test.ts +8 -4
  76. package/src/__tests__/gateway/queryPlanCache.test.ts +25 -12
  77. package/src/__tests__/gateway/reporting.test.ts +34 -8
  78. package/src/__tests__/gateway/supergraphSdl.test.ts +397 -0
  79. package/src/__tests__/integration/aliases.test.ts +9 -4
  80. package/src/__tests__/integration/configuration.test.ts +109 -12
  81. package/src/__tests__/integration/logger.test.ts +1 -1
  82. package/src/__tests__/integration/networkRequests.test.ts +81 -131
  83. package/src/__tests__/integration/nockMocks.ts +15 -8
  84. package/src/config.ts +148 -39
  85. package/src/datasources/LocalGraphQLDataSource.ts +1 -1
  86. package/src/datasources/__tests__/LocalGraphQLDataSource.test.ts +1 -1
  87. package/src/executeQueryPlan.ts +3 -1
  88. package/src/index.ts +322 -466
  89. package/src/schema-helper/addResolversToSchema.ts +83 -0
  90. package/src/schema-helper/error.ts +11 -0
  91. package/src/schema-helper/index.ts +3 -0
  92. package/src/schema-helper/resolverMap.ts +23 -0
  93. package/src/supergraphManagers/IntrospectAndCompose/__tests__/IntrospectAndCompose.test.ts +370 -0
  94. package/src/{__tests__ → supergraphManagers/IntrospectAndCompose/__tests__}/loadServicesFromRemoteEndpoint.test.ts +5 -5
  95. package/src/supergraphManagers/IntrospectAndCompose/__tests__/tsconfig.json +8 -0
  96. package/src/supergraphManagers/IntrospectAndCompose/index.ts +160 -0
  97. package/src/{loadServicesFromRemoteEndpoint.ts → supergraphManagers/IntrospectAndCompose/loadServicesFromRemoteEndpoint.ts} +6 -6
  98. package/src/supergraphManagers/LegacyFetcher/index.ts +226 -0
  99. package/src/supergraphManagers/LocalCompose/index.ts +79 -0
  100. package/src/{__tests__ → supergraphManagers/UplinkFetcher/__tests__}/loadSupergraphSdlFromStorage.test.ts +4 -4
  101. package/src/supergraphManagers/UplinkFetcher/__tests__/tsconfig.json +8 -0
  102. package/src/supergraphManagers/UplinkFetcher/index.ts +128 -0
  103. package/src/{loadSupergraphSdlFromStorage.ts → supergraphManagers/UplinkFetcher/loadSupergraphSdlFromStorage.ts} +3 -3
  104. package/src/{outOfBandReporter.ts → supergraphManagers/UplinkFetcher/outOfBandReporter.ts} +2 -2
  105. package/src/supergraphManagers/index.ts +4 -0
  106. package/src/utilities/__tests__/cleanErrorOfInaccessibleElements.test.ts +12 -9
  107. package/src/utilities/createHash.ts +10 -0
  108. package/src/utilities/isNodeLike.ts +11 -0
  109. package/dist/loadServicesFromRemoteEndpoint.d.ts +0 -13
  110. package/dist/loadServicesFromRemoteEndpoint.d.ts.map +0 -1
  111. package/dist/loadServicesFromRemoteEndpoint.js.map +0 -1
  112. package/dist/loadSupergraphSdlFromStorage.d.ts.map +0 -1
  113. package/dist/loadSupergraphSdlFromStorage.js.map +0 -1
  114. package/dist/outOfBandReporter.d.ts.map +0 -1
  115. package/dist/outOfBandReporter.js.map +0 -1
  116. package/src/__tests__/gateway/composedSdl.test.ts +0 -44
@@ -1,44 +0,0 @@
1
- import { fetch } from '../../__mocks__/make-fetch-happen-fetcher';
2
- import { ApolloGateway } from '@apollo/gateway';
3
- import { ApolloServer } from 'apollo-server';
4
- import { getTestingSupergraphSdl } from '../execution-utils';
5
-
6
- async function getSupergraphSdlGatewayServer() {
7
- const server = new ApolloServer({
8
- gateway: new ApolloGateway({
9
- supergraphSdl: getTestingSupergraphSdl(),
10
- }),
11
- });
12
-
13
- await server.listen({ port: 0 });
14
- return server;
15
- }
16
-
17
- describe('Using supergraphSdl configuration', () => {
18
- it('successfully starts and serves requests to the proper services', async () => {
19
- const server = await getSupergraphSdlGatewayServer();
20
-
21
- fetch.mockJSONResponseOnce({
22
- data: { me: { username: '@jbaxleyiii' } },
23
- });
24
-
25
- const result = await server.executeOperation({
26
- query: '{ me { username } }',
27
- });
28
-
29
- expect(result.data).toMatchInlineSnapshot(`
30
- Object {
31
- "me": Object {
32
- "username": "@jbaxleyiii",
33
- },
34
- }
35
- `);
36
-
37
- const [url, request] = fetch.mock.calls[0];
38
- expect(url).toEqual('https://accounts.api.com.invalid');
39
- expect(request?.body).toEqual(
40
- JSON.stringify({ query: '{me{username}}', variables: {} }),
41
- );
42
- await server.stop();
43
- });
44
- });