public function tagsProvider() { $nodes = []; $max = 15; $t1t2 = 0; $t1 = 0; $t2 = 0; for ($i = 0; $i < $max; ++$i) { if ($i % 3 === 2) { $tags = [$this->tag1->getName()]; ++$t1; } elseif ($i % 3 === 1) { $tags = [$this->tag1->getName(), $this->tag2->getName()]; ++$t1t2; } else { $tags = [$this->tag2->getName()]; ++$t2; } $data = ['title' => 'News ' . rand(1, 100), 'url' => '/news/news-' . $i, 'ext' => ['excerpt' => ['tags' => $tags]]]; $template = 'simple'; $node = $this->mapper->save($data, $template, 'sulu_io', 'en', 1, true, null, null, Structure::STATE_PUBLISHED); $nodes[$node->getUuid()] = $node; } return [$nodes, $t1, $t2, $t1t2]; }
public function testGetItemsTags() { $client = $this->createAuthenticatedClient(); $client->request('GET', '/api/items?webspace=sulu_io&locale=en&dataSource=' . $this->team->getUuid() . '&provider=content&excluded=' . $this->team->getUuid() . '&limitResult=2&tags[]=' . $this->tag1->getName()); $this->assertEquals(200, $client->getResponse()->getStatusCode()); $result = json_decode($client->getResponse()->getContent(), true); $this->assertEquals(['id' => $this->team->getUuid(), 'title' => 'Team', 'path' => '/team'], $result['datasource']); $this->assertEquals([['id' => $this->johannes->getUuid(), 'title' => 'Johannes']], $result['_embedded']['items']); }