-
-
Notifications
You must be signed in to change notification settings - Fork 82
/
Copy pathtoHaveArrayOfStrings.spec.js
41 lines (40 loc) · 1.26 KB
/
toHaveArrayOfStrings.spec.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
32
33
34
35
36
37
38
39
40
41
const describeToHaveArrayX = require('./lib/describeToHaveArrayX');
describe('toHaveArrayOfStrings', () => {
describeToHaveArrayX('toHaveArrayOfStrings', () => {
describe('when named Array is empty', () => {
it('should confirm', () => {
expect({
memberName: []
}).toHaveArrayOfStrings('memberName');
});
});
describe('when named Array has items', () => {
describe('when all items are strings', () => {
it('should confirm', () => {
expect({
memberName: ['truthy']
}).toHaveArrayOfStrings('memberName');
expect({
memberName: [new String('truthy')]
}).toHaveArrayOfStrings('memberName');
expect({
memberName: [new String('')]
}).toHaveArrayOfStrings('memberName');
expect({
memberName: ['', 'truthy']
}).toHaveArrayOfStrings('memberName');
});
});
describe('when any item is not a string', () => {
it('should deny', () => {
expect({
memberName: [null]
}).not.toHaveArrayOfStrings('memberName');
expect({
memberName: [null, '']
}).not.toHaveArrayOfStrings('memberName');
});
});
});
});
});