Socket/Protocols/INet: Extend INet6SocketAddress syntax to support more flexible...
[senf.git] / Socket / SocketProtocol.test.hh
index 3ca682a..bdfb5f7 100644 (file)
 namespace senf {
 namespace test {
 
-    class SomeProtocol
-        : public ConcreteSocketProtocol<SomeSocketPolicy,SomeProtocol>
+    class SomeSocketProtocol
+        : public ConcreteSocketProtocol<SomeSocketPolicy,SomeSocketProtocol>
     {
     public:
-        ~SomeProtocol() {}
+        ~SomeSocketProtocol() {}
 
-        void init_client() const {}
-        void init_server() const {}
+        void init_client() const { fd(0); }
+        void init_server() const { fd(0); }
 
         unsigned available() const
             { return Policy::ReadPolicy::TEST_SIZE; }
         bool eof() const
             { return false; }
+
+        virtual void close() const {
+            closeCount(1);
+        }
+
+        static unsigned closeCount(unsigned inc=0) {
+            static unsigned counter (0);
+            counter += inc;
+            return counter;
+        }
     };
 
 }}