/** * @test */ public function setModelTypeResetsIdentityPropertiesAndAggregateRootForValueObjects() { $classSchema = new \TYPO3\FLOW3\Reflection\ClassSchema('SomeClass'); $classSchema->setModelType(\TYPO3\FLOW3\Reflection\ClassSchema::MODELTYPE_ENTITY); $classSchema->addProperty('foo', 'string'); $classSchema->addProperty('bar', 'string'); $classSchema->markAsIdentityProperty('bar'); $classSchema->setRepositoryClassName('Some\\Repository'); $this->assertSame(array('bar' => 'string'), $classSchema->getIdentityProperties()); $classSchema->setModelType(\TYPO3\FLOW3\Reflection\ClassSchema::MODELTYPE_VALUEOBJECT); $this->assertSame(array(), $classSchema->getIdentityProperties()); $this->assertFalse($classSchema->isAggregateRoot()); }