Skip to content

Commit

Permalink
Add generic request variables in MockedProvider (#7555)
Browse files Browse the repository at this point in the history
* Add generic request variables in MockedProvider

* chore: adds changeset

---------

Co-authored-by: Marcelo Reis <42524424+MarcelReis@users.noreply.github.com>
Co-authored-by: alessia <alessia@apollographql.com>
  • Loading branch information
3 people committed Feb 3, 2023
1 parent 676e11e commit 45562d6
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 4 deletions.
5 changes: 5 additions & 0 deletions .changeset/gorgeous-buses-laugh.md
@@ -0,0 +1,5 @@
---
"@apollo/client": patch
---

Adds `TVariables` generic to `GraphQLRequest` and `MockedResponse` interfaces.
4 changes: 2 additions & 2 deletions src/link/core/types.ts
Expand Up @@ -57,9 +57,9 @@ export type ExecutionPatchResult<
| ExecutionPatchInitialResult<TData, TExtensions>
| ExecutionPatchIncrementalResult<TData, TExtensions>;

export interface GraphQLRequest {
export interface GraphQLRequest<TVariables = Record<string, any>> {
query: DocumentNode;
variables?: Record<string, any>;
variables?: TVariables;
operationName?: string;
context?: DefaultContext;
extensions?: Record<string, any>;
Expand Down
7 changes: 5 additions & 2 deletions src/testing/core/mocking/mockLink.ts
Expand Up @@ -21,8 +21,11 @@ import {

export type ResultFunction<T> = () => T;

export interface MockedResponse<TData = Record<string, any>> {
request: GraphQLRequest;
export interface MockedResponse<
TData = Record<string, any>,
TVariables = Record<string, any>
> {
request: GraphQLRequest<TVariables>;
result?: FetchResult<TData> | ResultFunction<FetchResult<TData>>;
error?: Error;
delay?: number;
Expand Down

0 comments on commit 45562d6

Please sign in to comment.