aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/tests/test.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test.py')
-rw-r--r--tests/test.py76
1 files changed, 1 insertions, 75 deletions
diff --git a/tests/test.py b/tests/test.py
index 8c3807b..b3eed87 100644
--- a/tests/test.py
+++ b/tests/test.py
@@ -1,77 +1,3 @@
-import threading
-import pickle
-import os
-class ConfigManager:
- def __init__(self, filename):
- self.lock = threading.RLock()
- self.filename = filename
- try:
- with open(filename, 'rb') as f:
- self.data = pickle.load(f)
- except FileNotFoundError:
- self.data = {}
-
- self.properties = {}
- self.apis = {}
-
- def load(self):
- with self.lock:
- try:
- with open(self.filename, 'rb') as f:
- self.data = pickle.load(f)
- self.properties.update(self.data)
- except FileNotFoundError:
- self.data = {}
-
- def save(self):
- with self.lock:
- try:
- with open(self.filename, 'wb') as f:
- # 将self.properties字典中的内容合并至self.data字典中
- for k, v in self.properties.items():
- self.data[k] = v
- # 将self.apis字典中的函数状态保存至self.data字典中
- for k, v in self.apis.items():
- if v is not None:
- self.data[k] = v
- pickle.dump(self.data, f)
- except Exception as e:
- print('Error saving config data:', repr(e))
- raise
-
- def register_property(self, name, default_value):
- self.properties[name] = default_value
-
- def getter(self, default_value=default_value):
- with self.lock:
- return self.data.get(name, default_value)
-
- def setter(self, value):
- with self.lock:
- self.data[name] = value
-
- setattr(ConfigManager, name, property(getter, setter))
-
- def register_api(self, name, func, default_value=None):
- self.apis[name] = default_value
-
- def wrapper(*args, **kwargs):
- with self.lock:
- return func(*args, **kwargs)
-
- setattr(ConfigManager, name, wrapper)
-
-
-c = ConfigManager("test.dat")
-
-# c.register_property("bot_off_list", [999, 777])
-# def send_message(self, message):
-# print("Sending message:", message)
-
-# c.register_api("send_message", send_message, default_value="Hello, world!")
-
-# c.save()
-c.load()
-print(c.properties,c.properties['bot_off_list'],c.apis)
+