docs: fix #42; fix #43 [ci skip]
[awesomized/libmemcached] / libtest / server.h
index fa5240569f8531020d590b8fa757260474ff5980..10c1d3745befe08fd3ff25852d78aeab9718ba78 100644 (file)
@@ -177,7 +177,8 @@ public:
 
   virtual bool ping()= 0;
 
-  virtual bool build(size_t argc, const char *argv[])= 0;
+  bool init(const char *argv[]);
+  virtual bool build()= 0;
 
   void add_option(const std::string&);
   void add_option(const std::string&, const std::string&);
@@ -204,6 +205,8 @@ public:
     _log_file.clear();
   }
 
+  std::pair<std::string, std::string> output();
+
   pid_t pid() const;
 
   bool has_pid() const;
@@ -223,6 +226,11 @@ public:
     _error= arg;
   }
 
+  void reset_error()
+  {
+    _error.clear();
+  }
+
   virtual bool wait_for_pidfile() const;
 
   bool check_pid(pid_t pid_arg) const
@@ -260,6 +268,11 @@ public:
     return out_of_ban_killed_;
   }
 
+  void timeout(uint32_t timeout_)
+  {
+    _timeout= timeout_;
+  }
+
 protected:
   bool set_pid_file();
   Options _options;
@@ -276,8 +289,11 @@ private:
   bool args(Application&);
 
   std::string _error;
+  uint32_t _timeout; // This number should be high enough for valgrind startup (which is slow)
 };
 
 std::ostream& operator<<(std::ostream& output, const libtest::Server &arg);
 
 } // namespace libtest
+
+