Root rich text

', pdfPath: null, youtubeUrl: null, set: $set, parentElement: null, ); $childElement = new Element( id: 2, title: 'Child', description: 'Child description', iconImageUrl: '/assets/child-icon.svg', richText: '

Child rich text

', pdfPath: '/assets/pdfs/child.pdf', youtubeUrl: 'https://www.youtube.com/watch?v=yHx-r4p6hHU&t=1s', set: $set, parentElement: $rootElement, ); $this->assertSame(2, $childElement->getId()); $this->assertSame('Child', $childElement->getTitle()); $this->assertSame( 'Child description', $childElement->getDescription(), ); $this->assertSame( '/assets/child-icon.svg', $childElement->getIconImageUrl(), ); $this->assertSame( '

Child rich text

', $childElement->getRichText(), ); $this->assertSame( '/assets/pdfs/child.pdf', $childElement->getPdfPath(), ); $this->assertSame( 'https://www.youtube.com/watch?v=yHx-r4p6hHU&t=1s', $childElement->getYoutubeUrl(), ); $this->assertSame($set, $childElement->getSet()); $this->assertSame($rootElement, $childElement->getParentElement()); $this->assertNull($rootElement->getIconImageUrl()); $this->assertNull($rootElement->getPdfPath()); $this->assertNull($rootElement->getYoutubeUrl()); $this->assertNull($rootElement->getParentElement()); } public function testUpdatesEditableFields(): void { $set = new DomainSet( id: 1, name: 'Daily learning', description: 'Daily learning description', iconImageUrl: '/assets/daily-learning-icon.svg', ); $element = new Element( id: 1, title: 'Original', description: 'Original description', iconImageUrl: '/assets/original.svg', richText: '

Original

', pdfPath: '/assets/pdfs/original.pdf', youtubeUrl: 'https://www.youtube.com/watch?v=yHx-r4p6hHU', set: $set, parentElement: null, ); $element->setTitle('Updated'); $element->setDescription('Updated description'); $element->setIconImageUrl(null); $element->setRichText('

Updated

'); $element->setPdfPath(null); $element->setYoutubeUrl(null); $this->assertSame('Updated', $element->getTitle()); $this->assertSame('Updated description', $element->getDescription()); $this->assertNull($element->getIconImageUrl()); $this->assertSame('

Updated

', $element->getRichText()); $this->assertNull($element->getPdfPath()); $this->assertNull($element->getYoutubeUrl()); } }