public function __construct(RequestSchemaInterface $requestSchema)
{
$this->schema = $requestSchema->getSchema();
}
当我为Builder运行phpspec时,$ this-> schema始终为null。 在正常调用中它设置模式。 我实施了
function let(RequestSchema $requestSchema)
{
$this->beConstructedWith($requestSchema);
}
如果使用$ this-> schema?
,如何测试该类的方法答案 0 :(得分:1)
您的let()
方法使用存根来构造被测对象。虽然这是推荐的,但并不是必需的。您可以创建类型为RequestSchema
的真实对象,并使用它来构建测试类:
function let()
{
$requestSchema = new RequestSchema();
$this->beConstructedWith($requestSchema);
}
<强>更新强>
关于问题的标题“如何让phpspec评估我的构造函数”:构造函数已执行但是,因为您使用了$requestSchema
的存根,所以调用{{1}在构造函数内部返回$requestSchema->getSchema()
。
您可以prepare the stub在调用方法NULL
时返回其他内容。
试试这个:
getSchema()