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.util;
21
22 import org.apache.hadoop.hbase.MediumTests;
23 import org.junit.Test;
24 import org.junit.experimental.categories.Category;
25
26 import static org.mockito.Mockito.mock;
27 import static org.mockito.Mockito.when;
28 import static org.mockito.Mockito.verify;
29
30 import static org.junit.Assert.assertEquals;
31 import static org.junit.Assert.assertFalse;
32 import static org.junit.Assert.assertNotNull;
33 import static org.junit.Assert.assertTrue;
34
35 @Category(MediumTests.class)
36 public class TestEnvironmentEdgeManager {
37
38 @Test
39 public void testManageSingleton() {
40 EnvironmentEdge edge = EnvironmentEdgeManager.getDelegate();
41 assertNotNull(edge);
42 assertTrue(edge instanceof DefaultEnvironmentEdge);
43 EnvironmentEdgeManager.reset();
44 EnvironmentEdge edge2 = EnvironmentEdgeManager.getDelegate();
45 assertFalse(edge == edge2);
46 IncrementingEnvironmentEdge newEdge = new IncrementingEnvironmentEdge();
47 EnvironmentEdgeManager.injectEdge(newEdge);
48 assertEquals(newEdge, EnvironmentEdgeManager.getDelegate());
49
50
51 EnvironmentEdgeManager.injectEdge(null);
52 EnvironmentEdge nullResult = EnvironmentEdgeManager.getDelegate();
53 assertTrue(nullResult instanceof DefaultEnvironmentEdge);
54 }
55
56 @Test
57 public void testCurrentTimeInMillis() {
58 EnvironmentEdge mock = mock(EnvironmentEdge.class);
59 EnvironmentEdgeManager.injectEdge(mock);
60 long expectation = 3456;
61 when(mock.currentTimeMillis()).thenReturn(expectation);
62 long result = EnvironmentEdgeManager.currentTimeMillis();
63 verify(mock).currentTimeMillis();
64 assertEquals(expectation, result);
65 }
66
67 @org.junit.Rule
68 public org.apache.hadoop.hbase.ResourceCheckerJUnitRule cu =
69 new org.apache.hadoop.hbase.ResourceCheckerJUnitRule();
70 }
71