-
-
Notifications
You must be signed in to change notification settings - Fork 214
/
index.js
31 lines (24 loc) 路 979 Bytes
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import { matcherHint, printExpected, printReceived } from 'jest-matcher-utils';
import { determinePropertyMessage } from '../../utils';
import predicate from './predicate';
const passMessage = (actual, expected) => () =>
`${matcherHint('.not.toBeArrayOfSize')}
Expected value to not be an array of size:
${printExpected(expected)}
Received:
value: ${printReceived(actual)}
length: ${printReceived(determinePropertyMessage(actual, 'length'))}`;
const failMessage = (actual, expected) => () =>
`${matcherHint('.toBeArrayOfSize')}
Expected value to be an array of size:
${printExpected(expected)}
Received:
value: ${printReceived(actual)}
length: ${printReceived(determinePropertyMessage(actual, 'length'))}`;
export function toBeArrayOfSize(actual, expected) {
const pass = predicate(actual, expected);
if (pass) {
return { pass: true, message: passMessage(actual, expected) };
}
return { pass: false, message: failMessage(actual, expected) };
}