Github user vvysotskyi commented on the issue: https://github.com/apache/drill/pull/904 @weijietong thanks for the explanation of your problem. I was able to reproduce it, but also I found working solution. This mock works correctly. The problem appears when unit test is run with other tests: [DateTimeZone](https://github.com/JodaOrg/joda-time/blob/ba95735daf79d00ce0928f30701d691f5e029d81/src/main/java/org/joda/time/DateTimeZone.java) class contains static field [cDefault](https://github.com/JodaOrg/joda-time/blob/ba95735daf79d00ce0928f30701d691f5e029d81/src/main/java/org/joda/time/DateTimeZone.java#L128) which is used to receive timezone in `testToDateForTimeStamp()` and in other tests. When timezone does not set to this field, but method [getDefault()](https://github.com/JodaOrg/joda-time/blob/ba95735daf79d00ce0928f30701d691f5e029d81/src/main/java/org/joda/time/DateTimeZone.java#L149) is called, value is taken from `System.getProperty()`. When the first test that calls this method does not have a mock, it sets a real value of timezone from `System.getProperty()`. Therefore our test uses a unmocked value from `cDefault`. So lets mock `DateTimeZone.getDefault()` method: ``` new MockUp<DateTimeZone>() { @Mock public DateTimeZone getDefault() { return DateTimeZone.UTC; } }; ```
---