You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
72 lines
2.6 KiB
72 lines
2.6 KiB
package com.fanruan.api.cluster; |
|
|
|
import com.fr.cluster.ClusterBridge; |
|
import com.fr.cluster.core.ClusterNode; |
|
import com.fr.cluster.core.ClusterView; |
|
import com.fr.stable.Filter; |
|
import org.easymock.EasyMock; |
|
import org.junit.Assert; |
|
import org.junit.Test; |
|
import org.junit.runner.RunWith; |
|
import org.powermock.api.easymock.PowerMock; |
|
import org.powermock.core.classloader.annotations.PrepareForTest; |
|
import org.powermock.modules.junit4.PowerMockRunner; |
|
|
|
import java.util.ArrayList; |
|
import java.util.List; |
|
|
|
/** |
|
* @author Lucian.Chen |
|
* @version 10.0 |
|
* Created by Lucian.Chen on 2020/3/24 |
|
*/ |
|
@RunWith(PowerMockRunner.class) |
|
@PrepareForTest(ClusterBridge.class) |
|
public class ClusterBridgeKitTest { |
|
|
|
@Test |
|
public void testGetView() { |
|
ClusterView view = EasyMock.mock(ClusterView.class); |
|
PowerMock.mockStatic(ClusterBridge.class); |
|
EasyMock.expect(ClusterBridge.getView()).andReturn(view).anyTimes(); |
|
Filter filter = EasyMock.createMock(Filter.class); |
|
|
|
ClusterNode node1 = EasyMock.mock(ClusterNode.class); |
|
ClusterNode node2 = EasyMock.mock(ClusterNode.class); |
|
ClusterNode node3 = EasyMock.mock(ClusterNode.class); |
|
List<ClusterNode> list1 = new ArrayList<>(); |
|
List<ClusterNode> list2 = new ArrayList<>(); |
|
list1.add(node1); |
|
list1.add(node2); |
|
list2.add(node3); |
|
|
|
EasyMock.expect(view.getCurrent()).andReturn(node1).once(); |
|
EasyMock.expect(view.getNodeById("1")).andReturn(node2).once(); |
|
EasyMock.expect(view.listNodes()).andReturn(list1).once(); |
|
EasyMock.expect(view.listNodes(filter)).andReturn(list2).once(); |
|
|
|
|
|
EasyMock.replay(view, filter, node1, node2, node3); |
|
PowerMock.replay(ClusterBridge.class); |
|
Assert.assertEquals(ClusterBridgeKit.getCurrentNode(), node1); |
|
Assert.assertEquals(ClusterBridgeKit.getNodeById("1"), node2); |
|
Assert.assertEquals(ClusterBridgeKit.listNodes(), list1); |
|
Assert.assertEquals(ClusterBridgeKit.listNodes(filter), list2); |
|
|
|
EasyMock.verify(view, filter, node1, node2, node3); |
|
PowerMock.verify(ClusterBridge.class); |
|
} |
|
|
|
@Test |
|
public void testIsClusterMode() { |
|
PowerMock.mockStatic(ClusterBridge.class); |
|
EasyMock.expect(ClusterBridge.isClusterMode()).andReturn(true).once(); |
|
EasyMock.expect(ClusterBridge.isClusterMode()).andReturn(false).once(); |
|
|
|
PowerMock.replay(ClusterBridge.class); |
|
Assert.assertTrue(ClusterBridgeKit.isClusterMode()); |
|
Assert.assertFalse(ClusterBridgeKit.isClusterMode()); |
|
|
|
PowerMock.verify(ClusterBridge.class); |
|
} |
|
}
|
|
|