Skip to content

Commit 6497f29

Browse files
authored
Fix toThrowGqlError to support asymmetric matchers (#3193)
1 parent 823bd9e commit 6497f29

File tree

1 file changed

+12
-16
lines changed

1 file changed

+12
-16
lines changed

test/utility/expect-gql-error.ts

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
// noinspection JSUnusedGlobalSymbols
22

33
import { stripIndent } from 'common-tags';
4-
import { difference } from 'lodash';
54
import { many, Many } from '../../src/common';
65
import { GqlError } from './create-graphql-client';
76

@@ -28,21 +27,18 @@ expect.extend({
2827
extensions: actualExtensions,
2928
};
3029

31-
const codesPassed = expectedObj.codes
32-
? difference(expectedObj.codes, actualObj.codes).length === 0
33-
: true;
34-
const messagePassed = expectedObj.message
35-
? expectedObj.message === actualObj.message
36-
: true;
37-
const extensionsPassed =
38-
Object.keys(expectedObj.extensions).length > 0
39-
? !!this.utils.subsetEquality.call(
40-
this,
41-
expectedObj.extensions,
42-
actualObj.extensions,
43-
this.customTesters,
44-
)
45-
: true;
30+
const codesPassed = this.equals(
31+
expect.arrayContaining(expectedObj.codes ?? []),
32+
actualObj.codes,
33+
);
34+
const messagePassed = this.equals(
35+
expectedObj.message ?? expect.anything(),
36+
actualObj.message,
37+
);
38+
const extensionsPassed = this.equals(
39+
expect.objectContaining(expectedObj.extensions),
40+
expectedObj.extensions,
41+
);
4642
const pass = codesPassed && messagePassed && extensionsPassed;
4743

4844
const genMessage = () => stripIndent`

0 commit comments

Comments
 (0)