EVOLUTION-MANAGER
Edit File: JsonMatchesErrorMessageProvider.php
<?php /* * This file is part of PHPUnit. * * (c) Sebastian Bergmann <sebastian@phpunit.de> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace PHPUnit\Framework\Constraint; /** * Provides human readable messages for each JSON error. */ class JsonMatchesErrorMessageProvider { /** * Translates JSON error to a human readable string. */ public static function determineJsonError(string $error, string $prefix = ''): ?string { switch ($error) { case \JSON_ERROR_NONE: return null; case \JSON_ERROR_DEPTH: return $prefix . 'Maximum stack depth exceeded'; case \JSON_ERROR_STATE_MISMATCH: return $prefix . 'Underflow or the modes mismatch'; case \JSON_ERROR_CTRL_CHAR: return $prefix . 'Unexpected control character found'; case \JSON_ERROR_SYNTAX: return $prefix . 'Syntax error, malformed JSON'; case \JSON_ERROR_UTF8: return $prefix . 'Malformed UTF-8 characters, possibly incorrectly encoded'; default: return $prefix . 'Unknown error'; } } /** * Translates a given type to a human readable message prefix. */ public static function translateTypeToPrefix(string $type): string { switch (\strtolower($type)) { case 'expected': $prefix = 'Expected value JSON decode error - '; break; case 'actual': $prefix = 'Actual value JSON decode error - '; break; default: $prefix = ''; break; } return $prefix; } }