Как условно проверить объект с помощью phpspec?

Я только начал изучать 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?

Спасибо

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …