M
mike
Hi,
I am using junit 4 and jmock 2.
In my unit under test I had the following code:
public class CommandHandler{
........
context.setAPartyCallLeg(new CallLeg(sipFactory, request,
request.getFrom()));
........
}
We changed that to using a factory method:
public class CommandHandler{
......
ICallLeg callLeg = createCallLeg(sipFactory, request,
request.getFrom());
context.setAPartyCallLeg(callLeg);
....
protected ICallLeg createCallLeg(SipFactory sipFactory,
SipServletRequest request, Address address) throws
IOException,ServletException {
return new CallLeg(sipFactory, request, address);
}
}
My unit test has the following code for testing:
public class MyTest{
CallLeg mockCallLeg = context.mock(ICallLeg.class);
public void testdoInvite() throws ServletException,IOException {
CommandHandler ch = new CommandHandler(mockSipFactory) {
protected ICallLeg createCallLeg(SipFactory sipFactory,
SipServletRequest request, Address address) {
return mockCallLeg;
}};
}
}
My problem is that in my unit under test I have another instance of
CallLeg being created. So how can I make another instance to be used
in my test?
cheers,
//mike
I am using junit 4 and jmock 2.
In my unit under test I had the following code:
public class CommandHandler{
........
context.setAPartyCallLeg(new CallLeg(sipFactory, request,
request.getFrom()));
........
}
We changed that to using a factory method:
public class CommandHandler{
......
ICallLeg callLeg = createCallLeg(sipFactory, request,
request.getFrom());
context.setAPartyCallLeg(callLeg);
....
protected ICallLeg createCallLeg(SipFactory sipFactory,
SipServletRequest request, Address address) throws
IOException,ServletException {
return new CallLeg(sipFactory, request, address);
}
}
My unit test has the following code for testing:
public class MyTest{
CallLeg mockCallLeg = context.mock(ICallLeg.class);
public void testdoInvite() throws ServletException,IOException {
CommandHandler ch = new CommandHandler(mockSipFactory) {
protected ICallLeg createCallLeg(SipFactory sipFactory,
SipServletRequest request, Address address) {
return mockCallLeg;
}};
}
}
My problem is that in my unit under test I have another instance of
CallLeg being created. So how can I make another instance to be used
in my test?
cheers,
//mike