Skip to content
This repository has been archived by the owner on Jan 29, 2020. It is now read-only.

Commit

Permalink
Adding unit tests to ensure the compiler definition processes supertypes
Browse files Browse the repository at this point in the history
  • Loading branch information
SocalNick committed Apr 3, 2012
1 parent 420c05d commit 70bda38
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 0 deletions.
13 changes: 13 additions & 0 deletions test/Definition/CompilerDefinitionTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -42,4 +42,17 @@ public function testCompilerCompilesAgainstConstructorInjectionAssets()
$definition->getMethodParameters('ZendTest\Di\TestAsset\CompilerClasses\C', 'setB')
);
}

public function testCompilerSupertypes()
{
$definition = new CompilerDefinition;
$definition->addDirectory(__DIR__ . '/../TestAsset/CompilerClasses');
$definition->compile();
$this->assertCount(0, $definition->getClassSupertypes('ZendTest\Di\TestAsset\CompilerClasses\C'));
$this->assertCount(1, $definition->getClassSupertypes('ZendTest\Di\TestAsset\CompilerClasses\D'));
$this->assertCount(2, $definition->getClassSupertypes('ZendTest\Di\TestAsset\CompilerClasses\E'));
$this->assertContains('ZendTest\Di\TestAsset\CompilerClasses\C', $definition->getClassSupertypes('ZendTest\Di\TestAsset\CompilerClasses\D'));
$this->assertContains('ZendTest\Di\TestAsset\CompilerClasses\C', $definition->getClassSupertypes('ZendTest\Di\TestAsset\CompilerClasses\E'));
$this->assertContains('ZendTest\Di\TestAsset\CompilerClasses\D', $definition->getClassSupertypes('ZendTest\Di\TestAsset\CompilerClasses\E'));
}
}
8 changes: 8 additions & 0 deletions test/TestAsset/CompilerClasses/E.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<?php

namespace ZendTest\Di\TestAsset\CompilerClasses;

class E extends D
{

}

0 comments on commit 70bda38

Please # to comment.