()
| 10 | public class TestSleep extends BaseTest |
| 11 | { |
| 12 | public java.util.concurrent.CompletableFuture<Object> testSleep() |
| 13 | { |
| 14 | |
| 15 | return java.util.concurrent.CompletableFuture.supplyAsync(() -> { |
| 16 | |
| 17 | var exchange = new Exchange(new java.util.HashMap<String, Object>() {{ |
| 18 | put( "id", "sampleexchange" ); |
| 19 | }}); |
| 20 | Object start = exchange.milliseconds(); |
| 21 | Object sleepAmount = 100; // milliseconds |
| 22 | (exchange.sleep(sleepAmount)).join(); |
| 23 | Object end = exchange.milliseconds(); |
| 24 | Object elapsed = Helpers.subtract(end, start); |
| 25 | // Allow a small margin of error due to execution time |
| 26 | Object marginOfError = 20; |
| 27 | Object maxElapsed = Helpers.add(sleepAmount, marginOfError); |
| 28 | Object elapsedBiggerThanSleep = Helpers.isGreaterThanOrEqual(elapsed, sleepAmount); |
| 29 | Object elapsedLessThanMax = Helpers.isLessThanOrEqual(elapsed, maxElapsed); |
| 30 | Assert(elapsedBiggerThanSleep, Helpers.add(Helpers.add(Helpers.add(Helpers.add("Elapsed time ", String.valueOf(elapsed)), "ms is less than sleep amount "), String.valueOf(sleepAmount)), "ms")); |
| 31 | Assert(elapsedLessThanMax, Helpers.add(Helpers.add(Helpers.add(Helpers.add("Elapsed time ", String.valueOf(elapsed)), "ms exceeds sleep amount "), String.valueOf(maxElapsed)), "ms")); |
| 32 | return true; |
| 33 | }, io.github.ccxt.Exchange.VIRTUAL_EXECUTOR); |
| 34 | |
| 35 | } |
| 36 | } |
no test coverage detected