插件开发工具库,推荐依赖该工具库。
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

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);
}
}