Skip to content

Commit 0d24ddd

Browse files
committed
👍 Add isRequiredOf
1 parent eb4d161 commit 0d24ddd

File tree

5 files changed

+216
-108
lines changed

5 files changed

+216
-108
lines changed

is/__snapshots__/annotation_test.ts.snap

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,10 @@ snapshot[`isReadonlyOf<T> > returns properly named function 1`] = `"isReadonlyOf
1010
1111
snapshot[`isReadonlyOf<T> > returns properly named function 2`] = `"isReadonlyOf(isReadonlyOf(isNumber))"`;
1212
13-
snapshot[`isOptionalOf<T> > returns properly named function 1`] = `"isOptionalOf(isNumber)"`;
14-
15-
snapshot[`isOptionalOf<T> > returns properly named function 2`] = `"isOptionalOf(isNumber)"`;
16-
1713
snapshot[`isUnwrapReadonlyOf<T> > returns properly named function 1`] = `"isNumber"`;
1814
1915
snapshot[`isUnwrapReadonlyOf<T> > returns properly named function 2`] = `"isReadonlyOf(isNumber)"`;
16+
17+
snapshot[`isOptionalOf<T> > returns properly named function 1`] = `"isOptionalOf(isNumber)"`;
18+
19+
snapshot[`isOptionalOf<T> > returns properly named function 2`] = `"isOptionalOf(isNumber)"`;
Lines changed: 82 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
export const snapshot = {};
22

3+
snapshot[`isInstanceOf<T> > returns properly named function 1`] = `"isInstanceOf(Date)"`;
4+
5+
snapshot[`isInstanceOf<T> > returns properly named function 2`] = `"isInstanceOf((anonymous))"`;
6+
37
snapshot[`isMapOf<T> > returns properly named function 1`] = `"isMapOf(isNumber, undefined)"`;
48
59
snapshot[`isMapOf<T> > returns properly named function 2`] = `"isMapOf((anonymous), undefined)"`;
@@ -10,55 +14,7 @@ snapshot[`isUniformTupleOf<T> > returns properly named function 2`] = `"isUnifor
1014
1115
snapshot[`isUniformTupleOf<T> > returns properly named function 3`] = `"isUniformTupleOf(3, (anonymous))"`;
1216
13-
snapshot[`isRecordOf<T> > returns properly named function 1`] = `"isRecordOf(isNumber, undefined)"`;
14-
15-
snapshot[`isRecordOf<T> > returns properly named function 2`] = `"isRecordOf((anonymous), undefined)"`;
16-
17-
snapshot[`isObjectOf<T> > returns properly named function 1`] = `
18-
"isObjectOf({
19-
a: isNumber,
20-
b: isString,
21-
c: isBoolean
22-
})"
23-
`;
24-
25-
snapshot[`isObjectOf<T> > returns properly named function 2`] = `"isObjectOf({a: a})"`;
26-
27-
snapshot[`isObjectOf<T> > returns properly named function 3`] = `
28-
"isObjectOf({
29-
a: isObjectOf({
30-
b: isObjectOf({c: isBoolean})
31-
})
32-
})"
33-
`;
34-
35-
snapshot[`isTupleOf<T, E> > returns properly named function 1`] = `
36-
"isTupleOf([
37-
isNumber,
38-
isString,
39-
isBoolean
40-
], isArray)"
41-
`;
42-
43-
snapshot[`isTupleOf<T, E> > returns properly named function 2`] = `"isTupleOf([(anonymous)], isArrayOf(isString))"`;
44-
45-
snapshot[`isTupleOf<T, E> > returns properly named function 3`] = `
46-
"isTupleOf([
47-
isTupleOf([
48-
isTupleOf([
49-
isNumber,
50-
isString,
51-
isBoolean
52-
], isArray)
53-
], isArray)
54-
])"
55-
`;
56-
57-
snapshot[`isReadonlyUniformTupleOf<T> > returns properly named function 1`] = `"isReadonlyOf(isUniformTupleOf(3, isAny))"`;
58-
59-
snapshot[`isReadonlyUniformTupleOf<T> > returns properly named function 2`] = `"isReadonlyOf(isUniformTupleOf(3, isNumber))"`;
60-
61-
snapshot[`isReadonlyUniformTupleOf<T> > returns properly named function 3`] = `"isReadonlyOf(isUniformTupleOf(3, (anonymous)))"`;
17+
snapshot[`isLiteralOneOf<T> > returns properly named function 1`] = `'isLiteralOneOf(["hello", "world"])'`;
6218
6319
snapshot[`isReadonlyTupleOf<T, E> > returns properly named function 1`] = `
6420
"isReadonlyOf(isTupleOf([
@@ -82,32 +38,28 @@ snapshot[`isReadonlyTupleOf<T, E> > returns properly named function 3`] = `
8238
], isArray))"
8339
`;
8440
85-
snapshot[`isTupleOf<T> > returns properly named function 1`] = `
86-
"isTupleOf([
41+
snapshot[`isReadonlyTupleOf<T> > returns properly named function 1`] = `
42+
"isReadonlyOf(isTupleOf([
8743
isNumber,
8844
isString,
8945
isBoolean
90-
])"
46+
]))"
9147
`;
9248
93-
snapshot[`isTupleOf<T> > returns properly named function 2`] = `"isTupleOf([(anonymous)])"`;
49+
snapshot[`isReadonlyTupleOf<T> > returns properly named function 2`] = `"isReadonlyOf(isTupleOf([(anonymous)]))"`;
9450
95-
snapshot[`isTupleOf<T> > returns properly named function 3`] = `
96-
"isTupleOf([
97-
isTupleOf([
98-
isTupleOf([
51+
snapshot[`isReadonlyTupleOf<T> > returns properly named function 3`] = `
52+
"isReadonlyOf(isTupleOf([
53+
isReadonlyOf(isTupleOf([
54+
isReadonlyOf(isTupleOf([
9955
isNumber,
10056
isString,
10157
isBoolean
102-
])
103-
])
104-
])"
58+
]))
59+
]))
60+
]))"
10561
`;
10662
107-
snapshot[`isSetOf<T> > returns properly named function 1`] = `"isSetOf(isNumber)"`;
108-
109-
snapshot[`isSetOf<T> > returns properly named function 2`] = `"isSetOf((anonymous))"`;
110-
11163
snapshot[`isStrictOf<T> > returns properly named function 1`] = `
11264
"isStrictOf(isObjectOf({
11365
a: isNumber,
@@ -126,6 +78,16 @@ snapshot[`isStrictOf<T> > returns properly named function 3`] = `
12678
}))"
12779
`;
12880
81+
snapshot[`isReadonlyUniformTupleOf<T> > returns properly named function 1`] = `"isReadonlyOf(isUniformTupleOf(3, isAny))"`;
82+
83+
snapshot[`isReadonlyUniformTupleOf<T> > returns properly named function 2`] = `"isReadonlyOf(isUniformTupleOf(3, isNumber))"`;
84+
85+
snapshot[`isReadonlyUniformTupleOf<T> > returns properly named function 3`] = `"isReadonlyOf(isUniformTupleOf(3, (anonymous)))"`;
86+
87+
snapshot[`isMapOf<T, K> > returns properly named function 1`] = `"isMapOf(isNumber, isString)"`;
88+
89+
snapshot[`isMapOf<T, K> > returns properly named function 2`] = `"isMapOf((anonymous), isString)"`;
90+
12991
snapshot[`isLiteralOf<T> > returns properly named function 1`] = `'isLiteralOf("hello")'`;
13092
13193
snapshot[`isLiteralOf<T> > returns properly named function 2`] = `"isLiteralOf(100)"`;
@@ -140,42 +102,80 @@ snapshot[`isLiteralOf<T> > returns properly named function 6`] = `"isLiteralOf(u
140102
141103
snapshot[`isLiteralOf<T> > returns properly named function 7`] = `"isLiteralOf(Symbol(asdf))"`;
142104
143-
snapshot[`isRecordOf<T, K> > returns properly named function 1`] = `"isRecordOf(isNumber, isString)"`;
105+
snapshot[`isTupleOf<T> > returns properly named function 1`] = `
106+
"isTupleOf([
107+
isNumber,
108+
isString,
109+
isBoolean
110+
])"
111+
`;
144112
145-
snapshot[`isRecordOf<T, K> > returns properly named function 2`] = `"isRecordOf((anonymous), isString)"`;
113+
snapshot[`isTupleOf<T> > returns properly named function 2`] = `"isTupleOf([(anonymous)])"`;
146114
147-
snapshot[`isInstanceOf<T> > returns properly named function 1`] = `"isInstanceOf(Date)"`;
115+
snapshot[`isTupleOf<T> > returns properly named function 3`] = `
116+
"isTupleOf([
117+
isTupleOf([
118+
isTupleOf([
119+
isNumber,
120+
isString,
121+
isBoolean
122+
])
123+
])
124+
])"
125+
`;
148126
149-
snapshot[`isInstanceOf<T> > returns properly named function 2`] = `"isInstanceOf((anonymous))"`;
127+
snapshot[`isRecordOf<T, K> > returns properly named function 1`] = `"isRecordOf(isNumber, isString)"`;
150128
151-
snapshot[`isReadonlyTupleOf<T> > returns properly named function 1`] = `
152-
"isReadonlyOf(isTupleOf([
129+
snapshot[`isRecordOf<T, K> > returns properly named function 2`] = `"isRecordOf((anonymous), isString)"`;
130+
131+
snapshot[`isTupleOf<T, E> > returns properly named function 1`] = `
132+
"isTupleOf([
153133
isNumber,
154134
isString,
155135
isBoolean
156-
]))"
136+
], isArray)"
157137
`;
158138
159-
snapshot[`isReadonlyTupleOf<T> > returns properly named function 2`] = `"isReadonlyOf(isTupleOf([(anonymous)]))"`;
139+
snapshot[`isTupleOf<T, E> > returns properly named function 2`] = `"isTupleOf([(anonymous)], isArrayOf(isString))"`;
160140
161-
snapshot[`isReadonlyTupleOf<T> > returns properly named function 3`] = `
162-
"isReadonlyOf(isTupleOf([
163-
isReadonlyOf(isTupleOf([
164-
isReadonlyOf(isTupleOf([
141+
snapshot[`isTupleOf<T, E> > returns properly named function 3`] = `
142+
"isTupleOf([
143+
isTupleOf([
144+
isTupleOf([
165145
isNumber,
166146
isString,
167147
isBoolean
168-
]))
169-
]))
170-
]))"
148+
], isArray)
149+
], isArray)
150+
])"
151+
`;
152+
153+
snapshot[`isObjectOf<T> > returns properly named function 1`] = `
154+
"isObjectOf({
155+
a: isNumber,
156+
b: isString,
157+
c: isBoolean
158+
})"
159+
`;
160+
161+
snapshot[`isObjectOf<T> > returns properly named function 2`] = `"isObjectOf({a: a})"`;
162+
163+
snapshot[`isObjectOf<T> > returns properly named function 3`] = `
164+
"isObjectOf({
165+
a: isObjectOf({
166+
b: isObjectOf({c: isBoolean})
167+
})
168+
})"
171169
`;
172170
173171
snapshot[`isArrayOf<T> > returns properly named function 1`] = `"isArrayOf(isNumber)"`;
174172
175173
snapshot[`isArrayOf<T> > returns properly named function 2`] = `"isArrayOf((anonymous))"`;
176174
177-
snapshot[`isLiteralOneOf<T> > returns properly named function 1`] = `'isLiteralOneOf(["hello", "world"])'`;
175+
snapshot[`isSetOf<T> > returns properly named function 1`] = `"isSetOf(isNumber)"`;
178176
179-
snapshot[`isMapOf<T, K> > returns properly named function 1`] = `"isMapOf(isNumber, isString)"`;
177+
snapshot[`isSetOf<T> > returns properly named function 2`] = `"isSetOf((anonymous))"`;
180178
181-
snapshot[`isMapOf<T, K> > returns properly named function 2`] = `"isMapOf((anonymous), isString)"`;
179+
snapshot[`isRecordOf<T> > returns properly named function 1`] = `"isRecordOf(isNumber, undefined)"`;
180+
181+
snapshot[`isRecordOf<T> > returns properly named function 2`] = `"isRecordOf((anonymous), undefined)"`;

is/__snapshots__/utility_test.ts.snap

Lines changed: 45 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,63 @@
11
export const snapshot = {};
22

3-
snapshot[`isIntersectionOf<T> > returns properly named function 1`] = `
3+
snapshot[`isRequiredOf<T> > returns properly named function 1`] = `
44
"isObjectOf({
55
a: isNumber,
6-
b: isString
6+
b: isUnionOf([
7+
isString,
8+
isUndefined
9+
]),
10+
c: isBoolean
711
})"
812
`;
913
14+
snapshot[`isRequiredOf<T> > returns properly named function 2`] = `
15+
"isObjectOf({
16+
a: isNumber,
17+
b: isUnionOf([
18+
isString,
19+
isUndefined
20+
]),
21+
c: isBoolean
22+
})"
23+
`;
24+
25+
snapshot[`isPickOf<T, K> > returns properly named function 1`] = `
26+
"isObjectOf({
27+
a: isNumber,
28+
c: isBoolean
29+
})"
30+
`;
31+
32+
snapshot[`isPickOf<T, K> > returns properly named function 2`] = `"isObjectOf({a: isNumber})"`;
33+
1034
snapshot[`isPartialOf<T> > returns properly named function 1`] = `
1135
"isObjectOf({
1236
a: isOptionalOf(isNumber),
13-
b: isOptionalOf(isString),
37+
b: isOptionalOf(isUnionOf([
38+
isString,
39+
isUndefined
40+
])),
1441
c: isOptionalOf(isBoolean)
1542
})"
1643
`;
1744
1845
snapshot[`isPartialOf<T> > returns properly named function 2`] = `
1946
"isObjectOf({
2047
a: isOptionalOf(isNumber),
21-
b: isOptionalOf(isString),
48+
b: isOptionalOf(isUnionOf([
49+
isString,
50+
isUndefined
51+
])),
2252
c: isOptionalOf(isBoolean)
2353
})"
2454
`;
2555
26-
snapshot[`isUnionOf<T> > returns properly named function 1`] = `
27-
"isUnionOf([
28-
isNumber,
29-
isString,
30-
isBoolean
31-
])"
56+
snapshot[`isIntersectionOf<T> > returns properly named function 1`] = `
57+
"isObjectOf({
58+
a: isNumber,
59+
b: isString
60+
})"
3261
`;
3362
3463
snapshot[`isOmitOf<T, K> > returns properly named function 1`] = `
@@ -40,11 +69,10 @@ snapshot[`isOmitOf<T, K> > returns properly named function 1`] = `
4069
4170
snapshot[`isOmitOf<T, K> > returns properly named function 2`] = `"isObjectOf({a: isNumber})"`;
4271
43-
snapshot[`isPickOf<T, K> > returns properly named function 1`] = `
44-
"isObjectOf({
45-
a: isNumber,
46-
c: isBoolean
47-
})"
72+
snapshot[`isUnionOf<T> > returns properly named function 1`] = `
73+
"isUnionOf([
74+
isNumber,
75+
isString,
76+
isBoolean
77+
])"
4878
`;
49-
50-
snapshot[`isPickOf<T, K> > returns properly named function 2`] = `"isObjectOf({a: isNumber})"`;

0 commit comments

Comments
 (0)