A class implements an interface or extends
an (abstract) class, and owns a
reference to a class that implements the
same interface or extends the same (abstract)
class.
public resolve ( Hal\Pattern\Resolver\ResolvedClass $resolved ) | ||
$resolved | Hal\Pattern\Resolver\ResolvedClass |
public function testProxyIsDetected() { $filename = __DIR__ . '/../../../../resources/patterns/proxy.php'; $extractor = new Extractor(new Tokenizer()); $result = $extractor->extract($filename); $classes = $result->getClasses(); $class = $classes[2]; $resolved = new ResolvedClass($class); $resolver = new ProxyResolver($classes); $resolver->resolve($resolved); $this->assertEquals(1, sizeof($resolved->getPatterns())); }