summaryrefslogtreecommitdiff
path: root/tests/NonBlocking_Conn_Test.h
diff options
context:
space:
mode:
Diffstat (limited to 'tests/NonBlocking_Conn_Test.h')
-rw-r--r--tests/NonBlocking_Conn_Test.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/tests/NonBlocking_Conn_Test.h b/tests/NonBlocking_Conn_Test.h
new file mode 100644
index 00000000000..77746238226
--- /dev/null
+++ b/tests/NonBlocking_Conn_Test.h
@@ -0,0 +1,54 @@
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// tests
+//
+// = FILENAME
+// NonBlocking_Conn_Test.cpp
+//
+// = DESCRIPTION
+// This test checks for the proper working of the following:
+// - blocking connections
+// - blocking connections with timeouts
+// - non-blocking connections
+// - non-blocking connections without waiting for completions
+// - non-blocking connections with timeouts
+//
+// = AUTHOR
+// Irfan Pyarali <irfan@oomworks.com>
+//
+// ============================================================================
+
+#ifndef NONBLOCKING_CONN_TEST_H
+#define NONBLOCKING_CONN_TEST_H
+
+#include "ace/Svc_Handler.h"
+#include "ace/SOCK_Stream.h"
+
+class Svc_Handler : public ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_NULL_SYNCH>
+{
+public:
+
+ enum Connection_Status
+ {
+ SUCCEEDED,
+ FAILED
+ };
+
+ Svc_Handler (void);
+
+ void connection_status (Connection_Status &status,
+ int &completion_counter);
+
+ int open (void *);
+
+ int handle_close (ACE_HANDLE handle,
+ ACE_Reactor_Mask mask);
+
+ Connection_Status *status_;
+ int *completion_counter_;
+};
+
+#endif /* NONBLOCKING_CONN_TEST_H */