summaryrefslogtreecommitdiff
path: root/cpp/tests/TestCase.h
diff options
context:
space:
mode:
authorRupert Smith <rupertlssmith@apache.org>2007-09-27 14:50:42 +0000
committerRupert Smith <rupertlssmith@apache.org>2007-09-27 14:50:42 +0000
commit6fe0512c6af4dfeb9d72dd668a7dbd2a93b70e9c (patch)
treef60b257b5c852cd4301bd3fadb13e5a09b9b4621 /cpp/tests/TestCase.h
parent972614c8446ec8ec2a4f6c55fee4d5cc4b46e84b (diff)
downloadqpid-python-6fe0512c6af4dfeb9d72dd668a7dbd2a93b70e9c.tar.gz
Added test cases 4 and 5, for message size tests.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2.1@580040 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/tests/TestCase.h')
-rw-r--r--cpp/tests/TestCase.h21
1 files changed, 16 insertions, 5 deletions
diff --git a/cpp/tests/TestCase.h b/cpp/tests/TestCase.h
index a88b76bc1d..ec151a6d84 100644
--- a/cpp/tests/TestCase.h
+++ b/cpp/tests/TestCase.h
@@ -28,28 +28,39 @@
namespace qpid {
/**
- * Interface to be implemented by test cases for use with the test
- * runner.
+ * TestCase provides an interface that classes implementing tests to be run using a distributed test client
+ * must implement. The interop test spec, defines a life-cycle for interop tests. This consists of, inviting
+ * a test to participate in a test, assigning a role, starting the test, and extracting a report on the
+ * outcome of the test.
+ *
+ * TODO: There is not method to process the test invitation. Add one.
*/
class TestCase
{
public:
+
/**
- * Directs the test case to act in a particular role. Some roles
- * may be 'activated' at this stage others may require an explicit
- * start request.
+ * Assigns the role to be played by this test case. The test parameters are fully specified in the
+ * assignment messages filed table.
+ *
+ * @param role The role to be played; sender or receiver.
+ * @param assignRoleMessage The role assingment messages field table, contains the full test parameters.
+ * @param options Additional test options.
*/
virtual void assign(const std::string& role, framing::FieldTable& params, TestOptions& options) = 0;
+
/**
* Each test will be started on its own thread, which should block
* until the test completes (this may or may not require an
* explicit stop() request).
*/
virtual void start() = 0;
+
/**
* Requests that the test be stopped if still running.
*/
virtual void stop() = 0;
+
/**
* Allows the test to fill in details on the final report
* message. Will be called only after start has returned.