Как смоделировать дату и время для Magento 2 - PullRequest
0 голосов
/ 21 февраля 2019

В прошлом я использовал много раз в Beat, и сегодня у меня есть только Beat и Selen, работающие без хрома, чтобы использовать функции принятия BDD для пользовательской разработки в Magento 2. Предыдущие методы были либо индивидуальны для используемой средыили использовали Carbon и код выглядит как ...

//Carbon
Carbon::setTestNow(Carbon::create(2001, 5, 21, 12));  

//Silverstripe Framework
SS_Datetime::set_mock_now('2003-11-01 12:12:12')

... и после этого все приложение будет использовать это в качестве текущей даты / времени, включая такие вещи, какORM, где он обновляет «созданные» времена в записях базы данных.Сейчас я ищу то же самое в Magento CE 2.2.7 и пока не нашел того, что ищу.Существует страница документа разработчика , которая намекает на это утверждение ...

Всякий раз, когда ваш код требует доступа к какой-либо части среды, попробуйте использовать класс соавтора, который может легковместо этого следует заменить двойным тестом (также называемым макетом).Например, если вам ... ... нужно текущее время?Вставьте экземпляр \ DateTimeInterface (например, \ DateTimeImmutable ) и используйте его.

... однако он, похоже, не содержит больше информации и после поиска кода дляЯ все еще в замешательстве, если есть простой способ убедиться, что глобальная системная дата-время подделывается или подделывается таким образом, чтобы я мог ...

  1. Сделать заказ в день 1
  2. Движение вперед на день и обработка заказа в день 2
  3. Движение на неделю вперед, и клиент отмечает заказ на возврат в день 9
  4. и т. Д.

Может кто-нибудь помочь мне с этим?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...