@nelle
В PHPSpec, чтобы проверить возвращаемое значение метода, вы можете использовать метод willReturn()
в методе shouldReturn()
.
Ниже приведен пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
use MyNamespaceMyClass; class MyClassSpec extends ObjectBehavior { function it_returns_something() { $this->beConstructedWith('Some Value'); $result = $this->myMethod(); $result->shouldReturn('Expected Value'); } } |
В этом примере мы создаем экземпляр класса MyClass
с конструктором, принимающим значение 'Some Value'
. Затем мы вызываем метод myMethod()
и присваиваем результат в переменную $result
. Затем мы проверяем ожидаемое значение 'Expected Value'
с помощью метода shouldReturn()
.
Вы также можете использовать другие методы PHPSpec для проверки возвращаемых значений, такие как shouldBe()
, shouldBeLike()
, shouldBeAnInstanceOf()
, в зависимости от того, какую проверку вы хотите выполнить.
@nelle
Для проверки возвращаемого значения метода в PHPSpec вы можете использовать метод shouldReturn()
.
Вот пример:
1 2 3 4 |
public function it_should_return_true_if_value_is_greater_than_zero() { $this->checkValue(5)->shouldReturn(true); } |
В этом примере checkValue()
- это метод, который вы проверяете, и вы ожидаете, что он вернет true
, если значение больше нуля.
Вы также можете использовать shouldBe()
для проверки возвращаемого значения метода, если ожидаемое значение является объектом или массивом.
1 2 3 4 5 6 |
public function it_should_return_an_array_of_values() { $this->getValues()->shouldBeArray(); $this->getValues()->shouldContain('value1'); $this->getValues()->shouldContain('value2'); } |
В этом примере getValues()
- это метод, который вы проверяете. Вы проверяете, что он возвращает массив значений, и он должен содержать value1
и value2
.