1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.hadoop.hbase.regionserver;
20
21 import java.util.HashMap;
22 import java.util.Map;
23
24 import org.apache.commons.math.stat.descriptive.DescriptiveStatistics;
25
26 import org.apache.hadoop.hbase.CompatibilitySingletonFactory;
27 import org.junit.Test;
28
29 import static org.junit.Assert.assertEquals;
30 import static org.junit.Assert.assertTrue;
31
32 public class TestMetricsRegionSourceImpl {
33
34 @Test
35 public void testCompareTo() throws Exception {
36 MetricsRegionServerSourceFactory fact = CompatibilitySingletonFactory.getInstance(MetricsRegionServerSourceFactory.class);
37
38 MetricsRegionSource one = fact.createRegion(new RegionWrapperStub("TEST"));
39 MetricsRegionSource oneClone = fact.createRegion(new RegionWrapperStub("TEST"));
40 MetricsRegionSource two = fact.createRegion(new RegionWrapperStub("TWO"));
41
42 assertEquals(0, one.compareTo(oneClone));
43
44 assertTrue( one.compareTo(two) < 0);
45 assertTrue( two.compareTo(one) > 0);
46 }
47
48
49 @Test(expected = RuntimeException.class)
50 public void testNoGetRegionServerMetricsSourceImpl() throws Exception {
51
52
53 CompatibilitySingletonFactory.getInstance(MetricsRegionSource.class);
54 }
55
56 static class RegionWrapperStub implements MetricsRegionWrapper {
57
58 private String regionName;
59
60 public RegionWrapperStub(String regionName) {
61
62
63 this.regionName = regionName;
64 }
65
66 @Override
67 public String getTableName() {
68 return null;
69 }
70
71 @Override
72 public String getNamespace() {
73 return null;
74 }
75
76 @Override
77 public String getRegionName() {
78 return this.regionName;
79 }
80
81 @Override
82 public long getNumStores() {
83 return 0;
84 }
85
86 @Override
87 public long getNumStoreFiles() {
88 return 0;
89 }
90
91 @Override
92 public long getMemstoreSize() {
93 return 0;
94 }
95
96 @Override
97 public long getStoreFileSize() {
98 return 0;
99 }
100
101 @Override
102 public long getReadRequestCount() {
103 return 0;
104 }
105
106 @Override
107 public long getWriteRequestCount() {
108 return 0;
109 }
110
111 @Override
112 public long getNumFilesCompacted() {
113 return 0;
114 }
115
116 @Override
117 public long getNumBytesCompacted() {
118 return 0;
119 }
120
121 @Override
122 public long getNumCompactionsCompleted() {
123 return 0;
124 }
125 @Override
126 public Map<String, DescriptiveStatistics> getCoprocessorExecutionStatistics() {
127 return null;
128 }
129 }
130 }