TT#81700 bin/generate_test_tt2.py: improve rules

* improve ip/port detection
* improve numbers detection

Change-Id: I66bf53dbff77cd6c7a23743e5883246486bfe533
mr11.2
Victor Seva 3 years ago
parent 584a338725
commit abcd66d45d

@ -128,6 +128,18 @@ class Generator:
'"[% {}.{} %]"'.format(tt, field),
)
)
rules.append(
(
r"primary={}([^0-9]+|$)".format(subs[field]),
r"primary=[% {}.{} %]\1".format(tt, field),
)
)
rules.append(
(
r"alias={}([^0-9]+|$)".format(subs[field]),
r"alias=[% {}.{} %]\1".format(tt, field),
)
)
def sdp_rule(val, tt):
rules.append(
@ -190,6 +202,12 @@ class Generator:
r"m=audio [% {}.mport %] \1".format(tt),
)
)
rules.append(
(
r";ip={};port={}(;?)".format(scen["ip"], scen["port"]),
r";ip=[% {0}.ip %];port=[% {0}.port %]\1".format(tt),
)
)
# server_ip rules
rules.append(
@ -309,6 +327,8 @@ class Generator:
res = []
for line in msg:
line = line.replace("\n", "")
if len(line) == 0:
continue
# escape special characters
line = self.escape_line(line)
ok, hdr = self.filter_hdr(line)
@ -346,7 +366,7 @@ def sipp_process(args):
def get_msgs(info: list):
""" transform JSON sip msg in list of lines """
"""transform JSON sip msg in list of lines"""
res = []
for msg in info:
res.append(msg.split("\r\n"))

File diff suppressed because it is too large Load Diff

@ -0,0 +1,63 @@
flow:
- start|DEFAULT_ROUTE:
- start|ROUTE_ENTRY:
- return|ROUTE_ENTRY:
- start|ROUTE_NET_INFO:
- return|ROUTE_NET_INFO:
- start|ROUTE_CHECK_TEL_URI:
- return|ROUTE_CHECK_TEL_URI:
- start|ROUTE_PRX_REQUEST:
- start|ROUTE_INITVARS:
- return|ROUTE_INITVARS:
- start|ROUTE_STOP_RTPPROXY:
- start|ROUTE_RESTORE_CLUSTERSET:
- return|ROUTE_RESTORE_CLUSTERSET:
- return|ROUTE_STOP_RTPPROXY:
- start|ROUTE_LOCAL:
- start|ROUTE_EXIT:
- start|ROUTE_RUNTIME:
- return|ROUTE_RUNTIME:
- exit|ROUTE_EXIT:
sip_in:
- 'CANCEL sip:[% scenarios.2.responders.0.username %]@[% scenarios.2.responders.0.ip %]:[% scenarios.2.responders.0.port %] SIP/2.0'
- 'To: <sip:[% scenarios.0.username %]@incoming-shared-line.scenarios-pbx.test>'
- 'From: <sip:[% incoming_shared_line_scenarios_pbx_test.testuser1003.pbx_phone_number %]@incoming-shared-line.scenarios-pbx.test>;tag=[\w-]+'
- 'CSeq: \d+ CANCEL'
- 'Contact: <sip:127.0.0.1:5080;transport=udp>'
- 'P-LB-Uptime: \d+'
- 'P-Asserted-Identity: <sip:[% incoming_shared_line_scenarios_pbx_test.testuser1003.pbx_phone_number %]@incoming-shared-line.scenarios-pbx.test>'
- 'P-Caller-UUID: [% incoming_shared_line_scenarios_pbx_test.testuser1003.uuid %]'
- 'P-Callee-UUID: [% incoming_shared_line_scenarios_pbx_test.testuser1002.uuid %]'
- 'P-NGCP-Rtpengine-Bleg: 1'
- 'P-NGCP-Caller-Info: <sip:[% scenarios.2.username %]@incoming-shared-line.scenarios-pbx.test>;ip=[% scenarios.2.ip %];port=[% scenarios.2.port %];primary=[% incoming_shared_line_scenarios_pbx_test.testuser1003.pbx_phone_number %]'
- 'P-NGCP-Callee-Info: <sip:[% incoming_shared_line_scenarios_pbx_test.testuser1002.phone_number %]@incoming-shared-line.scenarios-pbx.test>;ip=[% scenarios.2.responders.0.ip %];port=[% scenarios.2.responders.0.port %];primary=[% incoming_shared_line_scenarios_pbx_test.testuser1002.phone_number %]'
- 'P-NGCP-Presence-Caller: sip:[% scenarios.2.username %]@incoming-shared-line.scenarios-pbx.test'
- 'P-NGCP-Presence-Callee: sip:[% scenarios.0.username %]@incoming-shared-line.scenarios-pbx.test'
- 'P-D-Uri: sip:lb@127.0.0.1;lr;received=sip:[% scenarios.2.responders.0.ip %]:[% scenarios.2.responders.0.port %];socket=sip:[% server_ip %]:5060'
- 'Reason: SIP;cause=200;text="Call completed elsewhere"'
- 'Content-Length: 0'
sip_out:
- [
'SIP/2.0 100 Trying',
'To: <sip:[% scenarios.0.username %]@incoming-shared-line.scenarios-pbx.test>',
'From: <sip:[% incoming_shared_line_scenarios_pbx_test.testuser1003.pbx_phone_number %]@incoming-shared-line.scenarios-pbx.test>;tag=[\w-]+',
'CSeq: \d+ CANCEL',
'Server: Sipwise NGCP Proxy',
'Content-Length: 0',
]
- [
'CANCEL sip:[% scenarios.2.responders.0.username %]@[% scenarios.2.responders.0.ip %]:[% scenarios.2.responders.0.port %] SIP/2.0',
'From: <sip:[% incoming_shared_line_scenarios_pbx_test.testuser1003.pbx_phone_number %]@incoming-shared-line.scenarios-pbx.test>;tag=[\w-]+',
'To: <sip:[% scenarios.0.username %]@incoming-shared-line.scenarios-pbx.test>',
'CSeq: \d+ CANCEL',
'Content-Length: 0',
'Reason: SIP;cause=200;text="Call completed elsewhere"',
]
- [
'SIP/2.0 200 canceling',
'To: <sip:[% scenarios.0.username %]@incoming-shared-line.scenarios-pbx.test>;tag=[\w-]+',
'From: <sip:[% incoming_shared_line_scenarios_pbx_test.testuser1003.pbx_phone_number %]@incoming-shared-line.scenarios-pbx.test>;tag=[\w-]+',
'CSeq: \d+ CANCEL',
'Server: Sipwise NGCP Proxy',
'Content-Length: 0',
]

@ -24,8 +24,8 @@ sip_in:
- 'P-Caller-UUID: [% invite_alias_scenarios_pbx_test.testuser1002.uuid %]'
- 'P-Callee-UUID: [% invite_alias_scenarios_pbx_test.testuser1003.uuid %]'
- 'P-NGCP-Rtpengine-Bleg: 1'
- 'P-NGCP-Caller-Info: <sip:[% scenarios.0.username %]@invite-alias.scenarios-pbx.test>;ip=10.20.29.2;port=51602;primary=4311000'
- 'P-NGCP-Callee-Info: <sip:[% invite_alias_scenarios_pbx_test.testuser1003.alias_numbers.0.phone_number %]@invite-alias.scenarios-pbx.test>;ip=10.20.29.2;port=51603;primary=43110001003;alias=4311003'
- 'P-NGCP-Caller-Info: <sip:[% scenarios.0.username %]@invite-alias.scenarios-pbx.test>;ip=[% scenarios.0.ip %];port=[% scenarios.0.port %];primary=[% invite_alias_scenarios_pbx_test.testuser1002.phone_number %]'
- 'P-NGCP-Callee-Info: <sip:[% invite_alias_scenarios_pbx_test.testuser1003.alias_numbers.0.phone_number %]@invite-alias.scenarios-pbx.test>;ip=[% scenarios.0.responders.0.ip %];port=[% scenarios.0.responders.0.port %];primary=[% invite_alias_scenarios_pbx_test.testuser1003.pbx_phone_number %];alias=[% invite_alias_scenarios_pbx_test.testuser1003.alias_numbers.0.phone_number %]'
- 'P-NGCP-Presence-Caller: sip:[% scenarios.0.username %]@invite-alias.scenarios-pbx.test'
- 'P-NGCP-Presence-Callee: sip:[% scenarios.0.responders.0.username %]@invite-alias.scenarios-pbx.test'
- 'P-D-Uri: sip:lb@127.0.0.1;lr;received=sip:[% scenarios.0.responders.0.ip %]:[% scenarios.0.responders.0.port %];socket=sip:[% server_ip %]:5060'
@ -63,8 +63,8 @@ sip_out:
'P-Caller-UUID: [% invite_alias_scenarios_pbx_test.testuser1002.uuid %]',
'P-Callee-UUID: [% invite_alias_scenarios_pbx_test.testuser1003.uuid %]',
'P-NGCP-Rtpengine-Bleg: 1',
'P-NGCP-Caller-Info: <sip:[% scenarios.0.username %]@invite-alias.scenarios-pbx.test>;ip=10.20.29.2;port=51602;primary=4311000',
'P-NGCP-Callee-Info: <sip:[% invite_alias_scenarios_pbx_test.testuser1003.alias_numbers.0.phone_number %]@invite-alias.scenarios-pbx.test>;ip=10.20.29.2;port=51603;primary=43110001003;alias=4311003',
'P-NGCP-Caller-Info: <sip:[% scenarios.0.username %]@invite-alias.scenarios-pbx.test>;ip=[% scenarios.0.ip %];port=[% scenarios.0.port %];primary=[% invite_alias_scenarios_pbx_test.testuser1002.phone_number %]',
'P-NGCP-Callee-Info: <sip:[% invite_alias_scenarios_pbx_test.testuser1003.alias_numbers.0.phone_number %]@invite-alias.scenarios-pbx.test>;ip=[% scenarios.0.responders.0.ip %];port=[% scenarios.0.responders.0.port %];primary=[% invite_alias_scenarios_pbx_test.testuser1003.pbx_phone_number %];alias=[% invite_alias_scenarios_pbx_test.testuser1003.alias_numbers.0.phone_number %]',
'P-D-Uri: sip:lb@127.0.0.1;lr;received=sip:[% scenarios.0.responders.0.ip %]:[% scenarios.0.responders.0.port %];socket=sip:[% server_ip %]:5060',
'Content-Type: application/sdp',
'Content-Length: \d+',

@ -50,3 +50,17 @@ def test_invite_alias(generate_test_tt2_file, caplog):
assert check_filecontent(TT2_FILE.format(scenario, id), res.out_file)
assert res.returncode == 0
def test_primary_numbers(generate_test_tt2_file, caplog):
caplog.set_level(logging.DEBUG)
scenario = "incoming_shared_line"
for id in ["0023"]:
res = generate_test_tt2_file(
"--type=cfgt",
IDS_FILE.format(scenario),
MSG_FILE.format(scenario, id),
)
assert check_filecontent(TT2_FILE.format(scenario, id), res.out_file)
assert res.returncode == 0

Loading…
Cancel
Save