Spuštění demo Nette aplikace nad testy

Sitole
Člen | 39
+
0
-

Dobrý den,
už se tu s tím pár dní patlám. Jak jednoduše spustím Nette aplikaci nad Nette Testerem. Potřebuji otestovat několik našich tříd, které mají jako parametry uživatele, presenter a podobně. Zkoušel jsem klasicky zkopírovat celý spouštěcí soubor a mírně ho upravit a vkládal jsem ho přímo do souborů *.phpt, které jsem testoval, ale vždy mi to vyhodilo neznámou chybu. Co jsem zjistil, problém byl s generováním kontejneru. Máte na tohle už osvědčený postup? Všechny tutoriály ukazují jen jednoduché testování sčítání, ale převzetí Nette User nebo jakéhokoliv objektu, které si tvoří Nette jsem nikde nenašel.

Jan Endel
Člen | 1016
+
+2
-

Sám mám něco takovéhoto:

<?php

declare(strict_types=1);

use Tester\TestCase;

abstract class IntegrationTestCase extends TestCase
{

	/**
	 * @var Container
	 */
	private $container;


	protected function getContainer(): Container
	{
		if ($this->container === null) {
			$this->container = $this->createContainer();
		}

		return $this->container;
	}


	private function createContainer(): Container
	{
		// share compiled container between tests
		$config->setTempDirectory(__DIR__ . '/../temp');

		$config->addConfig(__DIR__ . '/../config/config.test.neon');

		$filePath = '/app/config/config.local.neon';

		if (file_exists($filePath)) {
			$config->addConfig($filePath);
		}

		$container = $config->createContainer();

		return $this->container = $container;
	}

}

pak jenom extenduju tenhle test case a uvnitř si zavolám $this->getContainer();

Felix
Nette Core | 1193
+
0
-

Pouzivam neco podobneho jako @Jan Endel.