private void assertTopMostVia( final SipMessage msg, final String host, final int port, final String transport) throws Exception { final ViaHeader via = this.headerFactory.createViaHeader(Buffers.wrap(host), port, Buffers.wrap(transport), null); msg.addHeaderFirst(via); final ViaHeader topMostVia = msg.getViaHeader(); assertThat(topMostVia.getBranch(), not((Buffer) null)); assertThat(topMostVia.getHost().toString(), is(host)); assertThat(topMostVia.getPort(), is(port)); assertThat(topMostVia.getTransport().toString(), is(transport)); }
/** Make sure that all our Via-headers can be modified the way we need it. */ @Test public void testViaHeaderManipulation() throws Exception { final SipRequest request = (SipRequest) parseMessage(RawData.sipInvite); final ViaHeader topMostVia = request.getViaHeader(); assertThat(topMostVia.getBranch().toString(), is("z9hG4bK-16732-1-0")); assertThat(topMostVia.getHost().toString(), is("127.0.1.1")); assertThat(topMostVia.getPort(), is(5060)); assertTopMostVia(request, "192.168.0.100", 6789, "TCP"); assertTopMostVia(request, "192.168.0.101", 1111, "UDP"); final String str = request.toString(); assertThat(str.contains("Via: SIP/2.0/TCP 192.168.0.100:6789"), is(true)); assertThat(str.contains("Via: SIP/2.0/UDP 192.168.0.101:1111"), is(true)); }