Expanded class hierarchy of StaticMethodLoaderTest
class StaticMethodLoaderTest extends \PHPUnit_Framework_TestCase {
public function testLoadClassMetadataReturnsTrueIfSuccessful() {
$loader = new StaticMethodLoader('loadMetadata');
$metadata = new ClassMetadata(__NAMESPACE__ . '\\StaticLoaderEntity');
$this
->assertTrue($loader
->loadClassMetadata($metadata));
}
public function testLoadClassMetadataReturnsFalseIfNotSuccessful() {
$loader = new StaticMethodLoader('loadMetadata');
$metadata = new ClassMetadata('\\stdClass');
$this
->assertFalse($loader
->loadClassMetadata($metadata));
}
public function testLoadClassMetadata() {
$loader = new StaticMethodLoader('loadMetadata');
$metadata = new ClassMetadata(__NAMESPACE__ . '\\StaticLoaderEntity');
$loader
->loadClassMetadata($metadata);
$this
->assertEquals(StaticLoaderEntity::$invokedWith, $metadata);
}
public function testLoadClassMetadataDoesNotRepeatLoadWithParentClasses() {
$loader = new StaticMethodLoader('loadMetadata');
$metadata = new ClassMetadata(__NAMESPACE__ . '\\StaticLoaderDocument');
$loader
->loadClassMetadata($metadata);
$this
->assertSame(0, count($metadata
->getConstraints()));
$loader = new StaticMethodLoader('loadMetadata');
$metadata = new ClassMetadata(__NAMESPACE__ . '\\BaseStaticLoaderDocument');
$loader
->loadClassMetadata($metadata);
$this
->assertSame(1, count($metadata
->getConstraints()));
}
public function testLoadClassMetadataIgnoresInterfaces() {
$loader = new StaticMethodLoader('loadMetadata');
$metadata = new ClassMetadata(__NAMESPACE__ . '\\StaticLoaderInterface');
$loader
->loadClassMetadata($metadata);
$this
->assertSame(0, count($metadata
->getConstraints()));
}
}