| test.tck.TestHarness test.tck.msgflow.MessageFlowHarness test.tck.msgflow.NonInviteClientTransactionsStateMachineTest
NonInviteClientTransactionsStateMachineTest | public class NonInviteClientTransactionsStateMachineTest extends MessageFlowHarness (Code) | | 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
author: Emil Ivov author: Network Research Team, Louis Pasteur University, Strasbourg, France. author: This code is in the public domain. version: 1.0 |
NonInviteClientTransactionsStateMachineTest | public NonInviteClientTransactionsStateMachineTest(String name)(Code) | | |
suite | public static Test suite()(Code) | | |
testTryingCompletedTerminatedScenario | public void testTryingCompletedTerminatedScenario()(Code) | | 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.
|
testTryingProceedingCompletedTerminatedScenario | public void testTryingProceedingCompletedTerminatedScenario()(Code) | | 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.
|
Methods inherited from test.tck.msgflow.MessageFlowHarness | protected void addStatus(HeaderFactory headerFactory, Request request)(Code)(Java Doc) protected void addStatus(Request request, Response response)(Code)(Java Doc) protected Request createRequest(String method, AddressFactory addressFactory, HeaderFactory headerFactory, MessageFactory messageFactory, SipProvider srcProvider, SipProvider dstProvider, String contentType, String contentSubType, Object content) throws Exception(Code)(Java Doc) public ContactHeader createRiContact() throws TckInternalError(Code)(Java Doc) protected Request createRiInviteRequest(String contentType, String contentSubType, Object content) throws TckInternalError(Code)(Java Doc) protected Request createRiRegisterRequest() throws TckInternalError(Code)(Java Doc) public ContactHeader createTiContact() throws Exception(Code)(Java Doc) protected Request createTiInviteRequest(String contentType, String contentSubType, Object content) throws TiUnexpectedError(Code)(Java Doc) protected Request createTiRegisterRequest() throws TiUnexpectedError(Code)(Java Doc) public void setUp() throws java.lang.Exception(Code)(Java Doc) protected static void sleep(long sleepFor)(Code)(Java Doc) public void tearDown() throws java.lang.Exception(Code)(Java Doc) public static void waitForMessage()(Code)(Java Doc) protected static void waitForTimeout()(Code)(Java Doc) protected static void waitShortForMessage()(Code)(Java Doc)
|
Methods inherited from test.tck.TestHarness | public static void assertEquals(Object me, Object him)(Code)(Java Doc) public static void assertEquals(String me, String him)(Code)(Java Doc) public static void assertEquals(String reason, Object me, Object him)(Code)(Java Doc) public static void assertEquals(String reason, String me, String him)(Code)(Java Doc) public static void assertNotNull(String reason, Object thing)(Code)(Java Doc) public static void assertNull(String reason, Object thing)(Code)(Java Doc) public static void assertSame(String diagnostic, Object thing, Object thingie)(Code)(Java Doc) public static void assertTrue(boolean cond)(Code)(Java Doc) public static void assertTrue(String diagnostic, boolean cond)(Code)(Java Doc) public static void checkImplementsInterface(Class implementationClass, Class jainInterface)(Code)(Java Doc) public static void fail(String message)(Code)(Java Doc) public static void fail(String message, Exception ex)(Code)(Java Doc) public static void fail()(Code)(Java Doc) protected String getImplementationPath()(Code)(Java Doc) public static Properties getRiProperties(boolean autoDialog)(Code)(Java Doc) public static Properties getTiProperties()(Code)(Java Doc) public static boolean implementsInterface(Class implementationClass, Class jainInterface)(Code)(Java Doc) public void logTestCompleted()(Code)(Java Doc) public void logTestCompleted(String info)(Code)(Java Doc) public void setUp() throws Exception(Code)(Java Doc) public void tearDown() throws Exception(Code)(Java Doc)
|
|
|