def test_getdatetime(self): """ 測試 轉換 _id 為時間值 """ print "{0:-^30}".format("do_getdatetime") data = {"name": "eromoot", "age": 28, "info": u"中文…"} result = DictDB().insert(data) # 新增一筆資料 print result print DictDB.getdatetime(result.get("_id"))
def test_del(self): """ 測試 刪除資料 """ print "{0:-^30}".format("do_del") data = {"name": "toomore_del", "age": 18} getinsert = DictDB().insert(data) # 將新增資料 print DictDB().find_one({"_id": getinsert.get("_id")}) # 印出資料 DictDB().remove({"_id": getinsert.get("_id")}) # 刪除資料 result = DictDB().find_one({"_id": getinsert.get("_id")}) # 印出剛刪除的資料 None assert result is None
def test_update(self): """ 測試 修改資料 """ print "{0:-^30}".format("do_update") data = {"name": "toomore2", "age": 18} # 原資料 getinsert = DictDB().insert(data) # 新增資料 print getinsert # 印出新增資料 data = {"name": "toomore_update", "age": 28, "loc": "kaohsiung"} # 欲修改資料內容 DictDB().update(getinsert, data) # 修改資料 result = DictDB().find_one({"_id": getinsert.get("_id")}) # 印出修改後的資料 assert result["age"] == data["age"]
def test_clean(self): """ 測試 清空資料 """ data = DictDB() data.insert({"name": "toomore"}) data.clean() assert len(list(data.find())) == 1 data.clean(confirm=True) assert len(list(data.find())) == 0
import sys, os, atexit, pickle, pdb import socket, socketserver from concurrent.futures import ThreadPoolExecutor, wait from dictdb import DictDB PROMT = "%s> " peers_db = DictDB("peers.txt") stop = False peers = {} threads = [] class Event: def __init__(self, **kw): self.__dict__.update(kw) event_type = None username = None server_port = None message = None class ChatPeer: def __init__(self, **kw): self.__dict__.update(kw) username = None port = None