/* * Non regression test for Issue 1792 */ public void testProxyCancelTCP() throws Exception { tomcat.addSipConnector(serverName, sipIpAddress, 5070, ListeningPoint.TCP); setupPhones(ListeningPoint.TCP); String fromName = "unique-location"; String fromSipAddress = "sip-servlets.com"; SipURI fromAddress = senderProtocolObjects.addressFactory.createSipURI(fromName, fromSipAddress); String toSipAddress = "sip-servlets.com"; String toUser = "******"; SipURI toAddress = senderProtocolObjects.addressFactory.createSipURI(toUser, toSipAddress); List<Integer> provisionalResponsesToSend = new ArrayList<Integer>(); provisionalResponsesToSend.add(Response.TRYING); provisionalResponsesToSend.add(Response.RINGING); receiver.setProvisionalResponsesToSend(provisionalResponsesToSend); receiver.setWaitForCancel(true); sender.sendSipRequest("INVITE", fromAddress, toAddress, null, null, false); Thread.sleep(1000); sender.sendCancel(); Thread.sleep(TIMEOUT); assertTrue(receiver.isCancelReceived()); assertTrue(sender.isCancelOkReceived()); assertTrue(sender.isRequestTerminatedReceived()); }
/** * Non Regression test for http://code.google.com/p/mobicents/issues/detail?id=2230 BYE is routed * to unexpected IP */ public void testCallForwardingCallerSendBye408onReinviteUPDATENewThread() throws Exception { sender = new TestSipListener(5080, 5070, senderProtocolObjects, false); SipProvider senderProvider = sender.createProvider(); receiver = new TestSipListener(5090, 5070, receiverProtocolObjects, false); SipProvider receiverProvider = receiver.createProvider(); receiverProvider.addSipListener(receiver); senderProvider.addSipListener(sender); senderProtocolObjects.start(); receiverProtocolObjects.start(); String fromName = "forward-sender-408-new-thread"; String fromSipAddress = "sip-servlets.com"; SipURI fromAddress = senderProtocolObjects.addressFactory.createSipURI(fromName, fromSipAddress); String toSipAddress = "sip-servlets.com"; String toUser = "******"; SipURI toAddress = senderProtocolObjects.addressFactory.createSipURI(toUser, toSipAddress); sender.sendSipRequest("INVITE", fromAddress, toAddress, null, null, false); Thread.sleep(TIMEOUT); assertTrue(receiver.isInviteReceived()); assertTrue(receiver.isAckReceived()); MaxForwardsHeader maxForwardsHeader = (MaxForwardsHeader) receiver.getInviteRequest().getHeader(MaxForwardsHeader.NAME); assertNotNull(maxForwardsHeader); receiver.setProvisionalResponsesToSend(new ArrayList<Integer>()); receiver.setFinalResponseToSend(Response.REQUEST_TIMEOUT); Header methodHeader = receiverProtocolObjects.headerFactory.createHeader("Method", "UPDATE"); List<Header> headers = new ArrayList<Header>(); headers.add(methodHeader); sender.sendInDialogSipRequest("INVITE", null, null, null, headers, null); Thread.sleep(TIMEOUT); assertTrue(receiver.isInviteReceived()); assertTrue(receiver.isAckReceived()); receiver.sendInDialogSipRequest("UPDATE", null, null, null, null, null); Thread.sleep(TIMEOUT); assertTrue(receiver.isInviteReceived()); assertTrue(receiver.isAckReceived()); sender.sendInDialogSipRequest("BYE", null, null, null, null, null); Thread.sleep(TIMEOUT); assertTrue(sender.getOkToByeReceived()); Iterator<String> allMessagesIterator = sender.getAllMessagesContent().iterator(); while (allMessagesIterator.hasNext()) { String message = (String) allMessagesIterator.next(); logger.info(message); } assertTrue(sender.getAllMessagesContent().contains("IllegalStateException")); }