public function isA($class, $test_class)
    {
        $test_class = $this->normalize($test_class);
        if ($this->classExists($test_class)) {
            return in_array($test_class, $this->getAncestors($class));
        } elseif ($this->interfaceExists($test_class)) {
            return in_array($test_class, $this->getImplements($class));
        } else {
            throw new ClassNotExistException($test_class);
        }
    }