Przeglądaj źródła

Improve AbstractTimeBasedTest in sentinel-core

Signed-off-by: Eric Zhao <sczyh16@gmail.com>
master
Eric Zhao 5 lat temu
rodzic
commit
7d344dcb95
1 zmienionych plików z 13 dodań i 5 usunięć
  1. +13
    -5
      sentinel-core/src/test/java/com/alibaba/csp/sentinel/test/AbstractTimeBasedTest.java

+ 13
- 5
sentinel-core/src/test/java/com/alibaba/csp/sentinel/test/AbstractTimeBasedTest.java Wyświetl plik

@@ -23,28 +23,36 @@ import org.powermock.modules.junit4.PowerMockRunner;
import com.alibaba.csp.sentinel.util.TimeUtil;

/**
* Mock support for {@link TimeUtil}
* Mock support for {@link TimeUtil}.
*
* @author jason
*
*/
@RunWith(PowerMockRunner.class)
@PrepareForTest({ TimeUtil.class })
public abstract class AbstractTimeBasedTest {

private long currentMillis = 0;
{
PowerMockito.mockStatic(TimeUtil.class);
PowerMockito.when(TimeUtil.currentTimeMillis()).thenReturn(currentMillis);
}

protected final void useActualTime() {
PowerMockito.when(TimeUtil.currentTimeMillis()).thenCallRealMethod();
}

protected final void setCurrentMillis(long cur) {
currentMillis = cur;
PowerMockito.when(TimeUtil.currentTimeMillis()).thenReturn(currentMillis);
}
protected final void sleep(int t) {
currentMillis += t;
PowerMockito.when(TimeUtil.currentTimeMillis()).thenReturn(currentMillis);
}

protected final void sleepSecond(int timeSec) {
sleep(timeSec * 1000);
}
}

Ładowanie…
Anuluj
Zapisz