123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136 |
- <?php
- namespace App\Test\Controller;
- use App\Entity\Counter;
- use Doctrine\ORM\EntityManagerInterface;
- use Doctrine\ORM\EntityRepository;
- use Symfony\Bundle\FrameworkBundle\KernelBrowser;
- use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
- class CounterControllerTest extends WebTestCase
- {
- private KernelBrowser $client;
- private EntityManagerInterface $manager;
- private EntityRepository $repository;
- private string $path = '/admin/';
- protected function setUp(): void
- {
- $this->client = static::createClient();
- $this->manager = static::getContainer()->get('doctrine')->getManager();
- $this->repository = $this->manager->getRepository(Counter::class);
- foreach ($this->repository->findAll() as $object) {
- $this->manager->remove($object);
- }
- $this->manager->flush();
- }
- public function testIndex(): void
- {
- $crawler = $this->client->request('GET', $this->path);
- self::assertResponseStatusCodeSame(200);
- self::assertPageTitleContains('Counter index');
- // Use the $crawler to perform additional assertions e.g.
- // self::assertSame('Some text on the page', $crawler->filter('.p')->first());
- }
- public function testNew(): void
- {
- $this->markTestIncomplete();
- $this->client->request('GET', sprintf('%snew', $this->path));
- self::assertResponseStatusCodeSame(200);
- $this->client->submitForm('Save', [
- 'counter[startTime]' => 'Testing',
- 'counter[endTime]' => 'Testing',
- 'counter[name]' => 'Testing',
- 'counter[state]' => 'Testing',
- 'counter[timeToLive]' => 'Testing',
- ]);
- self::assertResponseRedirects($this->path);
- self::assertSame(1, $this->repository->count([]));
- }
- public function testShow(): void
- {
- $this->markTestIncomplete();
- $fixture = new Counter();
- $fixture->setStartTime('My Title');
- $fixture->setEndTime('My Title');
- $fixture->setName('My Title');
- $fixture->setState('My Title');
- $fixture->setTimeToLive('My Title');
- $this->manager->persist($fixture);
- $this->manager->flush();
- $this->client->request('GET', sprintf('%s%s', $this->path, $fixture->getId()));
- self::assertResponseStatusCodeSame(200);
- self::assertPageTitleContains('Counter');
- // Use assertions to check that the properties are properly displayed.
- }
- public function testEdit(): void
- {
- $this->markTestIncomplete();
- $fixture = new Counter();
- $fixture->setStartTime('Value');
- $fixture->setEndTime('Value');
- $fixture->setName('Value');
- $fixture->setState('Value');
- $fixture->setTimeToLive('Value');
- $this->manager->persist($fixture);
- $this->manager->flush();
- $this->client->request('GET', sprintf('%s%s/edit', $this->path, $fixture->getId()));
- $this->client->submitForm('Update', [
- 'counter[startTime]' => 'Something New',
- 'counter[endTime]' => 'Something New',
- 'counter[name]' => 'Something New',
- 'counter[state]' => 'Something New',
- 'counter[timeToLive]' => 'Something New',
- ]);
- self::assertResponseRedirects('/admin/');
- $fixture = $this->repository->findAll();
- self::assertSame('Something New', $fixture[0]->getStartTime());
- self::assertSame('Something New', $fixture[0]->getEndTime());
- self::assertSame('Something New', $fixture[0]->getName());
- self::assertSame('Something New', $fixture[0]->getState());
- self::assertSame('Something New', $fixture[0]->getTimeToLive());
- }
- public function testRemove(): void
- {
- $this->markTestIncomplete();
- $fixture = new Counter();
- $fixture->setStartTime('Value');
- $fixture->setEndTime('Value');
- $fixture->setName('Value');
- $fixture->setState('Value');
- $fixture->setTimeToLive('Value');
- $this->manager->persist($fixture);
- $this->manager->flush();
- $this->client->request('GET', sprintf('%s%s', $this->path, $fixture->getId()));
- $this->client->submitForm('Delete');
- self::assertResponseRedirects('/admin/');
- self::assertSame(0, $this->repository->count([]));
- }
- }
|