|
16 | 16 | */
|
17 | 17 | @Slf4j
|
18 | 18 | public class ProgressLoggerJavaTest extends Assert {
|
19 |
| - private final StringBuffer sb = new StringBuffer(); |
20 |
| - private Consumer bufferWrite = (it) -> sb.append(it).append('\n'); |
| 19 | + private final StringBuffer sb = new StringBuffer(); |
| 20 | + private Consumer bufferWrite = (it) -> sb.append(it).append('\n'); |
21 | 21 |
|
22 |
| - @Test |
23 |
| - public void testWithImplicitCreateConsumer(){ |
24 |
| - List list = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); |
25 |
| - ProgressLogger pl = new ProgressLogger( |
26 |
| - list |
27 |
| - ,new Consumer() { |
28 |
| - @Override |
29 |
| - public void accept(Object it) { |
30 |
| - System.out.println(it); |
31 |
| - bufferWrite.accept(it); |
32 |
| - } |
33 |
| - } |
34 |
| - ); |
35 |
| - list.forEach( (t) -> pl.next() ); |
| 22 | + @Test |
| 23 | + public void testWithImplicitCreateConsumer(){ |
| 24 | + List list = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); |
| 25 | + ProgressLogger pl = new ProgressLogger( |
| 26 | + list |
| 27 | + ,new Consumer() { |
| 28 | + @Override |
| 29 | + public void accept(Object it) { |
| 30 | + System.out.println(it); |
| 31 | + bufferWrite.accept(it); |
| 32 | + } |
| 33 | + } |
| 34 | + ); |
| 35 | + list.forEach( (t) -> pl.next() ); |
36 | 36 |
|
37 |
| - assertThat(sb.toString(), matchesPattern("(?ms)^Process \\[Integer\\] #1 from 10 \\(10[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\n" + |
38 |
| - "Process \\[Integer\\] #2 from 10 \\(20[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 8, time: \\d+[,.]\\d{3}\n" + |
39 |
| - "Process \\[Integer\\] #3 from 10 \\(30[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 7, time: \\d+[,.]\\d{3}\n" + |
40 |
| - "Process \\[Integer\\] #4 from 10 \\(40[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 6, time: \\d+[,.]\\d{3}\n" + |
41 |
| - "Process \\[Integer\\] #5 from 10 \\(50[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 5, time: \\d+[,.]\\d{3}\n" + |
42 |
| - "Process \\[Integer\\] #6 from 10 \\(60[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 4, time: \\d+[,.]\\d{3}\n" + |
43 |
| - "Process \\[Integer\\] #7 from 10 \\(70[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 3, time: \\d+[,.]\\d{3}\n" + |
44 |
| - "Process \\[Integer\\] #8 from 10 \\(80[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 2, time: \\d+[,.]\\d{3}\n" + |
45 |
| - "Process \\[Integer\\] #9 from 10 \\(90[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 1, time: \\d+[,.]\\d{3}\n" + |
46 |
| - "Process \\[Integer\\] #10 from 10 \\(100[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\n") |
47 |
| - ); |
48 |
| - } |
| 37 | + assertThat(sb.toString(), matchesPattern("(?ms)^Process \\[Integer\\] #1 from 10 \\(10[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\n" + |
| 38 | + "Process \\[Integer\\] #2 from 10 \\(20[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 8, time: \\d+[,.]\\d{3}\n" + |
| 39 | + "Process \\[Integer\\] #3 from 10 \\(30[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 7, time: \\d+[,.]\\d{3}\n" + |
| 40 | + "Process \\[Integer\\] #4 from 10 \\(40[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 6, time: \\d+[,.]\\d{3}\n" + |
| 41 | + "Process \\[Integer\\] #5 from 10 \\(50[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 5, time: \\d+[,.]\\d{3}\n" + |
| 42 | + "Process \\[Integer\\] #6 from 10 \\(60[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 4, time: \\d+[,.]\\d{3}\n" + |
| 43 | + "Process \\[Integer\\] #7 from 10 \\(70[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 3, time: \\d+[,.]\\d{3}\n" + |
| 44 | + "Process \\[Integer\\] #8 from 10 \\(80[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 2, time: \\d+[,.]\\d{3}\n" + |
| 45 | + "Process \\[Integer\\] #9 from 10 \\(90[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 1, time: \\d+[,.]\\d{3}\n" + |
| 46 | + "Process \\[Integer\\] #10 from 10 \\(100[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\n") |
| 47 | + ); |
| 48 | + } |
49 | 49 |
|
50 |
| - @Test |
51 |
| - public void testWithLambda(){ |
52 |
| - List list = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); |
53 |
| - ProgressLogger pl = new ProgressLogger( |
54 |
| - list |
55 |
| - , it -> bufferWrite.accept(it) |
56 |
| - ); |
57 |
| - list.forEach( (t) -> pl.next() ); |
| 50 | + @Test |
| 51 | + public void testWithLambda(){ |
| 52 | + List list = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); |
| 53 | + ProgressLogger pl = new ProgressLogger( |
| 54 | + list |
| 55 | + , it -> bufferWrite.accept(it) |
| 56 | + ); |
| 57 | + list.forEach( (t) -> pl.next() ); |
58 | 58 |
|
59 |
| - assertThat(sb.toString(), matchesPattern("(?ms)^Process \\[Integer\\] #1 from 10 \\(10[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\n" + |
60 |
| - "Process \\[Integer\\] #2 from 10 \\(20[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 8, time: \\d+[,.]\\d{3}\n" + |
61 |
| - "Process \\[Integer\\] #3 from 10 \\(30[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 7, time: \\d+[,.]\\d{3}\n" + |
62 |
| - "Process \\[Integer\\] #4 from 10 \\(40[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 6, time: \\d+[,.]\\d{3}\n" + |
63 |
| - "Process \\[Integer\\] #5 from 10 \\(50[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 5, time: \\d+[,.]\\d{3}\n" + |
64 |
| - "Process \\[Integer\\] #6 from 10 \\(60[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 4, time: \\d+[,.]\\d{3}\n" + |
65 |
| - "Process \\[Integer\\] #7 from 10 \\(70[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 3, time: \\d+[,.]\\d{3}\n" + |
66 |
| - "Process \\[Integer\\] #8 from 10 \\(80[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 2, time: \\d+[,.]\\d{3}\n" + |
67 |
| - "Process \\[Integer\\] #9 from 10 \\(90[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 1, time: \\d+[,.]\\d{3}\n" + |
68 |
| - "Process \\[Integer\\] #10 from 10 \\(100[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\n") |
69 |
| - ); |
70 |
| - } |
| 59 | + assertThat(sb.toString(), matchesPattern("(?ms)^Process \\[Integer\\] #1 from 10 \\(10[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\n" + |
| 60 | + "Process \\[Integer\\] #2 from 10 \\(20[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 8, time: \\d+[,.]\\d{3}\n" + |
| 61 | + "Process \\[Integer\\] #3 from 10 \\(30[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 7, time: \\d+[,.]\\d{3}\n" + |
| 62 | + "Process \\[Integer\\] #4 from 10 \\(40[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 6, time: \\d+[,.]\\d{3}\n" + |
| 63 | + "Process \\[Integer\\] #5 from 10 \\(50[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 5, time: \\d+[,.]\\d{3}\n" + |
| 64 | + "Process \\[Integer\\] #6 from 10 \\(60[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 4, time: \\d+[,.]\\d{3}\n" + |
| 65 | + "Process \\[Integer\\] #7 from 10 \\(70[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 3, time: \\d+[,.]\\d{3}\n" + |
| 66 | + "Process \\[Integer\\] #8 from 10 \\(80[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 2, time: \\d+[,.]\\d{3}\n" + |
| 67 | + "Process \\[Integer\\] #9 from 10 \\(90[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\\. Estimated items: 1, time: \\d+[,.]\\d{3}\n" + |
| 68 | + "Process \\[Integer\\] #10 from 10 \\(100[,.]00%\\)\\. Spent \\(pack by 1\\) time: \\d+[,.]\\d{3} \\(from start: \\d+[,.]\\d{3}\\)\n") |
| 69 | + ); |
| 70 | + } |
71 | 71 |
|
| 72 | + @Test |
| 73 | + public void measureAndLogTimeTest(){ |
| 74 | + long result = (long)ProgressLogger.measureAndLogTime( |
| 75 | + spentTime-> bufferWrite.accept("Operation took: " + spentTime), |
| 76 | + () -> { |
| 77 | + System.out.println ("test"); // Some long measured work |
| 78 | + return 42L; |
| 79 | + } |
| 80 | + ); |
| 81 | + assertEquals(42, result); |
| 82 | + assertThat(sb.toString(), matchesPattern("Operation took: 0[,.]\\d{3}\n42\n")); |
| 83 | + } |
72 | 84 | }
|
0 commit comments