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