TT#116101 bin/generate_test_tt2.py: more rules

* match more sip: cases
* add missing tcp for socket

Change-Id: Iea828093a5fe5e722ed808ffbe08be1cad65cc04
mr10.0
Victor Seva 5 years ago
parent 212a7075dd
commit 404b9f444e

@ -147,18 +147,26 @@ class Generator:
) )
rules.append( rules.append(
( (
r"sip:{}:{}([^\d])".format(subs["ip"], subs["port"]), r"sip:([^@]+@)?{}:{}([^\d])".format(
r"sip:[% {0}.ip %]:[% {0}.port %]\1".format(tt), subs["ip"], subs["port"]
),
r"sip:\1[% {0}.ip %]:[% {0}.port %]\2".format(tt),
)
)
rules.append(
(
r"sip:([^@]+@)?{}([^:])".format(subs["ip"]),
r"sip:\1[% {0}.ip %]\2".format(tt),
) )
) )
def add_socket(scen, tt): def add_socket(scen, tt):
rules.append( rules.append(
( (
r";socket=udp:{}:{}([^;>]+)".format( r";socket=(udp|tcp):{}:{}([^;>]+)".format(
scen["ip"], scen["port"] scen["ip"], scen["port"]
), ),
r";socket=udp:[% {0}.ip %]:[% {0}.port %]\1".format(tt), r";socket=\1:[% {0}.ip %]:[% {0}.port %]\2".format(tt),
) )
) )
sdp_rule(scen["ip"], f"{tt}.ip") sdp_rule(scen["ip"], f"{tt}.ip")
@ -172,7 +180,7 @@ class Generator:
# server_ip rules # server_ip rules
rules.append( rules.append(
( (
r";socket=(sip|udp):{}:5060".format(server_ip), r";socket=(sip|udp|tcp):{}:5060".format(server_ip),
r";socket=\1:[% server_ip %]:5060", r";socket=\1:[% server_ip %]:5060",
) )
) )

@ -83,4 +83,19 @@ scenarios:
register: yes register: yes
username: testuser1005 username: testuser1005
username: testuser1002 username: testuser1002
- devid: testuser1002
domain: invite-emergency.scenarios.test
ip: 10.20.29.2
mport: 45003
port: 51602
responders:
- domain: invite-emergency.scenarios.test
ip: 172.30.1.2
mport: 46003
peer: peer_invite_emergency_host0
port: 52602
proto: udp
register: no
username: 112
username: testuser1002
server_ip: 192.168.1.152 server_ip: 192.168.1.152

