public function testGetKinds() { new _Aop(); $ref = new \ReflectionClass('\\Aop\\KindConstantInterface'); $refkinds = $ref->getConstants(); $kinds = []; foreach ($refkinds as $kName => $value) { $kinds['constants'][constant('\\Aop\\KindConstantInterface::' . $kName)] = $value; $kinds['names'][] = strtolower(substr($kName, mb_strlen('KIND_'))); } $this->array(_Aop::getKinds())->isNotEmpty()->hasKey(_Aop::KIND_THROW)->contains('throw')->hasSize(count($kinds['constants']))->hasKeys(array_reverse($kinds['constants']))->strictlyContainsValues($kinds['names']); }