Неполные тесты при использовании Mockery

Допустим, я проверяю, что метод вызывает другой метод в php.

<?php
use \Mockery as m;

public function testMethodCallsOtherMethod {
    $m = m::Mock(new StdClass);
    $m->assertCalledWith('methodName')->once();
    doSomethingSoMCallsMethodName($m);
}

function tearDown() {
    m::close();
}

Когда я запускаю этот тест с PHPUnit, он сообщает, что тест не завершен, потому что в тесте нет утверждения PHPUnit. Однако это допустимый тест, и если метод не вызывается, произойдет ошибка. Любые хорошие решения для того, чтобы заставить PHPUnit понять, что это действительный тест?


person Kevin Burke    schedule 02.02.2013    source источник
comment
Возможно, у PHPUnit есть веские причины говорить об этом. На самом деле вы ничего конкретного здесь не тестируете... Вы просто тестируете реализацию, в чем интерес? Если вы реорганизуете свой код, например, для удобочитаемости, ваш тест не сработает, даже если все работает хорошо.   -  person Alexandre Butynski    schedule 25.06.2013


Ответы (1)


Простым обходным решением было бы фиктивное утверждение:

$this->assertTrue(true);
person Fabian Schmengler    schedule 07.02.2013