Как передать аргументы для построения из phpspec?

если у меня есть

function let(Foo bar)
{
$this->beConstructedWith($bar);
}

это прекрасно работает, но как я могу передать аргументы в конструкцию? Это работает, только если у меня есть конструкция без передаваемых ей аргументов, и я использую сеттеры после построения. Разве нет способа построить нормально?

Я пытался найти это, но во всех примерах используются конструкции без аргументов. Благодарю.

4

Решение

Вы уже передаете аргумент своему конструктору, используя $ this-> beConstrutedWith ($ bar)

Первый пример, который вы запустите, используя метод из SUT, вызовет конструктор класса с помощью $ bar:

class Baz
{
public function __construct(Foo $bar)
{
}
}

Вот самая актуальная документация на let ()
http://phpspec.readthedocs.org/en/latest/cookbook/construction.html#using-the-constructor:

namespace spec;

use PhpSpec\ObjectBehavior;
use Markdown\Writer;

class MarkdownSpec extends ObjectBehavior
{
function it_outputs_converted_text(Writer $writer)
{
$this->beConstructedWith($writer);
$writer->writeText("<p>Hi, there</p>")->shouldBeCalled();

$this->outputHtml("Hi, there");
}
}
2

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

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

По вопросам рекламы [email protected]