@@ -106,12 +106,14 @@ public function scalars(bool $bool, float $float, int $int, string $string, int
106106 assertType ('bool|null ' , filter_var ($ float , FILTER_VALIDATE_BOOLEAN , FILTER_NULL_ON_FAILURE ));
107107 assertType ('bool|null ' , filter_var (17.0 , FILTER_VALIDATE_BOOLEAN , FILTER_NULL_ON_FAILURE )); // could be null
108108 assertType ('bool|null ' , filter_var (17.1 , FILTER_VALIDATE_BOOLEAN , FILTER_NULL_ON_FAILURE )); // could be null
109+ assertType ('bool|null ' , filter_var (1e-50 , FILTER_VALIDATE_BOOLEAN , FILTER_NULL_ON_FAILURE )); // could be null
109110 assertType ('bool|null ' , filter_var ($ int , FILTER_VALIDATE_BOOLEAN , FILTER_NULL_ON_FAILURE ));
110111 assertType ('bool|null ' , filter_var ($ intRange , FILTER_VALIDATE_BOOLEAN , FILTER_NULL_ON_FAILURE ));
111112 assertType ('bool|null ' , filter_var (17 , FILTER_VALIDATE_BOOLEAN , FILTER_NULL_ON_FAILURE )); // could be null
112113 assertType ('bool|null ' , filter_var ($ string , FILTER_VALIDATE_BOOLEAN , FILTER_NULL_ON_FAILURE ));
113114 assertType ('bool|null ' , filter_var ($ nonEmptyString , FILTER_VALIDATE_BOOLEAN , FILTER_NULL_ON_FAILURE ));
114115 assertType ('bool|null ' , filter_var ('17 ' , FILTER_VALIDATE_BOOLEAN , FILTER_NULL_ON_FAILURE )); // could be null
116+ assertType ('bool|null ' , filter_var ('17.0 ' , FILTER_VALIDATE_BOOLEAN , FILTER_NULL_ON_FAILURE )); // could be null
115117 assertType ('bool|null ' , filter_var ('17.1 ' , FILTER_VALIDATE_BOOLEAN , FILTER_NULL_ON_FAILURE )); // could be null
116118 assertType ('null ' , filter_var (null , FILTER_VALIDATE_BOOLEAN , FILTER_NULL_ON_FAILURE ));
117119
@@ -121,12 +123,14 @@ public function scalars(bool $bool, float $float, int $int, string $string, int
121123 assertType ('float ' , filter_var ($ float , FILTER_VALIDATE_FLOAT ));
122124 assertType ('17.0 ' , filter_var (17.0 , FILTER_VALIDATE_FLOAT ));
123125 assertType ('17.1 ' , filter_var (17.1 , FILTER_VALIDATE_FLOAT ));
126+ assertType ('1.0E-50 ' , filter_var (1e-50 , FILTER_VALIDATE_FLOAT ));
124127 assertType ('float ' , filter_var ($ int , FILTER_VALIDATE_FLOAT ));
125128 assertType ('float ' , filter_var ($ intRange , FILTER_VALIDATE_FLOAT ));
126129 assertType ('17.0 ' , filter_var (17 , FILTER_VALIDATE_FLOAT ));
127130 assertType ('float|false ' , filter_var ($ string , FILTER_VALIDATE_FLOAT ));
128131 assertType ('float|false ' , filter_var ($ nonEmptyString , FILTER_VALIDATE_FLOAT ));
129132 assertType ('float|false ' , filter_var ('17 ' , FILTER_VALIDATE_FLOAT )); // could be 17.0
133+ assertType ('float|false ' , filter_var ('17.0 ' , FILTER_VALIDATE_FLOAT )); // could be 17.0
130134 assertType ('float|false ' , filter_var ('17.1 ' , FILTER_VALIDATE_FLOAT )); // could be 17.1
131135 assertType ('false ' , filter_var (null , FILTER_VALIDATE_FLOAT ));
132136
@@ -136,12 +140,14 @@ public function scalars(bool $bool, float $float, int $int, string $string, int
136140 assertType ('int|false ' , filter_var ($ float , FILTER_VALIDATE_INT ));
137141 assertType ('17 ' , filter_var (17.0 , FILTER_VALIDATE_INT ));
138142 assertType ('false ' , filter_var (17.1 , FILTER_VALIDATE_INT ));
143+ assertType ('false ' , filter_var (1e-50 , FILTER_VALIDATE_INT ));
139144 assertType ('int ' , filter_var ($ int , FILTER_VALIDATE_INT ));
140145 assertType ('int<0, 9> ' , filter_var ($ intRange , FILTER_VALIDATE_INT ));
141146 assertType ('17 ' , filter_var (17 , FILTER_VALIDATE_INT ));
142147 assertType ('int|false ' , filter_var ($ string , FILTER_VALIDATE_INT ));
143148 assertType ('int|false ' , filter_var ($ nonEmptyString , FILTER_VALIDATE_INT ));
144149 assertType ('17 ' , filter_var ('17 ' , FILTER_VALIDATE_INT ));
150+ assertType ('false ' , filter_var ('17.0 ' , FILTER_VALIDATE_INT ));
145151 assertType ('false ' , filter_var ('17.1 ' , FILTER_VALIDATE_INT ));
146152 assertType ('false ' , filter_var (null , FILTER_VALIDATE_INT ));
147153
@@ -151,12 +157,14 @@ public function scalars(bool $bool, float $float, int $int, string $string, int
151157 assertType ('numeric-string ' , filter_var ($ float ));
152158 assertType ("'17' " , filter_var (17.0 ));
153159 assertType ("'17.1' " , filter_var (17.1 ));
160+ assertType ("'1.0E-50' " , filter_var (1e-50 ));
154161 assertType ('numeric-string ' , filter_var ($ int ));
155162 assertType ('numeric-string ' , filter_var ($ intRange ));
156163 assertType ("'17' " , filter_var (17 ));
157164 assertType ('string ' , filter_var ($ string ));
158165 assertType ('non-empty-string ' , filter_var ($ nonEmptyString ));
159166 assertType ("'17' " , filter_var ('17 ' ));
167+ assertType ("'17.0' " , filter_var ('17.0 ' ));
160168 assertType ("'17.1' " , filter_var ('17.1 ' ));
161169 assertType ("'' " , filter_var (null ));
162170 }
0 commit comments