* @since Class available since the beginning */ class TestResultCache { protected static $cache; /** * @param array $cacheKeys Two keys for caching (usually: basedir and the getCacheKey() for the Tester) * @param TestResult $testResult The test result to cache * * @return void */ public static function cache($cacheKeys, $testResult) { if (!isset(self::$cache)) { self::$cache = []; } list($key1, $key2) = $cacheKeys; if (!isset(self::$cache[$key1])) { self::$cache[$key1] = []; } self::$cache[$key1][$key2] = $testResult; } /** * Check if in cache. * * @param array $cacheKeys Keys for caching (usually: basedir and the getCacheKey() for the Tester) * * @return bool */ public static function isCached($cacheKeys) { if (!isset(self::$cache)) { return false; } list($key1, $key2) = $cacheKeys; if (!isset(self::$cache[$key1])) { return false; } if (!isset(self::$cache[$key1][$key2])) { return false; } return true; } /** * Get from cache. * * @param array $cacheKeys Keys for caching (usually: basedir and the getCacheKey() for the Tester) * * @return TestResult The test result */ public static function getCached($cacheKeys) { if (!self::isCached($cacheKeys)) { throw new \Exception('Not in cache'); } list($key1, $key2) = $cacheKeys; return self::$cache[$key1][$key2]; } public static function clear() { self::$cache = null; } } __halt_compiler();----SIGNATURE:----M+dYVs6CqRZ5SITa5Rt55SXk2QdxQ1JQ+01QvkZDihOJHlNO+Jq6H/UZkm5LBxG8wKGZqx7ofxpaLo2lLwqDhb25YAEvanqcZxdSQsNTU+HcFBXmY+HVznS0e6BZ3tpjCr+quYq9zOIUUKGe02kd3uUGIi8+VH2M4LkWyc5V4wCB8QviP6t8oWT6rowFLbCNW2cHinJJsqHXrzyZMytwAYdVQuNcN9jRR2fZKZ+mOObaK6HoqfsNrgGxkcHcY2a2LU+SVgcq4pKYKK7gF3LH4+W5H1v2t8/ySusuGu9Sy7z+bfV/vCsxqPDtwEMF56Kl+Nm5LK/jcJCVbVEsGLpVL3hLM0lXEHBFf3dQmuDElkNytQGcMiNtHqn4GSB7xdzKebel2e4C0Bu5hW1EC6smv0+e7G2sV8ErRg8lQnnV2oiPw5SAEi1q6O4RwsIzRAcPTnNTXWtEIq2GI1KPO7R9j39ilgimpm4/F8ybs2dasZ6ldwzuSNaPUb86r9oIYFPIjmVrYBJJxo0Zpu/iPlXB/S6clHwo60UBv0XBP/yOmjFVn6JfEvMRbR2rp5MfJAhRkfn1+rlwmoyDVCnPxV5jPUTaaAEBNx+vzisq2yMyJ6G1itA659A20ZyCBo/73/xrePIM72cc7gXNXuKqXo/kFp8hzrdiNAm5s2tJiJTivdU=----ATTACHMENT:----MTc4OTkzNTMwMDQ1NTM0MyAyMTYwNzEwMzY3ODE1MTcwIDYzOTY0MjUzODc1MzQxMTk=