@ -0,0 +1,118 @@
----------------------------------------------- 2021-07-20 11:00:31.613771
UDP message received [1217] bytes :
INVITE sip:E1112@172.30.1.2:52602;transport=udp SIP/2.0
Record-Route: <sip:192.168.1.152;r2=on;lr=on;ftag=53E70CC1-60F690AF0008EAB4-BA7EE700;ngcplb=yes>
Record-Route: <sip:127.0.0.1;r2=on;lr=on;ftag=53E70CC1-60F690AF0008EAB4-BA7EE700;ngcplb=yes>
Record-Route: <sip:127.0.0.1:5062;lr=on;ftag=53E70CC1-60F690AF0008EAB4-BA7EE700;did=431.e771>
Via: SIP/2.0/UDP 192.168.1.152;branch=z9hG4bK2aa1.df56c4416da0d978f31f916b91547dd3.0
Via: SIP/2.0/UDP 127.0.0.1:5062;rport=5062;branch=z9hG4bK2aa1.5b8b530dce96fb797ee82335b2ab3b4f.0
Via: SIP/2.0/UDP 127.0.0.1:5080;received=127.0.0.1;branch=z9hG4bKQ7TPOaI8;rport=5080
From: <sip:4311049@invite-emergency.scenarios.test>;tag=53E70CC1-60F690AF0008EAB4-BA7EE700
To: <sip:E1112@172.30.1.2>
CSeq: 2935 INVITE
Call-ID: NGCP%invite_emergency%///1-179067@10.20.29.2_pbx-1
Max-Forwards: 69
P-Asserted-Identity: <sip:4311049@invite-emergency.scenarios.test>
Content-Type: application/sdp
Content-Length: 176
Contact: <sip:ngcp-lb@192.168.1.152:5060;ngcpct=7369703a3132372e302e302e313a35303830>
v=0
o=user1 53655765 2353687637 IN IP4 192.168.1.152
s=-
c=IN IP4 192.168.1.152
t=0 0
m=audio 30626 RTP/AVP 8
a=rtpmap:8 PCMA/8000
a=sendrecv
a=rtcp:30627
a=ptime:50
----------------------------------------------- 2021-07-20 11:00:31.616530
UDP message sent (570 bytes):
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP 192.168.1.152;branch=z9hG4bK2aa1.df56c4416da0d978f31f916b91547dd3.0, SIP/2.0/UDP 127.0.0.1:5062;rport=5062;branch=z9hG4bK2aa1.5b8b530dce96fb797ee82335b2ab3b4f.0, SIP/2.0/UDP 127.0.0.1:5080;received=127.0.0.1;branch=z9hG4bKQ7TPOaI8;rport=5080
From: <sip:4311049@invite-emergency.scenarios.test>;tag=53E70CC1-60F690AF0008EAB4-BA7EE700
To: <sip:E1112@172.30.1.2>;tag=179047SIPpTag011
Call-ID: NGCP%invite_emergency%///1-179067@10.20.29.2_pbx-1
CSeq: 2935 INVITE
Contact: <sip:172.30.1.2:52602;transport=UDP>
Content-Length: 0
----------------------------------------------- 2021-07-20 11:00:32.123381
UDP message sent (1003 bytes):
SIP/2.0 200 OK
Via: SIP/2.0/UDP 192.168.1.152;branch=z9hG4bK2aa1.df56c4416da0d978f31f916b91547dd3.0, SIP/2.0/UDP 127.0.0.1:5062;rport=5062;branch=z9hG4bK2aa1.5b8b530dce96fb797ee82335b2ab3b4f.0, SIP/2.0/UDP 127.0.0.1:5080;received=127.0.0.1;branch=z9hG4bKQ7TPOaI8;rport=5080
From: <sip:4311049@invite-emergency.scenarios.test>;tag=53E70CC1-60F690AF0008EAB4-BA7EE700
To: <sip:E1112@172.30.1.2>;tag=179047SIPpTag011
Call-ID: NGCP%invite_emergency%///1-179067@10.20.29.2_pbx-1
CSeq: 2935 INVITE
Record-Route: <sip:192.168.1.152;r2=on;lr=on;ftag=53E70CC1-60F690AF0008EAB4-BA7EE700;ngcplb=yes>, <sip:127.0.0.1;r2=on;lr=on;ftag=53E70CC1-60F690AF0008EAB4-BA7EE700;ngcplb=yes>, <sip:127.0.0.1:5062;lr=on;ftag=53E70CC1-60F690AF0008EAB4-BA7EE700;did=431.e771>
Contact: <sip:172.30.1.2:52602;transport=UDP>
Content-Type: application/sdp
Content-Length: 144
v=0
o=user1 53655765 2353687637 IN IP4 172.30.1.2
s=-
c=IN IP4 172.30.1.2
t=0 0
m=audio 46003 RTP/AVP 8
a=rtpmap:8 PCMA/8000
a=ptime:50
----------------------------------------------- 2021-07-20 11:00:32.341996
UDP message received [936] bytes :
ACK sip:172.30.1.2:52602;transport=UDP SIP/2.0
Record-Route: <sip:192.168.1.152;r2=on;lr=on;ftag=53E70CC1-60F690AF0008EAB4-BA7EE700;ngcplb=yes>
Record-Route: <sip:127.0.0.1;r2=on;lr=on;ftag=53E70CC1-60F690AF0008EAB4-BA7EE700;ngcplb=yes>
Record-Route: <sip:127.0.0.1:5062;lr=on;ftag=53E70CC1-60F690AF0008EAB4-BA7EE700>
Via: SIP/2.0/UDP 192.168.1.152;branch=z9hG4bK2aa1.8ac59f2766830c4e00c1ce7aa2635028.0
Via: SIP/2.0/UDP 127.0.0.1:5062;rport=5062;branch=z9hG4bK2aa1.a4232a23e01af25b4f87b4ef59883bf8.0
Via: SIP/2.0/UDP 127.0.0.1:5080;received=127.0.0.1;branch=z9hG4bK75Zf4a1J;rport=5080
From: <sip:4311049@invite-emergency.scenarios.test>;tag=53E70CC1-60F690AF0008EAB4-BA7EE700
To: <sip:E1112@172.30.1.2>;tag=179047SIPpTag011
CSeq: 2935 ACK
Call-ID: NGCP%invite_emergency%///1-179067@10.20.29.2_pbx-1
Max-Forwards: 68
Content-Length: 0
Contact: <sip:ngcp-lb@192.168.1.152:5060;ngcpct=7369703a3132372e302e302e313a35303830>
----------------------------------------------- 2021-07-20 11:00:33.817566
UDP message received [917] bytes :
BYE sip:172.30.1.2:52602;transport=UDP SIP/2.0
Record-Route: <sip:192.168.1.152;r2=on;lr=on;ftag=53E70CC1-60F690AF0008EAB4-BA7EE700;ngcplb=yes>
Record-Route: <sip:127.0.0.1;r2=on;lr=on;ftag=53E70CC1-60F690AF0008EAB4-BA7EE700;ngcplb=yes>
Record-Route: <sip:127.0.0.1:5062;lr=on;ftag=53E70CC1-60F690AF0008EAB4-BA7EE700>
Via: SIP/2.0/UDP 192.168.1.152;branch=z9hG4bKf9a1.d303694b06767ae9e89c3dae003bc76f.0
Via: SIP/2.0/UDP 127.0.0.1:5062;rport=5062;branch=z9hG4bKf9a1.9be24d40c1a4832133ba38f9a88e9712.0
Via: SIP/2.0/UDP 127.0.0.1:5080;received=127.0.0.1;branch=z9hG4bKq45F.agi;rport=5080
From: <sip:4311049@invite-emergency.scenarios.test>;tag=53E70CC1-60F690AF0008EAB4-BA7EE700
To: <sip:E1112@172.30.1.2>;tag=179047SIPpTag011
CSeq: 2936 BYE
Call-ID: NGCP%invite_emergency%///1-179067@10.20.29.2_pbx-1
Max-Forwards: 68
P-Asserted-Identity: <sip:4311049@invite-emergency.scenarios.test>
Content-Length: 0
----------------------------------------------- 2021-07-20 11:00:33.817989
UDP message sent (566 bytes):
SIP/2.0 200 OK
Via: SIP/2.0/UDP 192.168.1.152;branch=z9hG4bKf9a1.d303694b06767ae9e89c3dae003bc76f.0, SIP/2.0/UDP 127.0.0.1:5062;rport=5062;branch=z9hG4bKf9a1.9be24d40c1a4832133ba38f9a88e9712.0, SIP/2.0/UDP 127.0.0.1:5080;received=127.0.0.1;branch=z9hG4bKq45F.agi;rport=5080
From: <sip:4311049@invite-emergency.scenarios.test>;tag=53E70CC1-60F690AF0008EAB4-BA7EE700
To: <sip:E1112@172.30.1.2>;tag=179047SIPpTag011
Call-ID: NGCP%invite_emergency%///1-179067@10.20.29.2_pbx-1
CSeq: 2936 BYE
Contact: <sip:172.30.1.2:52602;transport=UDP>
Content-Length: 0

