@@ -26,69 +26,90 @@ public function legacyTest(): void
26
26
assertType ('array{ \'abcdef \'} ' , $ mbStrSplitConstantStringWithGreaterSplitLengthThanStringLength );
27
27
28
28
$ mbStrSplitConstantStringWithFailureSplitLength = mb_str_split ('abcdef ' , 0 );
29
- assertType ('false ' , $ mbStrSplitConstantStringWithFailureSplitLength );
29
+ assertType ('*NEVER* ' , $ mbStrSplitConstantStringWithFailureSplitLength );
30
30
31
31
$ mbStrSplitConstantStringWithInvalidSplitLengthType = mb_str_split ('abcdef ' , []);
32
- assertType ('list<string> ' , $ mbStrSplitConstantStringWithInvalidSplitLengthType );
32
+ assertType ('non-empty- list<non-empty- string> ' , $ mbStrSplitConstantStringWithInvalidSplitLengthType );
33
33
34
34
$ mbStrSplitConstantStringWithVariableStringAndConstantSplitLength = mb_str_split (doFoo () ? 'abcdef ' : 'ghijkl ' , 1 );
35
35
assertType ("array{'a', 'b', 'c', 'd', 'e', 'f'}|array{'g', 'h', 'i', 'j', 'k', 'l'} " , $ mbStrSplitConstantStringWithVariableStringAndConstantSplitLength );
36
36
37
37
$ mbStrSplitConstantStringWithVariableStringAndVariableSplitLength = mb_str_split (doFoo () ? 'abcdef ' : 'ghijkl ' , doFoo () ? 1 : 2 );
38
- assertType ('list<string> ' , $ mbStrSplitConstantStringWithVariableStringAndVariableSplitLength );
38
+ assertType ('non-empty- list<non-empty- string> ' , $ mbStrSplitConstantStringWithVariableStringAndVariableSplitLength );
39
39
40
40
$ mbStrSplitConstantStringWithOneSplitLengthAndValidEncoding = mb_str_split ('abcdef ' , 1 , 'UTF-8 ' );
41
41
assertType ("array{'a', 'b', 'c', 'd', 'e', 'f'} " , $ mbStrSplitConstantStringWithOneSplitLengthAndValidEncoding );
42
42
43
43
$ mbStrSplitConstantStringWithOneSplitLengthAndInvalidEncoding = mb_str_split ('abcdef ' , 1 , 'FAKE ' );
44
- assertType ('false ' , $ mbStrSplitConstantStringWithOneSplitLengthAndInvalidEncoding );
44
+ assertType ('*NEVER* ' , $ mbStrSplitConstantStringWithOneSplitLengthAndInvalidEncoding );
45
45
46
46
$ mbStrSplitConstantStringWithOneSplitLengthAndVariableEncoding = mb_str_split ('abcdef ' , 1 , doFoo ());
47
- assertType ('list<string> ' , $ mbStrSplitConstantStringWithOneSplitLengthAndVariableEncoding );
47
+ assertType ('non-empty- list<non-empty- string> ' , $ mbStrSplitConstantStringWithOneSplitLengthAndVariableEncoding );
48
48
49
49
$ mbStrSplitConstantStringWithGreaterSplitLengthThanStringLengthAndValidEncoding = mb_str_split ('abcdef ' , 999 , 'UTF-8 ' );
50
50
assertType ("array{'abcdef'} " , $ mbStrSplitConstantStringWithGreaterSplitLengthThanStringLengthAndValidEncoding );
51
51
52
52
$ mbStrSplitConstantStringWithGreaterSplitLengthThanStringLengthAndInvalidEncoding = mb_str_split ('abcdef ' , 999 , 'FAKE ' );
53
- assertType ('false ' , $ mbStrSplitConstantStringWithGreaterSplitLengthThanStringLengthAndInvalidEncoding );
53
+ assertType ('*NEVER* ' , $ mbStrSplitConstantStringWithGreaterSplitLengthThanStringLengthAndInvalidEncoding );
54
54
55
55
$ mbStrSplitConstantStringWithGreaterSplitLengthThanStringLengthAndVariableEncoding = mb_str_split ('abcdef ' , 999 , doFoo ());
56
- assertType ('list<string> ' , $ mbStrSplitConstantStringWithGreaterSplitLengthThanStringLengthAndVariableEncoding );
56
+ assertType ('non-empty- list<non-empty- string> ' , $ mbStrSplitConstantStringWithGreaterSplitLengthThanStringLengthAndVariableEncoding );
57
57
58
58
$ mbStrSplitConstantStringWithFailureSplitLengthAndValidEncoding = mb_str_split ('abcdef ' , 0 , 'UTF-8 ' );
59
- assertType ('false ' , $ mbStrSplitConstantStringWithFailureSplitLengthAndValidEncoding );
59
+ assertType ('*NEVER* ' , $ mbStrSplitConstantStringWithFailureSplitLengthAndValidEncoding );
60
60
61
61
$ mbStrSplitConstantStringWithFailureSplitLengthAndInvalidEncoding = mb_str_split ('abcdef ' , 0 , 'FAKE ' );
62
- assertType ('false ' , $ mbStrSplitConstantStringWithFailureSplitLengthAndInvalidEncoding );
62
+ assertType ('*NEVER* ' , $ mbStrSplitConstantStringWithFailureSplitLengthAndInvalidEncoding );
63
63
64
64
$ mbStrSplitConstantStringWithFailureSplitLengthAndVariableEncoding = mb_str_split ('abcdef ' , 0 , doFoo ());
65
- assertType ('false ' , $ mbStrSplitConstantStringWithFailureSplitLengthAndVariableEncoding );
65
+ assertType ('*NEVER* ' , $ mbStrSplitConstantStringWithFailureSplitLengthAndVariableEncoding );
66
66
67
67
$ mbStrSplitConstantStringWithInvalidSplitLengthTypeAndValidEncoding = mb_str_split ('abcdef ' , [], 'UTF-8 ' );
68
- assertType ('list<string> ' , $ mbStrSplitConstantStringWithInvalidSplitLengthTypeAndValidEncoding );
68
+ assertType ('non-empty- list<non-empty- string> ' , $ mbStrSplitConstantStringWithInvalidSplitLengthTypeAndValidEncoding );
69
69
70
70
$ mbStrSplitConstantStringWithInvalidSplitLengthTypeAndInvalidEncoding = mb_str_split ('abcdef ' , [], 'FAKE ' );
71
- assertType ('false ' , $ mbStrSplitConstantStringWithInvalidSplitLengthTypeAndInvalidEncoding );
71
+ assertType ('*NEVER* ' , $ mbStrSplitConstantStringWithInvalidSplitLengthTypeAndInvalidEncoding );
72
72
73
73
$ mbStrSplitConstantStringWithInvalidSplitLengthTypeAndVariableEncoding = mb_str_split ('abcdef ' , [], doFoo ());
74
- assertType ('list<string> ' , $ mbStrSplitConstantStringWithInvalidSplitLengthTypeAndVariableEncoding );
74
+ assertType ('non-empty- list<non-empty- string> ' , $ mbStrSplitConstantStringWithInvalidSplitLengthTypeAndVariableEncoding );
75
75
76
76
$ mbStrSplitConstantStringWithVariableStringAndConstantSplitLengthAndValidEncoding = mb_str_split (doFoo () ? 'abcdef ' : 'ghijkl ' , 1 , 'UTF-8 ' );
77
77
assertType ("array{'a', 'b', 'c', 'd', 'e', 'f'}|array{'g', 'h', 'i', 'j', 'k', 'l'} " , $ mbStrSplitConstantStringWithVariableStringAndConstantSplitLengthAndValidEncoding );
78
78
79
79
$ mbStrSplitConstantStringWithVariableStringAndConstantSplitLengthAndInvalidEncoding = mb_str_split (doFoo () ? 'abcdef ' : 'ghijkl ' , 1 , 'FAKE ' );
80
- assertType ('false ' , $ mbStrSplitConstantStringWithVariableStringAndConstantSplitLengthAndInvalidEncoding );
80
+ assertType ('*NEVER* ' , $ mbStrSplitConstantStringWithVariableStringAndConstantSplitLengthAndInvalidEncoding );
81
81
82
82
$ mbStrSplitConstantStringWithVariableStringAndConstantSplitLengthAndVariableEncoding = mb_str_split (doFoo () ? 'abcdef ' : 'ghijkl ' , 1 , doFoo ());
83
- assertType ('list<string> ' , $ mbStrSplitConstantStringWithVariableStringAndConstantSplitLengthAndVariableEncoding );
83
+ assertType ('non-empty- list<non-empty- string> ' , $ mbStrSplitConstantStringWithVariableStringAndConstantSplitLengthAndVariableEncoding );
84
84
85
85
$ mbStrSplitConstantStringWithVariableStringAndVariableSplitLengthAndValidEncoding = mb_str_split (doFoo () ? 'abcdef ' : 'ghijkl ' , doFoo () ? 1 : 2 , 'UTF-8 ' );
86
- assertType ('list<string> ' , $ mbStrSplitConstantStringWithVariableStringAndVariableSplitLengthAndValidEncoding );
86
+ assertType ('non-empty- list<non-empty- string> ' , $ mbStrSplitConstantStringWithVariableStringAndVariableSplitLengthAndValidEncoding );
87
87
88
88
$ mbStrSplitConstantStringWithVariableStringAndVariableSplitLengthAndInvalidEncoding = mb_str_split (doFoo () ? 'abcdef ' : 'ghijkl ' , doFoo () ? 1 : 2 , 'FAKE ' );
89
- assertType ('false ' , $ mbStrSplitConstantStringWithVariableStringAndVariableSplitLengthAndInvalidEncoding );
89
+ assertType ('*NEVER* ' , $ mbStrSplitConstantStringWithVariableStringAndVariableSplitLengthAndInvalidEncoding );
90
90
91
91
$ mbStrSplitConstantStringWithVariableStringAndVariableSplitLengthAndVariableEncoding = mb_str_split (doFoo () ? 'abcdef ' : 'ghijkl ' , doFoo () ? 1 : 2 , doFoo ());
92
- assertType ('list<string> ' , $ mbStrSplitConstantStringWithVariableStringAndVariableSplitLengthAndVariableEncoding );
92
+ assertType ('non-empty-list<non-empty-string> ' , $ mbStrSplitConstantStringWithVariableStringAndVariableSplitLengthAndVariableEncoding );
93
+ }
94
+
95
+ /**
96
+ * @param non-empty-string $nonEmptyString
97
+ * @param non-falsy-string $nonFalsyString
98
+ */
99
+ function doFoo (
100
+ string $ string ,
101
+ string $ nonEmptyString ,
102
+ string $ nonFalsyString ,
103
+ string $ lowercaseString ,
104
+ string $ uppercaseString ,
105
+ int $ integer ,
106
+ ):void {
107
+ assertType ('list<string> ' , mb_str_split ($ string ));
108
+ assertType ('non-empty-list<non-empty-string> ' , mb_str_split ($ nonEmptyString ));
109
+ assertType ('non-empty-list<non-empty-string> ' , mb_str_split ($ nonFalsyString ));
110
+
111
+ assertType ('list<string> ' , mb_str_split ($ string , $ integer ));
112
+ assertType ('non-empty-list<non-empty-string> ' , mb_str_split ($ nonEmptyString , $ integer ));
113
+ assertType ('non-empty-list<non-empty-string> ' , mb_str_split ($ nonFalsyString , $ integer ));
93
114
}
94
115
}
0 commit comments