gossi\codegen\tests\model\ClassTest::testTraits PHP Méthode

testTraits() public méthode

public testTraits ( )
    public function testTraits()
    {
        $class = new PhpClass('my\\name\\space\\Class');
        $this->assertEquals([], $class->getTraits());
        $this->assertSame($class, $class->setTraits(['foo', 'bar']));
        $this->assertEquals(['foo', 'bar'], $class->getTraits());
        $this->assertSame($class, $class->addTrait('stdClass'));
        $this->assertEquals(['foo', 'bar', 'stdClass'], $class->getTraits());
        $trait = new PhpTrait('my\\name\\space\\Trait');
        $class->addTrait($trait);
        $this->assertTrue($class->hasTrait('my\\name\\space\\Trait'));
        $this->assertSame($class, $class->removeTrait($trait));
        $class->addTrait(new PhpTrait('other\\name\\space\\Trait'));
        $this->assertTrue($class->hasUseStatement('other\\name\\space\\Trait'));
        $this->assertSame($class, $class->removeTrait('other\\name\\space\\Trait'));
        $this->assertTrue($class->hasUseStatement('other\\name\\space\\Trait'));
    }