Я хотел бы издеваться Config::get('specific_key')
вернуть 'specific_value'
в моем тесте. Поэтому я написал следующий код:
Config::shouldReceive('get')
->with('specific_key')
->andReturn('specific_value');
Config::makePartial();
Это будет работать: если я добавлю dd(Config::get('specific_key'))
я получу 'specific_value'
,
Однако, если я сделаю dd(Config::get('another_key'))
Я не получаю никакого значения (думаю, потому что макет не ожидает этот ключ в качестве аргумента).
Итак, мой вопрос: есть ли способ смоделировать метод get () Config, чтобы он возвращал определенное значение только для определенного ключа (и возвращал нормальное значение из файла конфигурации для любого другого ключа)?
Вам не нужно издеваться над Config, вы можете использовать Config::set()
установить любое значение в Config. Так Config::set('specific_key', 'specific_value');
в тесте вместо создания макета должно работать
Других решений пока нет …