Podejrzewam PHPUnit pokazuje, że 1 linia kodu nie jest objęta testów jednostkowych z powodu wyjątków ów rzucony (ale złapałem)PHPUnit Code Coverage & Wyjątki
mam badanej jednostki, która powinna obejmować linia
/**
* @expectedException Doctrine\ORM\NoResultException
*/
public function testCannotLoginInvalidUser() {
$user = User::login($this->em, 'nonExistant', 'password');
$this->assertNull($user);
}
Dlaczego mój zasięg kodu nadal odzwierciedla to, co nie jest objęte gwarancją?
Zrobiłem test ... dodane echo b4 zawracania zerowa ... Okazało się, że ta linia jest naprawdę nie objętych ...
try {
$user = $query->getSingleResult();
} catch (Exception $e) {
echo 'caught exception'; <-- this does not get executed.
return null;
}
Czy PHPUnit omijając wszystkie wykonanie raz jest wyjątek?
UPDATE: Mam wrażenie, że używam @expectedException
złego tho ...
jest twój kalendarz „login” metoda wewnątrz przestrzeni nazw? –
@Anti Veeranna, Tak, jest w 'Application \ Models'. Czy znajdowanie się w przestrzeni nazw niczego nie zmienia? –