Improve coverage of MD_STD_IN

This commit is contained in:
2023-11-07 22:50:18 +01:00
parent 1f2f63c9af
commit 2c58e0554b
4 changed files with 373 additions and 8 deletions

View File

@ -99,7 +99,8 @@ final class MD_STD_IN {
$output = \filter_var($input, FILTER_UNSAFE_RAW, FILTER_FLAG_STRIP_LOW | FILTER_FLAG_STRIP_HIGH);
if ($output === false
|| (preg_match('/^[a-zA-Z0-9]{3}$/', $output) === false && preg_match('/^[a-zA-Z0-9]{6}$/', $output) === false)
|| !in_array(strlen($output), [3, 6], true)
|| (preg_match('/^[a-fA-F0-9]{3}$/', $output) === false && preg_match('/^[a-fA-F0-9]{6}$/', $output) === false)
) {
throw new MDInvalidColorCode("Invalid color code provided: " . $output);
}
@ -243,8 +244,7 @@ final class MD_STD_IN {
return "";
}
$output = \filter_var($input, FILTER_SANITIZE_EMAIL);
if (($output = \filter_var($output, FILTER_VALIDATE_EMAIL)) === false) {
if (($output = \filter_var($input, FILTER_VALIDATE_EMAIL)) === false) {
throw new MDInvalidEmail("Invalid input email address");
}
@ -321,7 +321,7 @@ final class MD_STD_IN {
*
* @return float
*/
public static function validate_longitude(string|int $input):float {
public static function validate_longitude(string|int|float $input):float {
if (is_string($input)) $output = self::sanitize_float($input);
else $output = $input;
@ -341,7 +341,7 @@ final class MD_STD_IN {
*
* @return float
*/
public static function validate_latitude(string|int $input):float {
public static function validate_latitude(string|int|float $input):float {
if (is_string($input)) $output = self::sanitize_float($input);
else $output = $input;