Tester: testování presenterů – několik otázek :-)

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
potapnik
Člen | 127
+
0
-

Tak jsem chtěl rozjet testování Nette Testerem na presentery, vycházel jsem z velestručného testování presenterů, ale asi dělám něco blbě :-)

1. Tady je můj HomepageTester.phpt (bootstrap.php pro Tester je výchozí z distribuce nette/sandbox), který po spuštění testerem pod Windows v root adresari: vendor\bin\tester.bat tests skončí chybou Fatal error: Class Templatexxxxxxxxxxxx not found in root\vendor\latte\latte\src\Latte\Engine.php on line 95. Obsah chyby chápu :-) ale jak to fixnout, netuším :-)

<?php

namespace Test;

use Nette;
use Tester;
use Tester\Assert;
use Tester\DomQuery;

$container = require __DIR__ . '/bootstrap.php';

class HomepageTest extends Tester\TestCase
{
	private $container;
	private $presenterFactory;

	public function __construct($container) {
		$this->container = $container;
		$this->presenterFactory = $container->getByType('Nette\Application\IPresenterFactory');
	}

	public function testPresenter() {
		$presenter = $this->presenterFactory->createPresenter('Homepage');
		$presenter->autoCanonicalize = FALSE;
		$request = new Nette\Application\Request('Homepage', 'GET');
		$response = $presenter->run($request);
		Assert::true($response instanceof Nette\Application\Responses\TextResponse);
		$html = (string) $response->getSource();
		$dom = DomQuery::fromHtml($html);
		Assert::true($dom->has('h1'));
	}
}

$test = new HomepageTest($container);
$test->run();

?>

2. pokud začne fungovat to z bodu 1 :-) je nějaká možnost, jak prolítnout všechny presentery a jejich akce? Viděl jsem gist Filipa Procházky, který vypadal velmi dobře (https://gist.github.com/…hazka/705975) jen nevím, jak moc aktuální je a jestli přihnout jej nebo vyrobit kolo znovu :-) Předem díky za jakoukoli pomoc, tuším, že to bude obecnější nepochopení jak k testování přistoupit :-)

Filip Klimeš
Nette Blogger | 156
+
0
-
  1. Pokud používáš Nette 2.3, je možné že jsi narazil na stejnou chybu jaká se řeší tady

Editoval Filip Klimeš (20. 2. 2015 15:28)

potapnik
Člen | 127
+
+1
-

Díky, poslal jsem do toho odkazovanýho threadu doplňující info, to by mohlo být ono, stejná řádka v latte enginu, stejný error :-)