Summary:ASTERISK-21708: Bridge API Enhancements - write a test plan for Queues
Reporter:Matt Jordan (mjordan)Labels:Asterisk12
Date Opened:2013-04-26 12:22:21Date Closed:2013-06-07 09:25:46
Status:Closed/CompleteComponents:Core/Bridging Tests/testsuite
Versions:Frequency of
Description:The bridging framework is coming soon to a Queue near you. We need sufficient tests to verify that {{app_queue}} works as well as it currently does (and, with any luck, a bit better).

The current Queue tests in the test suite are a little scattered. They include:

* Interception macro/gosub testing
* position_priority_maxlen - verifies that people that enter a queue with a priority are put into the expected position (LUA)
* queue_all_paused_no_answer - verifies that if all queue members are paused, the caller times out (CEL/CDR covered)
* queue_baseline - one caller, one member, one queue. (LUA)
* queue_no_answer - verifies that when a caller enters a queue and the member doesn't answer, the caller times out (CEL/CDR)
* queue_one_paused_no_answer - verifies that when a caller enters a queue with two members (one paused, one not answering), the caller times out (CEL/CDR)
* queue_transfer_callee - verifies the F() option
* reload_queue_members - verifies the QueueReload command
* ringinuse_and_pause - verifies ringinuse, then plus some autopausing (LUA)
* set_penalty - QueuePenalty tests
* wrapup_time - wrapup time honoring in the presence of shared_lastcall over two instances of Asterisk (LUA)

A test plan for the Queue tests should consider the following:

* Waiting in a queue
** Position of people in the queue
** Playback of announcements and MoH to people in the queue
** People in the queue hanging up, leaving, and other operations
* Dialing members
** Various ring strategies
** Off-nominal results for dialing members
** Configuration operations that affect how members are dialed
* Bridging members
** Once a party is bridged, all of the two-party 'bridging' tests apply.

For each test, we need to verify:
* CDRs
* Queue Log entries

Note again that this task is just to write the test plan, not to write the tests.