Тест Хэмкреста странная ошибка сдвига во времени - PullRequest
0 голосов
/ 10 марта 2020

Я пытаюсь построить https://github.com/jenkinsci/jira-trigger-plugin, и в тестах, связанных со временем / датой, возникают ошибки:

expect commentEvent.issue.creationDate, is(new DateTime(1980, 1, 1, 0, 0, 0, 0))

Сбои:

Condition not satisfied:

expect commentEvent.issue.creationDate, is(new DateTime(1980, 1, 1, 0, 0, 0, 0))
|      |            |     |                |
false  |            |     |                1980-01-01T00:00:00.000+03:00
       |            |     1980-01-01T03:00:00.000+03:00
<...>
Expected: is <1980-01-01T00:00:00.000+03:00>
 but: was <1980-01-01T03:00:00.000+03:00>

As Можно видеть, что сбой происходит из-за временного сдвига, который равен смещению часового пояса.

Но в соответствии с меткой времени, часовой пояс учитывается.

Я сделал быстрое исправление с помощью функции .minusHours () JodaTime, но это не вариант для постоянного исправления.

1 Ответ

0 голосов
/ 10 марта 2020

Отказ от ответственности: я не связан с плагином запуска jira, поэтому могу только предполагать:

Если тесты не выполняются в вашем часовом поясе, возможно, они не предназначены для этого (по любой причине, включая ошибка в дизайне теста).

Если это так, то в качестве обходного пути можно рассмотреть запуск процесса тестирования в часовом поясе GMT ​​(с нулевым смещением).

Вы можете сделать это для любого java обработать, используя следующий подход:

java -Duser.timezone=GMT <MainClass>

Я не знаю, как создается этот плагин, но я уверен, что есть возможность добавить свойство, подобное этому, для maven / surefire и gradle

...