Я только начал изучать phpspec, и у меня есть вопрос.
Хорошо, вы можете проверить, равно ли значение некоторому другому значению, и если вы хотите увидеть, находится ли значение между некоторыми значениями, вы можете создать сопоставление следующим образом:
function getMatchers()
{
return [
'beBetween' => function ($subject, $min, $max) {
if ($subject >= $min && $subject <= $max) {
return true;
}
return false;
}
];
}
и сделать тест как
$this->some_method()->getValue()->shouldBeBetween(1,6);
а как можно сделать условно?
Допустим, что значение, котороеsome_method()
возвращается 1
как мы можем сказать phpspec посмотреть на другое свойство проверяемого объекта?
Я делаю простой класс игры в кости. И я хочу, чтобы каждый бросок кубика возвращался и массив со значением броска и статусом. Если бросок кубика минимален, то статус должен быть «crit_miss», а если бросок максимален, статус должен быть «crit_hit».
Итак, я хочу проверить это …
бросить кубик
значение броска кубика должно быть от 1 до 6
если значение броска кубика равно 1, статус броска кубика должен иметь значение «absolute_miss»
если значение броска кубика равно 6, статус броска кубика должен быть равен «crit_hit»
Можете ли вы сделать такой тест в phpspec?
Спасибо
Задача ещё не решена.
Других решений пока нет …