@ -0,0 +1,40 @@
messages:
- - 'INVITE sip:E1112@[% scenarios.2.responders.0.ip %]:[% scenarios.2.responders.0.port %];transport=udp SIP/2.0'
- 'Record-Route: <sip:[% server_ip %];r2=on;lr=on;ftag=[^;]+;ngcplb=yes>'
- 'Record-Route: <sip:127.0.0.1;r2=on;lr=on;ftag=[^;]+;ngcplb=yes>'
- 'Record-Route: <sip:127.0.0.1:5062;lr=on;ftag=[^;]+;did=[^;]+>'
- 'From: <sip:[% invite_callforward_scenarios_test.testuser1002.phone_number %]@invite-emergency.scenarios.test>;tag=[\w-]+'
- 'To: <sip:E1112@[% scenarios.2.responders.0.ip %]>'
- 'CSeq: \d+ INVITE'
- 'P-Asserted-Identity: <sip:[% invite_callforward_scenarios_test.testuser1002.phone_number %]@invite-emergency.scenarios.test>'
- 'Content-Type: application/sdp'
- 'Content-Length: \d+'
- 'Contact: <sip:ngcp-lb@[% server_ip %]:5060;ngcpct=[^;]+>'
- 'v=0'
- 'o=user1 \d+ \d+ IN IP4 [% server_ip %]'
- 's=-'
- 'c=IN IP4 [% server_ip %]'
- 't=0 0'
- 'm=audio \d+ RTP/AVP 8'
- 'a=rtpmap:8 PCMA/8000'
- 'a=sendrecv'
- 'a=rtcp:\d+'
- 'a=ptime:50'
- - 'ACK sip:[% scenarios.2.responders.0.ip %]:[% scenarios.2.responders.0.port %];transport=UDP SIP/2.0'
- 'Record-Route: <sip:[% server_ip %];r2=on;lr=on;ftag=[^;]+;ngcplb=yes>'
- 'Record-Route: <sip:127.0.0.1;r2=on;lr=on;ftag=[^;]+;ngcplb=yes>'
- 'Record-Route: <sip:127.0.0.1:5062;lr=on;ftag=[^;]+>'
- 'From: <sip:[% invite_callforward_scenarios_test.testuser1002.phone_number %]@invite-emergency.scenarios.test>;tag=[\w-]+'
- 'To: <sip:E1112@[% scenarios.2.responders.0.ip %]>;tag=[\w-]+'
- 'CSeq: \d+ ACK'
- 'Content-Length: 0'
- 'Contact: <sip:ngcp-lb@[% server_ip %]:5060;ngcpct=[^;]+>'
- - 'BYE sip:[% scenarios.2.responders.0.ip %]:[% scenarios.2.responders.0.port %];transport=UDP SIP/2.0'
- 'Record-Route: <sip:[% server_ip %];r2=on;lr=on;ftag=[^;]+;ngcplb=yes>'
- 'Record-Route: <sip:127.0.0.1;r2=on;lr=on;ftag=[^;]+;ngcplb=yes>'
- 'Record-Route: <sip:127.0.0.1:5062;lr=on;ftag=[^;]+>'
- 'From: <sip:[% invite_callforward_scenarios_test.testuser1002.phone_number %]@invite-emergency.scenarios.test>;tag=[\w-]+'
- 'To: <sip:E1112@[% scenarios.2.responders.0.ip %]>;tag=[\w-]+'
- 'CSeq: \d+ BYE'
- 'P-Asserted-Identity: <sip:[% invite_callforward_scenarios_test.testuser1002.phone_number %]@invite-emergency.scenarios.test>'
- 'Content-Length: 0'

