holder = new class() { use AttributeHolderTrait; }; $this->holder->attributes[] = new Attribute(); $this->holder->attributes[0]->type = new AttributeType('testType'); $this->holder->attributes[0]->value = new AttributeValue(); $this->holder->attributes[0]->value->setValue('testValue', AttributeValueType::_STRING); } public function testHasAttributeValue() : void { self::assertTrue($this->holder->hasAttributeValue('testType', 'testValue')); self::assertFalse($this->holder->hasAttributeValue('invalidTestType', 'testValue')); } public function testHasAttributeType() : void { self::assertTrue($this->holder->hasAttributeType('testType')); self::assertFalse($this->holder->hasAttributeType('invalidTestType')); } public function testGetAttribute() : void { self::assertInstanceOf(Attribute::class, $this->holder->getAttribute('testType')); self::assertInstanceOf(NullAttribute::class, $this->holder->getAttribute('invalidTestType')); } }