Меня спросили Почему не существует метод называется sameThat
внутри констант PHPUNIT, следующий фрагмент кода, который я хочу проверить.
$user = $this->em->getRepository('AppBundle:User')->findBy(1,1);
Наконец это мой тест:
$this->userRepository->expects($this->at(0))
->method('findBy')
->with(
$this->callback(function($arg) use ($test) {
$part = 'In the first call to findBy method, the first parameter: ';
$test->assertThat($arg, $this->logicalAnd(
$this->equalTo(1),
$this->isType('integer')
), $part .'it was found issues'
);//assertThat
return true;
}),
)
->willReturn($this->user);
В приведенном выше примере, как вы можете видеть, есть две константы PHPUNIT equalTo
а также isType
оба я его использовал, потому что equalTo
по сравнению с ==
нет ===
итак, я меняю findBy("1",1)
вместо этого тест не проходит, поэтому я добавил isType
постоянная, чтобы быть уверенным, поэтому, тест не пройден сейчас.
Существует утверждение под названием assertSame()
почему нет константы PHPUNIT? например sameThat
или же sameTo
,
Предполагая, что вы имеете в виду «ограничение», когда вы пишете «константа», то вы ищете identicalTo()
, Это ограничение используется assertSame()
,
Других решений пока нет …