@@ -13,19 +13,28 @@ protected function testOptionalKeys(array $row): void
13
13
{
14
14
if (count ($ row ) === 1 ) {
15
15
assertType ('array{0: mixed, 1?: string|null} ' , $ row );
16
+ } else {
17
+ assertType ('array{0: mixed, 1?: string|null} ' , $ row );
16
18
}
17
19
18
20
if (count ($ row ) !== 1 ) {
19
21
assertType ('array{0: mixed, 1?: string|null} ' , $ row );
22
+ } else {
23
+ assertType ('array{0: mixed, 1?: string|null} ' , $ row );
20
24
}
21
25
22
26
if (count ($ row ) !== 2 ) {
23
27
assertType ('array{0: mixed, 1?: string|null} ' , $ row );
28
+ } else {
29
+ // should be array{0: mixed, 1: string|null}
30
+ assertType ('array{mixed, mixed} ' , $ row );
24
31
}
25
32
26
33
if (count ($ row ) !== 3 ) {
27
34
// should be array{0: mixed, 1?: string|null}
28
35
assertType ('array{0: mixed, 1?: mixed} ' , $ row );
36
+ } else {
37
+ assertType ('*NEVER* ' , $ row );
29
38
}
30
39
}
31
40
@@ -36,14 +45,20 @@ protected function test(array $row): void
36
45
{
37
46
if (count ($ row ) !== 1 ) {
38
47
assertType ('array{mixed, string|null, mixed} ' , $ row );
48
+ } else {
49
+ assertType ('array{0: mixed, 1?: string|null} ' , $ row );
39
50
}
40
51
41
52
if (count ($ row ) !== 2 ) {
42
53
assertType ('array{mixed, string|null, mixed}|array{mixed} ' , $ row );
54
+ } else {
55
+ assertType ('*NEVER* ' , $ row );
43
56
}
44
57
45
58
if (count ($ row ) !== 3 ) {
46
59
assertType ('array{mixed} ' , $ row );
60
+ } else {
61
+ assertType ('array{mixed, string|null, mixed} ' , $ row );
47
62
}
48
63
}
49
64
}
0 commit comments