Mockeryで、以下のようなconst値を持つクラスをモックしたい場合があります。
class UserItem
{
const MAX_ITEM_PER_USER = 200;
}
このような場合は、stubクラスを別途用意します。用意したスタブをMockery::namedMock
の名前付きモックとして指定することで、異なる値を返すモックを作成できます。
- スタブクラス
class UserItemStub
{
const MAX_ITEM_PER_USER = 5;
}
- PHPUnitのコード
// モックする
Mockery::namedMock(UserItem::class, UserItemStub::class);
// 値を取得するとモックオブジェクトのconst値が取得できる
echo (UserItemStub::CHUNK_SIZE); // 5が返る
こちらもおススメ