| Responsibilities /// |
|---|
| Indicate whether or not the assertion passes when applied. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Collect error messages. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Indicate whether or not a test case is using an in-vm broker. /// | |
| Track which in-vm broker is currently in use. /// | |
| Accept setting of a failure mechanism. | |
| Responsibilities /// |
|---|
| Cause messaging broker failure. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Cause messaging broker failure. /// |
/// Start the circuit.
/// Send test messages.
/// Request a status report.
/// Assert conditions on the publishing end of the circuit.
/// Assert conditions on the receiving end of the circuit.
/// Close the circuit.
/// Pass with no failed assertions or fail with a list of failed assertions.
///
///
/// | Responsibilities /// |
|---|
| Supply the publishing and receiving ends of a test messaging circuit. /// |
| Start the circuit running. /// |
| Close the circuit down. /// |
| Take a reading of the circuits state. /// |
| Apply assertions against the circuits state. /// |
| Send test messages over the circuit. /// |
| Perform the default test procedue on the circuit. /// |
| Responsibilities /// |
|---|
| Provide a message producer for sending messages. /// |
| Provide a message consumer for receiving messages. /// |
| Responsibilities /// |
|---|
| Provide a message producer for sending messages. /// |
| Provide a message consumer for receiving messages. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Represent failure to achieve synchronization. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Trigger a clock synchronization. /// | |
| Compute a clock delta to apply to the local clock. /// | |
| Estimate the error in the synchronzation. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Continually sychronize the clock at a throttled rate. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Supply the local clock with no delta. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Supply a reference clock signal. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Trigger a clock synchronziation. /// | |
| Compute a clock delta to apply to the local clock. /// | |
| Estimate the error in the synchronzation. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Supply the publishing and receiving ends of a test messaging circuit. /// | |
| Start the circuit running. /// | |
| Close the circuit down. /// | |
| Take a reading of the circuits state. /// | |
| Apply assertions against the circuits state. /// | |
| Send test messages over the circuit. /// | |
| Perform the default test procedue on the circuit. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Provide assertion that the publishers received no exceptions. /// | |
| Provide assertion that the publishers received a no consumers error code on every message. /// | |
| Provide assertion that the publishers received a no route error code on every message. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Provide assertion that the receivers received no exceptions. /// | |
| Provide assertion that the receivers received all test messages sent to it. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Provide a message producer for sending messages. /// | |
| Provide a message consumer for receiving messages. /// | |
| Supply the name of the test case that this implements. /// | |
| Accept/Reject invites based on test parameters. | |
| Adapt to assigned roles. | |
| Perform test case actions. | |
| Generate test reports. | |
| Responsibilities | Collaborations /// |
|---|---|
| Find out what test clients are available. | |
| Decorate available tests to run on all available clients. | |
| Attach XML test result logger. /// | |
| Terminate the interop testing framework. /// |
| -b | The broker URL. | Mandatory. /// |
| -h | The virtual host. | Optional. /// |
| -o | The directory to output test results to. | Optional. /// |
| -e | The type of test distribution engine to use. | Optional. One of: interop, fanout. /// |
| ... | Free arguments. The distributed test cases to run. /// | Mandatory. At least one must be defined. /// |
| name=value | Trailing argument define name/value pairs. Added to the test contenxt properties. /// | Optional. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Broadcast test invitations and collect enlists. | |
| Responsibilities | Collaborations /// |
|---|---|
| Execute coordinated test cases. | |
| Accept test clients joining a running test. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Broadcast test invitations and collect enlists. | |
| Output test failures for clients unwilling to run the test case. | |
| Execute distributed test cases. | |
| Fail non-participating pairings. | |
| Responsibilities | Collaborations /// |
|---|---|
| Fail the test with a suitable reason. /// |
| Message | Action /// |
|---|---|
| Invite(compulsory) | Reply with Enlist. /// |
| Invite(test case) | Reply with Enlist if test case available. /// |
| AssignRole(test case) | Reply with Accept Role if matches an enlisted test. Keep test parameters. /// |
| Start | Send test messages defined by test parameters. Send report on messages sent. /// |
| Status Request | Send report on messages received. /// |
| Terminate | Terminate the test client. /// |
| ClockSynch | Synch clock against the supplied UDP address. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Handle all incoming control messages. | |
| Configure and look up test cases by name. | |
| -b | The broker URL. | Optional. /// |
| -h | The virtual host. | Optional. /// |
| -n | The test client name. | Optional. /// |
| name=value | Trailing argument define name/value pairs. Added to system properties. | Optional. /// |
| Responsibilities /// |
|---|
| Supply the name of the test case that this implements. /// |
| Accept/Reject invites based on test parameters. /// |
| Adapt to assigned roles. /// |
| Perform test case actions. /// |
| Generate test reports. /// |
| Responsibilities /// |
|---|
| Accept late joining test clients. /// |
| CLIENT_NAME | A unique name for the new client. /// |
| CLIENT_PRIVATE_CONTROL_KEY | The key for the route on which the client receives its control messages. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Record all exceptions received. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Create and clean up in-vm brokers on every test case. /// | |
| Produce lists of assertions from assertion creation calls. /// | |
| Produce JUnit failures from assertion failures. /// | |
| Convert failed assertions to error messages. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Provide the name of the current test case. /// | |
| Provide the test parameters. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Supply the publishing and receiving ends of a test messaging circuit. /// | |
| Start the circuit running. /// | |
| Close the circuit down. /// | |
| Take a reading of the circuits state. /// | |
| Apply assertions against the circuits state. | |
| Send test messages over the circuit. /// | |
| Perform the default test procedure on the circuit. /// | |
| Provide access to connection and controlSession exception monitors. | |
/// Start the circuit.
/// Send test messages.
/// Request a status report.
/// Assert conditions on the publishing end of the circuit.
/// Assert conditions on the receiving end of the circuit.
/// Close the circuit.
/// Pass with no failed assertions or fail with a list of failed assertions.
///
/// | Responsibilities | Collaborations /// |
|---|---|
| Provide a message producer for sending messages. /// | |
| Provide a message consumer for receiving messages. /// | |
| Provide assertion that the publisher received no exceptions. /// | |
| Provide assertion that the publisher received a no consumers error code. /// | |
| Provide assertion that the publisher received a no route error code. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Provide a message producer for sending messages. /// | |
| Provide a message consumer for receiving messages. /// | |
| Provide assertion that the receivers received no exceptions. /// | |
| Provide assertion that the receivers received all test messages sent to it. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Provide a standard test procedure over a test circuit. /// | |
| Construct test circuits appropriate to a tests context. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Identify a test case, a handling client id, a circuit end within the client, and a test cycle number. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Count incoming messages. /// | |
| Record time ellapsed since the arrival of the first message. /// | |
| Reset all counts and timings. /// |
| Parameter | Default | Comments /// |
|---|---|---|
| messageSize | 0 | Message size in bytes. Not including any headers. /// |
| destinationName | ping | The root name to use to generate destination names to ping. /// |
| persistent | false | Determines whether peristent delivery is used. /// |
| transacted | false | Determines whether messages are sent/received in transactions. /// |
| broker | tcp://localhost:5672 | Determines the broker to connect to. /// |
| virtualHost | test | Determines the virtual host to send all ping over. /// |
| rate | 0 | The maximum rate (in hertz) to send messages at. 0 means no limit. /// |
| verbose | false | The verbose flag for debugging. Prints to console on every message. /// |
| pubsub | false | Whether to ping topics or queues. Uses p2p by default. /// |
| username | guest | The username to access the broker with. /// |
| password | guest | The password to access the broker with. /// |
| selector | null | Not used. Defines a message selector to filter pings with. /// |
| destinationCount | 1 | The number of receivers listening to the pings. /// |
| timeout | 30000 | In milliseconds. The timeout to stop waiting for replies. /// |
| commitBatchSize | 1 | The number of messages per transaction in transactional mode. /// |
| uniqueDests | true | Whether each receivers only listens to one ping destination or all. /// |
| durableDests | false | Whether or not durable destinations are used. /// |
| ackMode | AUTO_ACK | The message acknowledgement mode. Possible values are: /// 0 - SESSION_TRANSACTED /// 1 - AUTO_ACKNOWLEDGE /// 2 - CLIENT_ACKNOWLEDGE /// 3 - DUPS_OK_ACKNOWLEDGE /// 257 - NO_ACKNOWLEDGE /// 258 - PRE_ACKNOWLEDGE /// |
| maxPending | 0 | The maximum size in bytes, of messages sent but not yet received. /// Limits the volume of messages currently buffered on the client /// or broker. Can help scale test clients by limiting amount of buffered /// data to avoid out of memory errors. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Provide the names and defaults of all test parameters. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Quitely pass. /// | |
| Log a warning. /// | |
| Raise a test failure. /// |
| Responsibilities /// |
|---|
| Provide assertion that the publishers received no exceptions. /// |
| Responsibilities /// |
|---|
| Provide assertion that the receivers received no exceptions. /// |
| Provide assertion that the receivers received all test messages sent to it. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Hold the details of the sending and receiving end-points to create circuits from. /// | |
| Provide a conversation factory to create control conversations with the end-points. /// |
| Responsibilities /// |
|---|
| Provide a standard test procedure over a test circuit. /// |
| Construct test circuits appropriate to a tests context. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Create distributed circuits from one to many test nodes, for fanout style testing. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Create distributed circuits from pairs of test nodes, for interop style testing. /// |
| Responsibilities | Collaborations /// |
|---|---|
| /// |
| Responsibilities | Collaborations /// |
|---|---|
| Record test clients control addresses together with their names. /// |
| Responsibilities | Collaborations /// |
|---|---|
| Create connections from test properties. | |
| Create test messages. /// | |
| Inject a short pause in a test. /// | |
| Serialize properties into a message. /// |
| | The username. /// |
| | The password. /// |
| | The virtual host name. /// |
| | The broker URL. /// |
| | The broker name in the initial context.
///
/// Connection properties as defined in |