Làm thế nào để giả lập Thread.sleep() với PowerMock?Làm thế nào để giả lập Thread.sleep() với PowerMock?
giao diện mẫu và lớp:
public interface Machine {
void sleep(long millis);
}
public class MachineImpl
implements Machine {
private static final Logger logger = Logger.getLogger(MachineImpl.class);
@Override
public void sleep(long millis) {
try {
if (millis > 0) {
logger.trace(String.format("Try to sleep for %d millis...", millis));
Thread.sleep(millis);
}
}
catch (InterruptedException e) {
logger.trace("Full exception", e);
}
}
}
Vì Máy là giao diện, bạn có thể không tiêm một lớp ghi đè lên phương thức ngủ bằng cách thực hiện trống và kiểm tra qua giao diện không? –