Издеваться над публичным свойством статического метода?

0

Я использую Confide который требует, чтобы вы делали что-то вроде

Confide::user()->id

Чтобы получить идентификатор пользователя. И я пытаюсь издеваться над этим, чтобы он возвращал идентификатор пользователя мусора. Я могу высмеять Confide::user() порядке, используя Laravel, встроенный в Facade mocking

Confide::shouldReceive('user')->once()->andReturn('blah');

Если я запустил Confide::user() он возвращает blah.

Но как я могу добавить свойство, поэтому, если я запускаю Confide::user()->id он возвращает значение mock?

Теги:
unit-testing
mocking

1 ответ

2
Лучший ответ

Как насчет

Confide::shouldReceive('user')->once()->andReturn( (object)array('id' => 42) );

Таким образом вы создаете экземпляр stdClass с единственным атрибутом id = 42.

  • 0
    + _ + видимо я слишком долго на это пялился.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню