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
Additionally increased the timeout of the sipp simulations.
This is necessary to avoid failures of the tests in case kamailio
takes a bit more time to preocess the incoming SIP message.
Change-Id: I60856430f28b081d74e484b2346894dd13a38d11
Otherwise kamailio-config-test reset file perms from 0600 to 0755.
From https://perldoc.perl.org/File/Copy.html :
> You may use the syntax use File::Copy "cp" to
> get at the cp alias for this function. The syntax is exactly the same.
> The behavior is nearly the same as well: as of version 2.15,
> cp will preserve the source file's permission bits like the
> shell utility cp(1) would do, while copy uses the default
> permissions for the target file
> (which may depend on the process' umask, file ownership, inherited ACLs, etc.).
> If an error occurs in setting permissions, cp will return 0,
> regardless of whether the file was successfully copied.
Change-Id: I7b227cb554699d68f809d38c82344d8f1afeed99
If retransmission skip is enabled (-r option) an additional check
with the previous json file (previous SIP message) is done in case
of tap issues. This is useful when wrong packet ordering or
timing issues occur.
Additionally:
* improved logs lines in oreder to be more readable.
* fixed inconsistencies in the coding style.
Change-Id: I20a026fab33e2a56f23bdccef8ee3aa3e27de732
* Added 5 seconds of sleep time at the end of execution in order to allow
tcpdump to capture all the packages and kamailio to write all json files
* All json files are collected at the end of all the scenarios
* Only one big tcpdump trace is takes to collect all the scenarios
Change-Id: Id91835a959785080ecbbaf29a3e4c97bf752934e
Fixes:
| Unescaped left brace in regex is illegal here in regex; marked by <-- HERE in m/.+msg out:{ <-- HERE (.+)}$/ at bin/ulog_parser.pl line 166.
| Unescaped left brace in regex is illegal here in regex; marked by <-- HERE in m/.+msg out:{ <-- HERE (.+)}$/ at bin/ulog_parser.pl line 187.
This was deprecated already in older perl versions:
| Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/.+msg out:{ <-- HERE (.+)}$/ at bin/ulog_parser.pl line 187.
Starting with perl 5.26 it raises an error
message instead of just a warning message though.
Change-Id: Ic7af73d088ce580b59f6a5e5fc578b723ee7410c
* Original option '-c' in run_tests.sh has been modified
in '-C'
* Add new option '-c' in run_tests.sh to execute a query on MySQL
after each test to extract the generated CDRs.
* Add new option '-c' in get_results.sh to compare the extracted
CDRs with the referece provided in the scenario (cdr_test.yml.tt2).
* Modified option 'mediator.interval' from 10 to 1 during the test
execution in order to speedup the cdrs generation.
* Updated README file with the latest changes.
* Added basic cdr_test for all the scenarios.
Change-Id: Ifffd686003fa5e3a1ac4ba76c502011d7fdb21bb
A new scenario called invite_trusted_anonymous has been added to verify
the new improvement on the allow_trusted kamailio function that should
check the PAI header in case the From is anonymous.
Additionally:
* Introduced a new API interface to allow configuration of trusted
sources. To do that, just add a file named 'trusted.yml' in the
scenario folder.
* Improved the callforward API interface to allow more sophisticated
callforward configuration. Now it is possible to configure all the
types of CF as well sources, bnumbers and timeset.
* Removed from the output the noisy parenthesis '{}' result of
ngcp-kamctl commands
Change-Id: I5ed54d063bcda2d5df7004b9cad671644e021def
* Added start/return ROUTE_EXIT and start/return ROUTE_ENTRY
* Updated caller/callee xavp content validation
* Updated ngcp-kamctl calls to the new rpc format
Change-Id: I166a638a7a1f0ef5102db666180eb83e8b47d6e4
Test script tries to configure the paramenter to off before the test
starts. Since the parameter was moved in TT#27466, the parameter was
actualy not changed.
Change-Id: Ic5affbecc3304d8732c9edfc6243d951a8d7174b
Added option "-r" to run_tests and get_results script to activate
retransmission checks. If option is activated:
* at the end of the each test, json files will be checked and,
if a retransmission is found, the files will be renamed and
renumbered. This will help to detect most of the retransmission cases.
* In case a retransmission is not detected in the previous step,
if a scenario fails, it will be compared with the next json file.
This is an additional help to detect retransmissions.
* In case the transmission is detected and properly healed, no error
code is returned. Otherwise the script will exit 1 as before.
Change-Id: I5eaa7bdb920be869099440c295e0bfd75c2bf107
The script move the kamailio json files from /tmp/cfgtest folder
to the log folder as stated in the README file. This is executed
at the end of each single test.
To be sure that the /tmp/cfgtest is in place, it creates the folder
before start the test and it deletes the folder afterwards.
Change-Id: I54426b4415898165c1c2ba8154d0761a869c85d4
This reverts commit 2d5434e723.
There are cases in which ngcp-panel is restarted and cases in which it
is not restarted, so this change is not valid.
Change-Id: If322af4ef0c54fb7ba437c42f846b794a55554c5
These functions do internal error checks and will die on their own.
They return undef whenever the YAML file is empty, so we should not
abort on those.
Change-Id: Ifd61b98d3a95ee9b15ff240fbd5db0c1029c98e3
Fixes:
| given is experimental at bin/ulog_parser.pl line 151.
| when is experimental at bin/ulog_parser.pl line 153.
| when is experimental at bin/ulog_parser.pl line 154.
| push on reference is experimental at bin/ulog_parser.pl line 175.
| push on reference is experimental at bin/ulog_parser.pl line 215.
Change-Id: I2ac8dfa23c37e375e1d85f01dba666c5329ec3b4
This module is more compliant and it is faster than the pure perl
implementation. The latter is also deprecated in favor of the former
(see man YAML for more details).
Change-Id: I15240ac294476c0d9cc30e36e622adc7e07db136
* generate a link for every scenario on the fly if doesn't exist
* BASE_DIR has to be an absolute path
Change-Id: Ib50c641f127966b672646b8579d3a8b92bb76b55
* migrate to Docker
* tests/test_check.py: use junitxml
* bin/generate_tests.sh: support DEST_DIR
will use DEST_DIR as base dir destination
* rename scenarios_disabled -> disabled
* fix \t at XXXX_test.yml.tt2 templates
Change-Id: I845588ee4692f157f370a000abab75a05e701839