1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.hadoop.hbase.regionserver.wal;
21
22 import org.apache.hadoop.hbase.testclassification.SmallTests;
23 import org.junit.Test;
24 import org.junit.experimental.categories.Category;
25
26 import java.util.concurrent.TimeUnit;
27
28 import static org.mockito.Mockito.mock;
29 import static org.mockito.Mockito.times;
30 import static org.mockito.Mockito.verify;
31
32 @Category(SmallTests.class)
33 public class TestMetricsWAL {
34 @Test
35 public void testLogRollRequested() throws Exception {
36 MetricsWALSource source = mock(MetricsWALSourceImpl.class);
37 MetricsWAL metricsWAL = new MetricsWAL(source);
38 metricsWAL.logRollRequested(false);
39 metricsWAL.logRollRequested(true);
40
41
42 verify(source, times(2)).incrementLogRollRequested();
43
44 verify(source, times(1)).incrementLowReplicationLogRoll();
45 }
46
47 @Test
48 public void testPostSync() throws Exception {
49 long nanos = TimeUnit.MILLISECONDS.toNanos(145);
50 MetricsWALSource source = mock(MetricsWALSourceImpl.class);
51 MetricsWAL metricsWAL = new MetricsWAL(source);
52 metricsWAL.postSync(nanos, 1);
53 verify(source, times(1)).incrementSyncTime(145);
54 }
55 }