Jak zprovoznit tester na Ubuntu?

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

Zdravím všechny,
dělám na jednom projektu v Nette, který je dosti rozpracovaný, leč teď se nemůžu zeptat hlavního programátora, neb je pryč. Věřím tedy, že mi tady někdo poradíte.

Potřebuji zprovoznit Unit testy. Projekt vyvíjím na localhostu (klasický LAMP) na počítači s Ubuntu 12.04, Nette 2.2.2., PHP 5.4.31–1+deb.sury.org~precise+1

Kolega už před časem vytvořil nějaké základní Unit testy v adresáři test/EddeTest – např. SystemContainer.phpt

<?php
	namespace EddeTest;

	use Edde\Testing\Test;
	use Tester;
	use Tester\Assert;

	$context = require_once(__DIR__.'/../bootstrap.php');

	/**
	 * @auto-inject
	 */
	class SystemContainerTest extends Test {
		public function testAddService() {
			$this->context->addService(__CLASS__, $this);
			Assert::exception(function () {
				$this->context->addService(__CLASS__, $this);
			}, 'Nette\\InvalidStateException', "Service 'EddeTest\\SystemContainerTest' already exists.");
		}

		public function testGetService() {
			Assert::type(__CLASS__, $this->context->getService(__CLASS__));
		}

		public function testHeuristic() {
			Assert::type('Edde\\ObjectProvider\\ObjectService', $this->context->getHeuristic('\\ObjectService'));
			Assert::exception(function () {
				$this->context->getHeuristic('ObjectService');
			}, 'Edde\\DI\\HeuristicException', "Multiple service types by query 'ObjectService'.");
			Assert::exception(function () {
				$this->context->getHeuristic('BlahBlah');
			}, 'Edde\\DI\\HeuristicException', "Can't find any service by query 'BlahBlah'.");
		}
	}

	Test::execute($context, 'EddeTest\\SystemContainerTest');
?>

Nette Tester je v adresáři Tester, je tam již tester a tester.php

Díval jsem se na https://tester.nette.org/cs/ ale moc nevím, jak testy spouštět. Když zadám do terminálu příkaz

petr@devel-ubuntu:/var/www/snowhill/lib/Tester$ tester -c /etc/php5/apache2/php.ini /var/www/snowhill/test/EddeTest/SystemContainer.phpt
: není adresářemp

tak to vypisuje velmi zvláštní hlášku „: není adresářemp“, nikde jsem o ničem takovém nic nevygooglil. Nevím moc, jestli je problém u mě na localhostu, nebo v Nette projektu.

Napadá vás někoho něco?

Děkuji velice za pomoc.

japlavaren
Člen | 404
+
0
-

ta tvoja chybova hlaska bude isto z kodov kolegu. co tak prehladat tie php-ka a naist tu hlasku, a podla toho zistit, kde je chyba ;)

Filip Procházka
Moderator | 4668
+
+1
-

Nejspíš ti chybí na počítači složka tests/tmp, podívej se do bootstrapu, jak se ta složka jmenuje, kterou to potřebuje a vytvoř ji.

Mimochodem, ten test je otřesný :)

ovo
Člen | 2
+
+1
-

Děkuji za tipy, přes onen problém jsem se již dostal, problém byl v tom, že ve spouštěcím souboru tester

#!/usr/bin/env php
<?php

require __DIR__ . '/tester.php'; ?>

byly nastavené konce řádků jako Microsoft Windows. Když jsem přenastavil na Unix, už to jelo, zajímavé…

Mimochodem, v čem je ten test otřesný? Rád se vzdělám víc…

Milo
Nette Core | 1283
+
0
-

@ovo To s konci řádků je zvláštní. Instaloval jsi to na tom Ubuntu stroji Composerem, nebo's to překopíroval z Windowsů?