/** * @test */ public function defineFinal() { $className = 'ExampleForNonFinalClass'; $finalClassName = 'ExampleForFinalClass'; $class = new Stagehand_PHP_Class($className); $finalClass = new Stagehand_PHP_Class($finalClassName); $finalClass->defineFinal(); $this->assertFalse($class->isFinal()); $this->assertTrue($finalClass->isFinal()); $class->load(); $finalClass->load(); $refClass = new ReflectionClass($className); $refFinalClass = new ReflectionClass($finalClassName); $this->assertFalse($refClass->isFinal()); $this->assertTrue($refFinalClass->isFinal()); }