3333import java .io .Writer ;
3434import java .nio .charset .StandardCharsets ;
3535import java .nio .file .Files ;
36+ import java .time .Duration ;
3637
3738import org .apache .commons .io .FileUtils ;
3839import org .apache .commons .io .output .ByteArrayOutputStream ;
40+ import org .apache .commons .lang3 .ThreadUtils ;
3941
4042/**
4143 * Base class for testcases doing tests with files.
@@ -185,8 +187,7 @@ public static byte[] generateTestData(final long size) {
185187 }
186188 }
187189
188- public static void generateTestData (final OutputStream out , final long size )
189- throws IOException {
190+ public static void generateTestData (final OutputStream out , final long size ) throws IOException {
190191 for (int i = 0 ; i < size ; i ++) {
191192 // output.write((byte)'X');
192193 // nice varied byte pattern compatible with Readers and Writers
@@ -207,23 +208,23 @@ public static File newFile(final File testDirectory, final String filename) thro
207208 }
208209
209210 /**
210- * Sleep for a guaranteed number of milliseconds unless interrupted.
211+ * Sleeps for a guaranteed number of milliseconds unless interrupted.
211212 *
212213 * This method exists because Thread.sleep(100) can sleep for 0, 70, 100 or 200ms or anything else
213214 * it deems appropriate. Read the docs on Thread.sleep for further details.
214215 *
215- * @param millis the number of milliseconds to sleep for
216- * @throws InterruptedException if interrupted
216+ * @param millis the number of milliseconds to sleep.
217+ * @throws InterruptedException if interrupted.
217218 */
218219 public static void sleep (final long millis ) throws InterruptedException {
219- final long finishAtMillis = System .currentTimeMillis () + millis ;
220- long remainingMillis = millis ;
221- do {
222- Thread .sleep (remainingMillis );
223- remainingMillis = finishAtMillis - System .currentTimeMillis ();
224- } while (remainingMillis > 0 );
220+ ThreadUtils .sleep (Duration .ofMillis (millis ));
225221 }
226222
223+ /**
224+ * Sleeps and swallows InterruptedException.
225+ *
226+ * @param millis the number of milliseconds to sleep.
227+ */
227228 public static void sleepQuietly (final long millis ) {
228229 try {
229230 sleep (millis );
0 commit comments