|
|
|
package com.fanruan.api.conf.xml;
|
|
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
import com.fanruan.api.conf.impl.xml.XmlColConf;
|
|
|
|
import com.fanruan.api.conf.impl.xml.XmlConf;
|
|
|
|
import com.fr.stable.xml.XMLable;
|
|
|
|
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;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @author Lucian.Chen
|
|
|
|
* @version 10.0
|
|
|
|
* Created by Lucian.Chen on 2020/3/24
|
|
|
|
*/
|
|
|
|
@RunWith(PowerMockRunner.class)
|
|
|
|
@PrepareForTest({XmlHolderKit.class})
|
|
|
|
public class XmlHolderKitTest {
|
|
|
|
|
|
|
|
@Test
|
|
|
|
public void testOjb() throws Exception {
|
|
|
|
|
|
|
|
XMLable xmlable = EasyMock.createMock(XMLable.class);
|
|
|
|
XmlConf xmlConf = EasyMock.createMock(XmlConf.class);
|
|
|
|
|
|
|
|
PowerMock.expectNew(XmlConf.class, xmlable, XMLable.class, "A").andReturn(xmlConf);
|
|
|
|
|
|
|
|
EasyMock.replay(xmlable, xmlConf);
|
|
|
|
PowerMock.replay(XmlConf.class);
|
|
|
|
|
|
|
|
Assert.assertEquals(XmlHolderKit.obj(xmlable, XMLable.class, "A"), xmlConf);
|
|
|
|
|
|
|
|
EasyMock.verify(xmlable, xmlConf);
|
|
|
|
PowerMock.verify(XmlConf.class);
|
|
|
|
}
|
|
|
|
|
|
|
|
@Test
|
|
|
|
public void testCollection() throws Exception {
|
|
|
|
|
|
|
|
XmlColConf xmlColConf1 = EasyMock.createMock(XmlColConf.class);
|
|
|
|
XmlColConf xmlColConf2 = EasyMock.createMock(XmlColConf.class);
|
|
|
|
List<XMLable> list = new ArrayList<>();
|
|
|
|
|
|
|
|
PowerMock.expectNew(XmlColConf.class, list, XMLable.class, true).andReturn(xmlColConf1).times(2);
|
|
|
|
PowerMock.expectNew(XmlColConf.class, list, XMLable.class, false).andReturn(xmlColConf2).once();
|
|
|
|
|
|
|
|
EasyMock.replay(xmlColConf1, xmlColConf2);
|
|
|
|
PowerMock.replay(XmlColConf.class);
|
|
|
|
|
|
|
|
Assert.assertEquals(XmlHolderKit.collection(list, XMLable.class), xmlColConf1);
|
|
|
|
Assert.assertEquals(XmlHolderKit.collection(list, XMLable.class, true), xmlColConf1);
|
|
|
|
Assert.assertEquals(XmlHolderKit.collection(list, XMLable.class, false), xmlColConf2);
|
|
|
|
|
|
|
|
EasyMock.verify(xmlColConf1, xmlColConf2);
|
|
|
|
PowerMock.verify(XmlColConf.class);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|