* bin/config_debug.pl: use values from config.yml
* bin/network_config.pl: use values from config.yml
* bin/generate_test.pl: provide config.yml at "config" key
* bin/provide_scenario.sh: pass "config" option to generate_test.pl
Change-Id: I4ba62267b372b638f85dde62ecced6bd7d15c142
* prefs and configs need to be templates in order to use dynamic
values stored at scenario_ids.yml
WARNING!!!
Change-Id: I3574c2443844655e50d7f0fb6e10b006366aaa11
* provide_next_network.pl helper to get sipp port and mport used
on that scenario
Entry point to provide the whole group of scenarios with different
port/mport assigned by scenario
Change-Id: Ie3cc83388afe089242830373643e32421db83e51
keep IP/port selections on scenario_ids.yml
* bin/scenario.pl creates scenario_ids.yml with IP/port info too
* bin/create_subscribers.yml reads scenario_ids.yml first now
different IP/port/mport for peers!!
Change-Id: If8f07174bcacbf093bcbb14cd81b876c36c7e404
Using incoming-foreign-dom.scenarios.test as domain produced errors in
our checks
> Argument "" isn't numeric in subtraction (-) at scenarios/incoming_foreign_dom/0003_test.yml.tt2 line 62.
* bin/create_subscribers.pl: replace '-' as '_' to avoid this problem
Change-Id: I0f9e5defbff238f313c19907ec60644a51f7f918
* bin/provide_scenario.sh: point of entry of provisioning
* bin/get_domains.pl: script helper to get domains defined at
scenario.yml
Change-Id: Ib1440f074b6f588c8a9dfac5dcf29d6b7459fb42
* single point of entry to get valid scenarios depending on PROFILE
GROUP and obeying SCENARIOS environment variable
Change-Id: I3dabf2b14c0c68f802287e1355f208ccb14224f6
Since 3.6.0 sipp is throwing a warning that doesn't
change behavior but we detect an error file as failed
sipp execution for responders
So let's clean the known error from error files and
remove the empty ones after
See details at https://github.com/SIPp/sipp/issues/497
* bin/sipp.sh: add -e option to define error file
* bin/check.sh: use -e option with the proper filename
so there's no need to move the files later
Change-Id: I5ce4b73d858d928f4bc9ec89bfe8658fad48b6e6
Script bin/generate_test_tt2.pl is not able to generate proper regexp
from a mixed Accept header field like for example:
Accept: application/pidf+xml

