1

phpspec を使用して zend 2 モジュールをテストしていますが、参照渡しのテストに問題があります。これについては、これを行う必要がある場合は設計が悪いと述べている他のトピックを読みました。これが包括的な声明であることに同意しません。

2 つのクラスが互いに 2 つの参照を持つクラス間の双方向の関係を表す必要があります。

これをテストするためにphpspecを取得する方法はありますか、それとも検討する必要があるより良い設計がありますか.

4

1 に答える 1

0

クラス A がクラス B を返し、その逆もできるようにしたいのです。

これは実際には動作ではなく、状態の検証です。PhpSpec は動作に焦点を当てていますが、実行する必要があることはまだ可能です。

class ASpec extends ObjectBehavior
{
    function it_exposes_B(B $b)
    {
        $this->beConstructedWith($b); // or $this->setB($b);

        $this->getB()->shouldReturn($b);
    }
}

BSpec は次のようになります。

class BSpec extends ObjectBehavior
{
    function it_exposes_A(A $a)
    {
        $this->beConstructedWith($a); // or $this->setA($a);

        $this->getA()->shouldReturn($a);
    }
}
于 2014-05-22T16:18:38.317 に答える