Chris@17: testDiscovery = $test_discovery; Chris@17: $this->privateKey = $private_key; Chris@17: } Chris@17: Chris@17: /** Chris@17: * {@inheritdoc} Chris@17: */ Chris@17: public static function getLabel() { Chris@17: return t('Test discovery'); Chris@17: } Chris@17: Chris@17: /** Chris@17: * {@inheritdoc} Chris@17: */ Chris@17: public function getContext() { Chris@17: if (empty($this->hash)) { Chris@17: $tests = $this->testDiscovery->getTestClasses(); Chris@17: $this->hash = $this->hash(serialize($tests)); Chris@17: } Chris@17: return $this->hash; Chris@17: } Chris@17: Chris@17: /** Chris@17: * {@inheritdoc} Chris@17: */ Chris@17: public function getCacheableMetadata() { Chris@17: return new CacheableMetadata(); Chris@17: } Chris@17: Chris@17: /** Chris@17: * Hashes the given string. Chris@17: * Chris@17: * @param string $identifier Chris@17: * The string to be hashed. Chris@17: * Chris@17: * @return string Chris@17: * The hash. Chris@17: */ Chris@17: protected function hash($identifier) { Chris@17: return hash('sha256', $this->privateKey->get() . Settings::getHashSalt() . $identifier); Chris@17: } Chris@17: Chris@17: }