@ -209,8 +209,7 @@ def test_invite_redirect_tel_uri_resp(generate_test_tt2_file, caplog):
def test_ok_incoming_hih(generate_test_tt2_file, caplog): def test_ok_incoming_hih(generate_test_tt2_file, caplog):
caplog.set_level(logging.DEBUG) caplog.set_level(logging.DEBUG)
res = generate_test_tt2_file( res = generate_test_tt2_file(
IDS_FILE.format("incoming_hih"), IDS_FILE.format("incoming_hih"), MSG_FILE.format("incoming_hih", "00")
MSG_FILE.format("incoming_hih", "00"),
) )
assert check_filecontent( assert check_filecontent(
@ -227,8 +226,7 @@ def test_incoming_hih_resp(generate_test_tt2_file, caplog):
) )
assert check_filecontent( assert check_filecontent(
TT2_FILE.format("incoming_hih", "_responder01"), TT2_FILE.format("incoming_hih", "_responder01"), res.out_file
res.out_file,
) )
assert res.returncode == 0 assert res.returncode == 0
@ -236,8 +234,7 @@ def test_incoming_hih_resp(generate_test_tt2_file, caplog):
def test_mix(generate_test_tt2_file, caplog): def test_mix(generate_test_tt2_file, caplog):
caplog.set_level(logging.DEBUG) caplog.set_level(logging.DEBUG)
res = generate_test_tt2_file( res = generate_test_tt2_file(
IDS_FILE.format("mix"), IDS_FILE.format("mix"), MSG_FILE.format("mix", "00")
MSG_FILE.format("mix", "00"),
) )
assert check_filecontent(TT2_FILE.format("mix", "00"), res.out_file) assert check_filecontent(TT2_FILE.format("mix", "00"), res.out_file)
@ -247,9 +244,20 @@ def test_mix(generate_test_tt2_file, caplog):
def test_mix_alias(generate_test_tt2_file, caplog): def test_mix_alias(generate_test_tt2_file, caplog):
caplog.set_level(logging.DEBUG) caplog.set_level(logging.DEBUG)
res = generate_test_tt2_file( res = generate_test_tt2_file(
IDS_FILE.format("mix"), IDS_FILE.format("mix"), MSG_FILE.format("mix", "01")
MSG_FILE.format("mix", "01"),
) )
assert check_filecontent(TT2_FILE.format("mix", "01"), res.out_file) assert check_filecontent(TT2_FILE.format("mix", "01"), res.out_file)
assert res.returncode == 0 assert res.returncode == 0
def test_mix_resp(generate_test_tt2_file, caplog):
caplog.set_level(logging.DEBUG)
res = generate_test_tt2_file(
IDS_FILE.format("mix"), MSG_FILE.format("mix", "_responder00")
)
assert check_filecontent(
TT2_FILE.format("mix", "_responder00"), res.out_file
)
assert res.returncode == 0

Loading…
Cancel
Save