В контролере не всегда подходит.
В домене тоже могут быть сервисы. Домен который выполняет только простейшую логику — тоже не всегдя подходит. И даже если домен не связан с внешним миром, внутренние сервисы хочется мокать.
Надо не только читать, но и писать осмысленные фразы. А чтобы их писать нужна и модель на английском языке. Еще есть всякие BDD, но тут уже возможны варианты. Но если Вы без проблем читаете английскую литературу, это уже достаточный уровень.
Может не так категорично, но что-то в этом есть. Все-таки интерфейсы большинства библиотек англоязычные, и чтобы создавать читаемые программы, английский нужно знать.
Почему оно должно зависеть от числа сортируемых элементов? О-нотация может включать в себя несколько параметров. n и max-value — не зависящие друг от друга
Тут не особо зависит zf2 или что-то другое. Общий принцип такой:
public function test_something_should_do_something()
{
$dependency = Mockery::mock('SomeBusinessServiceClass')
->shouldReceive('someMethod')
->with('someParams')
->once()
->getMock();
$object_under_test = new ObjectUnderTest($dependency);
$object_under_test->someSuperMethod();
}
Т.е. тестируется взаимодействие с зависимостью (при вызове someSuperMethod должен вызваться someMethod с параметрами). Так же можно делать фейковые возвраты при помощи andReturn. В примере библиотека моков — Mockery.
У вас будет вместо вызова локатора — объект формы как параметр конструктора, либо сеттера (зависит от конфигурации). И соответственно эти зависимости контролера/сервиса должны быть описаны (Zend\Di\Definition) в контексте DI (в zf из коробки есть авто связь (wire) по подсказкам типов, как вариант (RuntimeDefinition) ).
В домене тоже могут быть сервисы. Домен который выполняет только простейшую логику — тоже не всегдя подходит. И даже если домен не связан с внешним миром, внутренние сервисы хочется мокать.
Это уже давно работает (5.4+).
я думаю Вам не стоит писать статьи
Очевидно, что это не так. Доказательство — наличие цикла while с количеством итераций равным количеству элементов.
зато точно не будет в таком
Т.е. тестируется взаимодействие с зависимостью (при вызове someSuperMethod должен вызваться someMethod с параметрами). Так же можно делать фейковые возвраты при помощи andReturn. В примере библиотека моков — Mockery.