0
나는 그러나 var_dump(Confide::user()->id);
는 항상 내가 1
로 설정된 두 번째는 1
를 반환해야하더라도 (42)을 반환 Laravel을 사용하고Facade mock이 우선 무시되지 않고 두 번 호출 되었습니까?
Confide::shouldReceive('user')->atLeast(1)->andReturn((object) array('id' => 42));
var_dump(Confide::user()->id); // returns int(42)
Confide::shouldReceive('user')->atLeast(1)->andReturn((object) array('id' => 1));
var_dump(Confide::user()->id); // returns int(42) but should be int(1)
같은 외관 객체를 조롱하고있다.
내가 뭘 잘못하고 있니?
는 3 호출 후 다른 값을 반환하도록 어쨌든 거기에 해당 설명서 확인? 그것은 많이 불린다. – Steven
@Steven은 익명 함수를 허용하는 구문을 검사합니다. 제공된 문서 페이지에서'andReturnUsing (closure, ...)'를 사용하십시오. 그런 식으로 자신 만의 카운터 (또는 다른 공유 변수)를 만들고 값에 따라 필요한 것을 반환 할 수 있습니다. 또는'andReturnValues ()'를 사용하고'0..3' 인덱스로 배열을 준비 할 수도 있습니다. – zerkms
Im 그냥 다시 호출하는 것이 왜 새로운 가치를 설정하지 않는지 알아 내려고 노력하고 있습니다. 나는 메소드가 호출되는 횟수를 하드 코딩하는 아이디어를 정말로 좋아하지 않는다. – Steven