Open1
phpunit
モックオブジェクトで引数ごとに異なるオブジェクトを返却したい。
$productRepository = $this->createMock(ProductRepositoryInterface::class);
$productRepository
->method('ofProductCode')
->willReturnCallback(function($productCode) {
if ($productCode === 'test01') {
return $mockedProduct1; // test01 の場合の戻り値
} elseif ($productCode === 'test02') {
return $mockedProduct2; // test02 の場合の戻り値
} else {
// その他の場合の処理
return null; // 例えば null を返すなど
}
});