[asterisk-dev] [Code Review] 4520: Testsuite: stasis: set a channel variable on websocket disconnect error

Ashley Sanders reviewboard at asterisk.org
Sat Mar 28 00:37:21 CDT 2015


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4520/
-----------------------------------------------------------

(Updated March 28, 2015, 12:37 a.m.)


Review request for Asterisk Developers.


Changes
-------

Updated the description to depict the Babs case that was re-added.


Bugs: ASTERISK-24802
    https://issues.asterisk.org/jira/browse/ASTERISK-24802


Repository: testsuite


Description (updated)
-------

When an error occurs while writing to a web socket, the web socket is disconnected and the event is logged. A side-effect of this, however, is that any application on the other side waiting for a response from Stasis is left hanging indefinitely (as there is no mechanism presently available for notifying interested parties about web socket error states in Stasis).

This patch introduces a new channel variable: STASISSTATUS to give outside applications context when errors occur in Stasis that interrupt normal processing.

This test exercises two scenarios to elicit updates to the STASISSTATUS channel variable:
1) The 'Babs' scenario: tests the situation where a channel is originated under normal conditions and then the channel is hungup. For this case, the test verifies that Stasis 
   correctly assigns SUCCESS to STASISSTATUS.
2) The 'Bugs' scenario: tests the situation where a call is originated requesting an app that was never registered in Stasis to verify the 'FAILED' state is correctly applied.
3) The 'Buster' scenario: tests the situation where an app that was registered in Stasis when call A was originated (and while call A is still active) but is no longer 
   registered when call B is originated. Determines if the 'FAILED' state is correctly applied.


 ***Note*** This is a test. It is only a test. The review for the Asterisk source can be found at: https://reviewboard.asterisk.org/r/4519/


Diffs
-----

  ./asterisk/trunk/tests/rest_api/applications/tests.yaml 6547 
  ./asterisk/trunk/tests/rest_api/applications/stasisstatus/test_scenario_factory.py PRE-CREATION 
  ./asterisk/trunk/tests/rest_api/applications/stasisstatus/test_scenario.py PRE-CREATION 
  ./asterisk/trunk/tests/rest_api/applications/stasisstatus/test_case.py PRE-CREATION 
  ./asterisk/trunk/tests/rest_api/applications/stasisstatus/test-config.yaml PRE-CREATION 
  ./asterisk/trunk/tests/rest_api/applications/stasisstatus/run-test PRE-CREATION 
  ./asterisk/trunk/tests/rest_api/applications/stasisstatus/observable_object.py PRE-CREATION 
  ./asterisk/trunk/tests/rest_api/applications/stasisstatus/monitor.py PRE-CREATION 
  ./asterisk/trunk/tests/rest_api/applications/stasisstatus/configs/ast1/sip.conf PRE-CREATION 
  ./asterisk/trunk/tests/rest_api/applications/stasisstatus/configs/ast1/extensions.conf PRE-CREATION 
  ./asterisk/trunk/tests/rest_api/applications/stasisstatus/ari_client.py PRE-CREATION 

Diff: https://reviewboard.asterisk.org/r/4520/diff/


Testing
-------


Thanks,

Ashley Sanders

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20150328/58510485/attachment.html>


More information about the asterisk-dev mailing list