/** * @test * @group tagrepo */ public function should_create_tag_when_name_not_found() { $n_tag = new TagName('foo'); $tag = $this->tagRepo->tagOfNameOrCreate($n_tag); $this->em->clear(); $tags = $this->tagRepo->all(); $this->assertCount(3, $tags); $this->assertInstanceOf('Bakgat\\Notos\\Domain\\Model\\Descriptive\\Tag', $tag); $this->assertTrue($n_tag->equals($tag->name())); }
/** * @param $data * @param $book */ private function syncTags($data, Book $book) { $book->clearTags(); if (isset($data['tags'])) { foreach ($data['tags'] as $tag) { $t = $this->tagRepository->tagOfNameOrCreate(new TagName($tag['name'])); $book->addTag($t); } return $data; } return $data; }