public function testGetCaptions() { $mm = new MultimediaObject(); $this->dm->persist($mm); $this->dm->flush(); $captions = $this->materialService->getCaptions($mm)->toArray(); $this->assertEquals(0, count($captions)); $material1 = new Material(); $material2 = new Material(); $material3 = new Material(); $material4 = new Material(); $material5 = new Material(); $material1->setMimeType('pdf'); $material2->setMimeType('vtt'); $material3->setMimeType('vtt'); $material4->setMimeType('pdf'); $material5->setMimeType('vtt'); $mm->addMaterial($material1); $mm->addMaterial($material2); $mm->addMaterial($material3); $mm->addMaterial($material4); $mm->addMaterial($material5); $this->dm->persist($mm); $this->dm->flush(); $captions = $this->materialService->getCaptions($mm)->toArray(); $this->assertEquals(3, count($captions)); $this->assertFalse(in_array($material1, $captions)); $this->assertTrue(in_array($material2, $captions)); $this->assertTrue(in_array($material3, $captions)); $this->assertFalse(in_array($material4, $captions)); $this->assertTrue(in_array($material5, $captions)); }
/** * Save form data of Material * * @return Material $material */ private function saveFormData(Material $material, $formData) { if (array_key_exists('i18n_name', $formData)) { $material->setI18nName($formData['i18n_name']); } if (array_key_exists('hide', $formData)) { $material->setHide($formData['hide']); } if (array_key_exists('language', $formData)) { $material->setLanguage($formData['language']); } if (array_key_exists('mime_type', $formData)) { $material->setMimeType($formData['mime_type']); } return $material; }