我想嘲笑下面提到的方法。
public class MockClass {
public boolean ToBeMocked(Cinput, Coutput, List<CIOChain<Cinput, Coutput>>)
}
应该取代什么?在下面提到的代码?
Easymock.expect(MockClassObject.ToBeMocked(Cinput.class, Coutput.class, ??)).andReturn(true);
答案 0 :(得分:0)
在Class
级别,由于类型擦除,所有List
接口都是相同的,无论通用类型如何;它们只是在编译时不同。
所以它只是List.class
代替??
。
即,
Easymock.expect(MockClassObject.ToBeMocked(Cinput.class, Coutput.class, List.class)).
andReturn(true);
在模拟的范围内,您应该真正指定您希望传递给该方法的对象,例如:
Easymock.expect(MockClassObject.ToBeMocked(cInputObj, cOutputObj, listObj)).
andReturn(true);
如果由于某种原因你不能这样做,你可以使用isA
/ anyObject
变体:
Easymock.expect(MockClassObject.ToBeMocked(isA(Cinput.class), isA(Coutput.class), isA(List.class))).
andReturn(true);