summaryrefslogtreecommitdiff
path: root/test/readme.txt
diff options
context:
space:
mode:
Diffstat (limited to 'test/readme.txt')
-rw-r--r--test/readme.txt51
1 files changed, 51 insertions, 0 deletions
diff --git a/test/readme.txt b/test/readme.txt
index 9f7985a..2841795 100644
--- a/test/readme.txt
+++ b/test/readme.txt
@@ -520,3 +520,54 @@ Rejecting remote offer for which there is already a local offer
* start application which offers service
* send SD message trying to offer the same service instance as already
offered locally from a remote host -> should be rejected
+
+nPDU tests
+-----------------
+
+This test is intended to test the functionality of the so called nPDU
+feature. The test setup is as followed:
+
+* There are two nodes, one hosting the services, one hosting the clients.
+* On each of the nodes is a routing manager daemon (RMD) started whose only
+ purpose is to provide routing manager functionality and shutdown the clients
+ and services at the end.
+* There are four services created. Each of the services has four methods.
+* All services are listening on the same port. Therefore there only is:
+ * one server endpoint created in the RMD on service side
+ * one client endpoint created in the RMD on client side
+* There are four clients created. Each of the clients will:
+ * Create a thread for each service
+ * Create a thread for each method of each service
+ * Send multiple messages with increasing payload to each of the services'
+ methods from the corresponding thread.
+ * After sending the threads will sleep the correct amount of time to insure
+ applicative debounce > debounce time + max retention time.
+* After all messages have been sent to the services the clients will notify the
+ RMD that they're finished. The RMD then instructs the RMD on service side to
+ shutdown the services and exit afterwards. After that the RMD on client side
+ exits as well.
+* Upon receiving a method call the service will check if the debounce time
+ specified in the json file for this method was undershot and print out a
+ warning.
+* The test first runs in synchronous mode and waits for a response of the
+ service before sending the next message.
+* After that the test runs in a mode where no response from the service are
+ required (message type REQUEST_NO_RETURN) thus the clients send at maximum
+ allowed frequency.
+
+Automatic start from build directory:
+
+ctest -V -R npdu_test_UDP
+ctest -V -R npdu_test_TCP
+
+A message will be shown when the external clients should be started.
+
+Manual start:
+# Service side
+./npdu_test_service_npdu_start.sh
+
+# Client side UDP mode
+./npdu_test_client_npdu_start.sh UDP
+
+# Client side TCP mode
+./npdu_test_client_npdu_start.sh TCP