test1
で呼び出されたときget
メソッドを嘲笑して、123
を返すクラスがあります。これは正常に動作します。 メソッドは、通常返されるものを返します。つまり、特定のパラメータを持つ呼び出しのみが模擬応答を返します。私はエラーを取得するつまり$config->get('test2')
コード内の異なるパラメータを取得呼び出すもしそうなら特定のパラメータの応答のみを擬似します
$configMock = m::mock(Config::class);
$configMock->shouldReceive('get')
->with('test1')
->andReturn(123);
嘲笑\例外の\ NoMatchingExpectationException:一致するハンドラがMockery_1_Illuminate_Contracts_Config_Repository見つかりません::取得(「TEST2」 )。どちらの方法は、予想外であったか、私は私がエラーに取得する行
$config->get('test2')
で、最初の行に->makePartial()
を使用する場合、その引数は
しかし、この方法のために何も期待される引数リストに一致しない
BadMethodCallException:方法Mockery_1_Illuminate_Contracts_Config_Repository :: get()がこのモックオブジェクトに存在しません
メソッドのレスポンスをマスクして、そのメソッドをretそのメソッドへの他のすべての呼び出しに対して通常の応答を返しますか?
おかげで、私は、このメソッドからのすべての単一の応答、特定のパラメータが渡された1つだけ模擬したくありません。 – myol
パラメータを持っていればそれを模倣し、それ以外の場合は普通に呼び出します。 – Loek
はい、嘲笑を使って可能ですか?私はPHPUnitを使用してそれをしていることはほとんど確信しています – myol