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
* 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
* 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
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
Add 'retrans: true' to the test.yml file and name
it '_test_retransmission.yml.tt2' instead of '_test.yml.tt2'
Change-Id: I2e83f773ed8a1ba537aedb61410db79fecbecf16
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
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
* 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
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
* generate a link for every scenario on the fly if doesn't exist
* BASE_DIR has to be an absolute path
Change-Id: Ib50c641f127966b672646b8579d3a8b92bb76b55
* fix sipp transport arguments
* change port range of media from 6003 to 46003 for responders
* change port range of media from 7002 to 45003 for senders
* change port from 50602 to 51602 for senders
Change-Id: Ia76daeb9098e05d67c6fb95ebe945cdb59c8a493
* support dynamic checks with defined ids
* create_subscribers.pl generates scenario/scenario_ids.yml
* create_peers.pl will add peers info to it
* generate_test.pl will produce the final test_0XXX.tt2 with the
proper values
* we put the scenario_ids.yml in log if debug is needed
Example of scenarios_ids.yml:
---
customer_test:
id: 7
peer_00_host0:
id: 95
spce_test:
testuser1003:
uuid: 15dd6b9a-1b83-4d74-b630-be05d3fada77
Example of checks:
- return|ROUTE_SET_CALLEE_DIALOG:
$avp(lua_dlg_profile): [
"totalaccount:[% customer_test.id %]",
"totaluser:[% spce_test.testuser1003.uuid %]",
"total", "account:[% customer_test.id %]",
"user:[% spce_test.testuser1003.uuid %]"
]
Change-Id: I3d81bcae0865d9861b4f721618f2bc21f2db14b8