Skip to content

Commit

Permalink
fix: annotate the "requestId" response resolver argument (#1969)
Browse files Browse the repository at this point in the history
Co-authored-by: Sam Kvale <sam.kvale@sap.com>
  • Loading branch information
skvale and sam-kvale-sap committed Jan 16, 2024
1 parent a4d87da commit f22294e
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 5 deletions.
10 changes: 7 additions & 3 deletions src/core/handlers/GraphQLHandler.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import {
GraphQLResolverExtras,
isDocumentNode,
} from './GraphQLHandler'
import { uuidv4 } from '../utils/internal/uuidv4'
import { HttpResponse } from '../HttpResponse'
import { ResponseResolver } from './RequestHandler'

Expand Down Expand Up @@ -736,7 +737,8 @@ describe('run', () => {
userId: 'abc-123',
},
})
const result = await handler.run({ request })
const requestId = uuidv4()
const result = await handler.run({ request, requestId })

expect(result!.handler).toEqual(handler)
expect(result!.parsedResult).toEqual({
Expand Down Expand Up @@ -777,7 +779,8 @@ describe('run', () => {
const request = createPostGraphQLRequest({
query: LOGIN,
})
const result = await handler.run({ request })
const requestId = uuidv4()
const result = await handler.run({ request, requestId })

expect(result).toBeNull()
})
Expand Down Expand Up @@ -824,7 +827,8 @@ describe('request', () => {
`,
})

await handler.run({ request })
const requestId = uuidv4()
await handler.run({ request, requestId })

expect(matchAllResolver).toHaveBeenCalledTimes(1)
expect(matchAllResolver.mock.calls[0][0]).toHaveProperty(
Expand Down
9 changes: 7 additions & 2 deletions src/core/handlers/HttpHandler.test.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
/**
* @vitest-environment jsdom
*/
import { uuidv4 } from '../utils/internal/uuidv4'
import { HttpHandler, HttpRequestResolverExtras } from './HttpHandler'
import { HttpResponse } from '..'
import { ResponseResolver } from './RequestHandler'
Expand Down Expand Up @@ -151,7 +152,8 @@ describe('run', () => {
test('returns a mocked response given a matching request', async () => {
const handler = new HttpHandler('GET', '/user/:userId', resolver)
const request = new Request(new URL('/user/abc-123', location.href))
const result = await handler.run({ request })
const requestId = uuidv4()
const result = await handler.run({ request, requestId })

expect(result!.handler).toEqual(handler)
expect(result!.parsedResult).toEqual({
Expand All @@ -174,6 +176,7 @@ describe('run', () => {
const handler = new HttpHandler('POST', '/login', resolver)
const result = await handler.run({
request: new Request(new URL('/users', location.href)),
requestId: uuidv4(),
})

expect(result).toBeNull()
Expand All @@ -183,12 +186,13 @@ describe('run', () => {
const handler = new HttpHandler('GET', '/users', resolver)
const result = await handler.run({
request: new Request(new URL('/users', location.href)),
requestId: uuidv4(),
})

expect(result?.parsedResult?.match?.params).toEqual({})
})

test('exhauses resolver until its generator completes', async () => {
test('exhausts resolver until its generator completes', async () => {
const handler = new HttpHandler('GET', '/users', function* () {
let count = 0

Expand All @@ -203,6 +207,7 @@ describe('run', () => {
const run = async () => {
const result = await handler.run({
request: new Request(new URL('/users', location.href)),
requestId: uuidv4(),
})
return result?.response?.text()
}
Expand Down
1 change: 1 addition & 0 deletions src/core/handlers/RequestHandler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ export type ResponseResolverInfo<
RequestBodyType extends DefaultBodyType = DefaultBodyType,
> = {
request: StrictRequest<RequestBodyType>
requestId: string
} & ResolverExtraInfo

export type ResponseResolver<
Expand Down

0 comments on commit f22294e

Please sign in to comment.