test.tck.msgflow
Class NonInviteClientTransactionsStateMachineTest
java.lang.Object
TestCase
test.tck.TestHarness
test.tck.msgflow.MessageFlowHarness
test.tck.msgflow.NonInviteClientTransactionsStateMachineTest
public class NonInviteClientTransactionsStateMachineTest
- extends MessageFlowHarness
The test tries to verify that Non Invite Client Transactions correctly change
states as specified by the rfc3261. The Tested Implementation is used
to send requests and the ReferenceImplementation issues (or not) corresponding
responses. ClientTransaction states are constantly queried
and compared to those in the state machine described in
section 17.1.2 of rfc3261
| Request from TU
| send request
Timer E V
send request +-----------+
+---------| |-------------------+
| | Trying | Timer F |
+-------->| | or Transport Err.|
+-----------+ inform TU |
200-699 | | |
resp. to TU | |1xx |
+---------------+ |resp. to TU |
| | |
| Timer E V Timer F |
| send req +-----------+ or Transport Err. |
| +---------| | inform TU |
| | |Proceeding |------------------>|
| +-------->| |-----+ |
| +-----------+ |1xx |
| | ^ |resp to TU |
| 200-699 | +--------+ |
| resp. to TU | |
| | |
| V |
| +-----------+ |
| | | |
| | Completed | |
| | | |
| +-----------+ |
| ^ | |
| | | Timer K |
+--------------+ | - |
| |
V |
NOTE: +-----------+ |
| | |
transitions | Terminated|<------------------+
labeled with | |
the event +-----------+
over the action
to take
Figure 6: non-INVITE client transaction
TODO test timeout events
- Version:
- 1.0
- Author:
- Emil Ivov
Network Research Team, Louis Pasteur University, Strasbourg, France.
This code is in the public domain.
Fields inherited from class test.tck.msgflow.MessageFlowHarness |
counter, eventCollector, EXTENSION_HDR, MESSAGES_ARRIVE_FOR, RETRY_OBJECT_DELETES, RETRY_OBJECT_DELETES_AFTER, riListeningPoint, riSipProvider, riSipStack, STACKS_SHUT_DOWN_FOR, STACKS_START_FOR, tiListeningPoint, tiSipProvider, tiSipStack, TRANSACTION_TIMES_OUT_FOR |
Fields inherited from class test.tck.TestHarness |
ABORT_ON_FAIL, abortOnFail, console, IMPLEMENTATION_PATH, LOCAL_ADDRESS, LOG_FILE_NAME, logFileName, path, printWriter, RI_PORT, riAddressFactory, riFactory, riHeaderFactory, riMessageFactory, testCounter, testResult, TI_PORT, tiAddressFactory, tiFactory, tiHeaderFactory, tiMessageFactory |
Methods inherited from class test.tck.msgflow.MessageFlowHarness |
addStatus, addStatus, createRequest, createRiContact, createRiInviteRequest, createRiRegisterRequest, createTiContact, createTiInviteRequest, createTiRegisterRequest, setUp, sleep, tearDown, waitForMessage, waitForTimeout, waitLongForMessage, waitShortForMessage |
Methods inherited from class test.tck.TestHarness |
assertEquals, assertEquals, assertEquals, assertEquals, assertNotNull, assertNull, assertSame, assertTrue, assertTrue, checkImplementsInterface, fail, fail, fail, getImplementationPath, getRiProperties, getTiProperties, implementsInterface, logTestCompleted, logTestCompleted |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
NonInviteClientTransactionsStateMachineTest
public NonInviteClientTransactionsStateMachineTest(String name)
testTryingProceedingCompletedTerminatedScenario
public void testTryingProceedingCompletedTerminatedScenario()
- Tries to walk a TI client transaction through the following scenario
Trying-->Proceeding-->Completed-->Terminated. Apart from state
transitions, we also test, retransmissions and proper hiding/passing
of messages to the TU.
testTryingCompletedTerminatedScenario
public void testTryingCompletedTerminatedScenario()
- Tries to walk a TI client transaction through the following scenario
Trying-->Completed-->Terminated. Apart from state
transitions, we also test, retransmissions and proper hiding/passing
of messages to the TU.
suite
public static Test suite()
Copyright © 2014. All Rights Reserved.