]> git.stg.codes - stg.git/blobdiff - tests/testadmin.h
Test admin, settings, tariffs and store moved to separate files
[stg.git] / tests / testadmin.h
diff --git a/tests/testadmin.h b/tests/testadmin.h
new file mode 100644 (file)
index 0000000..37d20b4
--- /dev/null
@@ -0,0 +1,35 @@
+#ifndef __TEST_ADMIN_H__
+#define __TEST_ADMIN_H__
+
+#include "stg/admin.h"
+
+class TEST_ADMIN : public ADMIN {
+    public:
+        TEST_ADMIN() : priv(0xffFFffFF) {}
+
+        ADMIN & operator=(const ADMIN &) { return *this; }
+        ADMIN & operator=(const ADMIN_CONF &) { return *this; }
+        bool    operator==(const ADMIN & rhs) const { return true; }
+        bool    operator!=(const ADMIN & rhs) const { return false; }
+        bool    operator<(const ADMIN & rhs) const { return true; }
+        bool    operator<=(const ADMIN & rhs) const { return true; }
+
+        const std::string & GetPassword() const { return password; }
+        const std::string & GetLogin() const { return login; }
+        PRIV const *        GetPriv() const { return &priv; }
+        uint16_t            GetPrivAsInt() const { return priv.ToInt(); }
+        const ADMIN_CONF &  GetConf() const { return conf; }
+        uint32_t            GetIP() const { return ip; }
+        std::string         GetIPStr() const { return inet_ntostring(ip); }
+        void                SetIP(uint32_t ip) { TEST_ADMIN::ip = ip; }
+        const std::string   GetLogStr() const { return ""; }
+    
+    private:
+        std::string password;
+        std::string login;
+        PRIV priv;
+        ADMIN_CONF conf;
+        uint32_t ip;
+};
+
+#endif