エンジニアのひよこ_level10

毎日更新してた人。たまに記事書きます。

【Laravel】ファサードのモックでCannot redeclare Mockeryが出る対応【399日目】

ファサードをモックしようとした

テストを書こうと思って、ファサードでモックしようとした。で、こう書いたら・・・

$mockClass = Mockery::mock(‘Validator’)->shouldReceive(‘make’);

エラーがこれ

Cannot redeclare Mockery_0_Illuminate_Support_Facades_Validator::shouldReceive()

エラーの意味

同じ関数を定義してるって感じ。

すでにこの関数あるぞーって言われてる・・・

あれ?つまり・・・

解決方法

Validator::shouldReceive('make')

デフォルトのファサード、すでにshouldReceive実装済みってことね・・・
なので、わざわざMockery通して新しくshouldReceiveを定義しなくていいよって話でした。

おつかれさまでした・・・