[asterisk-dev] [Code Review] 3881: Testsuite: RLS tests - Lists containing lists tests for presence

Jonathan Rose reviewboard at asterisk.org
Fri Aug 1 17:49:40 CDT 2014


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

(Updated Aug. 1, 2014, 5:49 p.m.)


Review request for Asterisk Developers and Mark Michelson.


Changes
-------

Use reactor.callLater to queue up device state changes.  Also I accidentally named the test classes for the full state tests for this set 'partial_state.py' in the previous version.


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


Repository: testsuite


Description
-------

Similar to the presence tests in https://reviewboard.asterisk.org/r/3873/

The main set of tests follows operations against the following list setup:

subscription to pres_list
pres_list: carol (presence), pres_sublist (list)
pres_sublist: alice (presence), bob (presence)

This setup is tested against the following:

subscription_establishment: Uses sipp to check that a subscription can successfully be established (only evaluates SIP traffic to and from Asterisk, not concerned with NOTIFY contents)

initial_notify: Verifies that a NOTIFY is received after subscribing and that it contains all of the expected elements

full_state_alice: After receiving the initial notify, Alice's state is changed. The following NOTIFY is checked to confirm that it contains full state for all items in pres_list (which includes state information for pres_sublist items as well)

full_state_carol: As with full_state_alice, only Carol's state is changed instead.

partial_state_alice: As with full_state_alice, only since full state information isn't set for the lists, we only want changed entries. In this case, the notify should only include pres_sublist and pres_sublist should only include alice.

partial_state_carol: As with full_state_carol, only since full state information isn't set for the lists, we only want changed entries. In this case, the notify should only include carol and not the pres_sublist.

resubscribe_full_state: After the initial notify, The sipp client resubscribes to the list. We expect to receive full state information even though the individual lists are set to give partial state information on updates.

termation_full_state: After the initial notify, the sipp client terminates the subscription. We expect to receive full state information even though the individual lists are set to give partial state information on updates and also we expect the state of each list entry to be terminated since we are unsubscribing.


In addition, I've added one additional test here which tests for an additional tier of nested lists. Right now this test crashes the rls-rlmi branch, but this is more due to the sheer size of the message than because it messes up when creating the actual list:

pres_list: carol (presence), pres_sublist (list)
pres_sublist: pres_sublist_sublist (list), alice (presence), bob (presence)
pres_sublist_sublist: dave (presence)

listception_initial_notify: This is the same as the initial notify test, only it tests for a list that goes three levels deep instead of two.


Diffs (updated)
-----

  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/tests.yaml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/termination_full_state/test-config.yaml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/termination_full_state/termination.py PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/termination_full_state/sipp/termination.xml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/termination_full_state/configs/ast1/pjsip.conf PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/termination_full_state/configs/ast1/extensions.conf PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/subscription_establishment/test-config.yaml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/subscription_establishment/sipp/list_subscribe.xml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/subscription_establishment/configs/ast1/pjsip.conf PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/subscription_establishment/configs/ast1/extensions.conf PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/resubscribe_full_state/test-config.yaml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/resubscribe_full_state/sipp/resubscribe.xml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/resubscribe_full_state/resubscribe.py PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/resubscribe_full_state/configs/ast1/pjsip.conf PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/resubscribe_full_state/configs/ast1/extensions.conf PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/partial_state_carol/test-config.yaml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/partial_state_carol/sipp/list_subscribe.xml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/partial_state_carol/partial_state.py PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/partial_state_carol/configs/ast1/pjsip.conf PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/partial_state_carol/configs/ast1/extensions.conf PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/partial_state_alice/test-config.yaml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/partial_state_alice/sipp/list_subscribe.xml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/partial_state_alice/partial_state.py PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/partial_state_alice/configs/ast1/pjsip.conf PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/partial_state_alice/configs/ast1/extensions.conf PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/listception_initial_notify/test-config.yaml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/listception_initial_notify/sipp/list_subscribe.xml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/listception_initial_notify/notify.py PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/listception_initial_notify/configs/ast1/pjsip.conf PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/listception_initial_notify/configs/ast1/extensions.conf PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/initial_notify/test-config.yaml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/initial_notify/sipp/list_subscribe.xml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/initial_notify/notify.py PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/initial_notify/configs/ast1/pjsip.conf PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/initial_notify/configs/ast1/extensions.conf PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/full_state_carol/test-config.yaml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/full_state_carol/sipp/list_subscribe.xml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/full_state_carol/full_state.py PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/full_state_carol/configs/ast1/pjsip.conf PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/full_state_carol/configs/ast1/extensions.conf PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/full_state_alice/test-config.yaml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/full_state_alice/sipp/list_subscribe.xml PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/full_state_alice/full_state.py PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/full_state_alice/configs/ast1/pjsip.conf PRE-CREATION 
  /asterisk/trunk/tests/channels/pjsip/subscriptions/rls/lists_of_lists/nominal/presence/full_state_alice/configs/ast1/extensions.conf PRE-CREATION 

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


Testing
-------

All tests were checked against the rls-rlmi branch to make sure they would run and produce the expected flow of SIP messages.  All tests had their expected RESOURCES lists changed to verify that if they differed from the contents of the NOTIFY in any way that the tests would fail.


Thanks,

Jonathan Rose

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20140801/77707d09/attachment-0001.html>


More information about the asterisk-dev mailing list