In this case there is no substitution and the final .tt2 file
does not escape the `+' sign causing the following test to fail
even if user agent are sendind the correct header.
Change-Id: I2a1d66d3482a8c87d9bf09bb2665951aa42c4722
* Automatic filenames (trace files, error files, etc..)
are now created in the current working directory instead
of in the directory of the scenario file.
* https://github.com/SIPp/sipp/releases/tag/v3.6.0
Change-Id: I06ad4c7196ea9087f5e04e289f09baf927ed1e01
* add soundfile id to scenarios_ids.yml
* zero Content-Length
* add app.local port fix
* don't try to find subscriber_ids on some headers
like CSeq or Content-Length
Change-Id: Ia10817a025c22c17cdfd93edcc7128e7cdb06029
* introduced at f1c1379f42
* get_subs_info was throwing exception for some cases but it
was hided via eval {}. Use Try::Tiny to manage the exception
and generate needed default values.
* use variable name instead of $_ so it's clear what is what
on loops
Change-Id: Icc6baa00da6ebfa1d88a7e418edb48c8c8536cd1
Now that we are allowing cheking more that one message, be
sure that already OKed messages don't get compared
Change-Id: I152af70b6dca69fe935ca70f8d40acb599cbaff0
* bin/check.py: return different values depending on what section
check fails
reformat using black tool
Change-Id: Ie393766ba5df0951fb9f51c1c780cc5be8673fc7
This reverts commit 4c3826e755.
Reason for revert: Commit is now necessary after fixes done in other packages
Change-Id: Ib41b8b9f333a96cff028869d0a5da77ded6f9008
* expires in Contact
* split logic between specific changes for a header and
common subst for any header, so both can be executed
* don't stop checking for network occurrences on first
match, line can have more than one occurrence
Change-Id: I682f39f93d14fd081241a9ed2674cddb25150248
* check for dirs with a scenario.yml file
* remove some shellcheck warnings:
SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).
Change-Id: I88b48fcc9668c3be26755472d6001f630a341fca
* subst sipp ports for sender/receivers defined at scenarios.yml file
* fix some common substitutions
* subst ids from scenarios_ids.yml
* check.py fix some style issues
Change-Id: I245c76ff540851fa7c1248995476411f092b857c
* fix delete perm registration: subscriber needs to exists
move delete before deletion of domain
* bench.sh: obey PROFILE environment variable
* bin/config_debug.pl: set tcp for one of the extra_sockets
Change-Id: I4650058f22ffcac68fa44913e1b03ecf090c2f28
* this will filter common headers
* fix Content-Length substitution
* run_tests.sh: PROFILE environment as default
Change-Id: Ib0f42f3be6a378e8bfd5e32d7982687fc9869e4e
Now we can define different module level of debug per scenario.
So we can have more info without changing the general config.yml
Change-Id: I64e5467eedf2c41827ab8de85835b0b6c09486eb
tool that reads info directly from scenario.yml
* check.sh: clean some shellcheck warnings
* bench.sh: fix group option
Change-Id: If736c42729e8fd32e964a5c9db7e47b289e916c8
* now it will be called *before* scenario is built
* introduced at b006dee9f8
TODO: move this external tool that can read scenario.yml info
directly
Change-Id: Ic85ceb2900ea137c96b7d3354d59439fa72a8a96
- invite_queue
- invite_group_serial
Some other tests has been prepared but not yet completed
- invite_group_parallel
- invite_xfer_blind_caller
- invite_xfer_blind_callee
Change-Id: I77f80495e85ba8691d4dc22c7807b945fac3325e
* remove invite_conference_update media file, this has to be a link
* ngcpcfg apply executed outside /etc/ngcp-config seems to generate
.ngcpcfg_perms file in $pwd so adding a workaround to avoid it
* bench.sh: support selecting the GROUP scenario
* show_flow_diff.pl: improve the diff output adding the values of
the flows not only the names
Change-Id: I40db8433595168ce8d3ef061f77f02a1616ed980
Add 'retrans: true' to the test.yml file and name
it '_test_retransmission.yml.tt2' instead of '_test.yml.tt2'
Change-Id: I2e83f773ed8a1ba537aedb61410db79fecbecf16
* From/To tag
* CSeq number
* WWW-Authenticate nonce
* Server Sipwise major version
* Content-Length >0
Change-Id: Ife7f3f6f791eb6b18b6538c99a9e612d9cb0cfa8
Allow to filter out headers, match is case-insensitive
> ./bin/generate_test_tt2.pl -f Route -f Call-id -f via log/scenarios/invite/0001.json
Change-Id: Ia89792a99c36a375509bf4d8faea3f8950a2be25
* generate the scenario test_tt2 from kamailio cfgt json file
* show_sip to see sip_in and sip_out as SIP trace
Change-Id: I2b9d6872ffbc6775ab766b5fecc9975a69e64bd4
The command
rtpengine-ctl -ip "${rtpengine_ctl_ip}" list interfaces
is used to check the number of rtp ports still open on the system
Change-Id: Id0e48aaf1f354cecf153db8102a5b5635e073287
* We want to be able to execute the tests with more than one
kamailio.proxy.process. So, don't set any value and added
the option to change it
Change-Id: I6fcf1af13b90341e85c784b2570565d52afb11f0
In case of sipp errors bin/check.sh was aborted without moving
the scenario_ids.yml, moving the json files and cleaning the
scenario's data if required.
Change-Id: Ibb1b5c1874476ff2f483488670f8c3953c38c58f
Call cfgt.clean RCP function at the end of the scenario execution
only if the json files were actually moved (SKIP_MOVE_JSON_KAM
not set). Otherwise the result will be to don't have any json
file generated.
Change-Id: I97f2b00516a8975c050f97a7ffecb47b2dceecd3
The option is triggered by run_tests.sh because it is already
taking care of the json file movement at the end of the scenarios
execution.
Change-Id: Ie609237b46c54734dc25f093351c89138a70d8f9
After JSON_KAM was enabled by default in commit 8618aa8 we lost
the possibility to disable it if necessary.
The option -J of bin/check.sh script now do the opposite: it is
used to disable JSON_KAM preference. Due to this change, the -J has
been removed from the script call in get_results.sh
Change-Id: I8ccc9d832ba808c72494dc27526e66ceff802a95
* This allows to run the same scenario without having to restart
kamailio-proxy every time
* set JSON_KAM as default
Change-Id: I0948095e318fa0220c16adfc52e124a9e6c35c67
Added tests:
* scenarios/invite_hm
* scenarios/invite_hm_callforward
* scenarios/invite_hm_peerout
Add a new file descriptors for the tests:
* pro.yml
If the file is present and the PROFILE is CE, then
the test isskipped because not in scope.
Change-Id: I8da41d764ef352d3caf592f31894e0c58399ed07