def test_mul(self): a = "wagwaan" b = hot_redis.String(a) i = 9000 self.assertEquals(a * i, hot_redis.String(a) * i) b *= i self.assertEquals(a * i, b)
def test_add(self): a = "wagwaan" b = "hotskull" c = hot_redis.String(a) d = hot_redis.String(b) self.assertEquals(a + b, hot_redis.String(a) + hot_redis.String(b)) self.assertEquals(a + b, hot_redis.String(a) + b) d += c c += b self.assertEquals(a + b, c) self.assertEquals(b + a, d)
def test_mutability(self): a = "wagwaan hotskull" b = "flute don" c = hot_redis.String(a) d = hot_redis.ImmutableString(a) keyC = c.key keyD = d.key a += b c += b d += b self.assertEquals(a, c) self.assertEquals(a, d) self.assertEquals(c.key, keyC) self.assertNotEquals(d.key, keyD) keyD = d.key i = 9000 a *= i c *= i d *= i self.assertEquals(a, c) self.assertEquals(a, d) self.assertEquals(c.key, keyC) self.assertNotEquals(d.key, keyD) def immutable_set(): d[0] = b self.assertRaises(TypeError, immutable_set)
def test_get(self): a = "wagwaan hotskull" b = hot_redis.String(a) self.assertEquals(a[4], b[4]) self.assertEquals(a[3:12], b[3:12]) self.assertEquals(a[:-5], b[:-5]) self.assertRaises(IndexError, lambda: b[len(b)])
def __init__(self, var, val): if type(val) == dict: # print('dict') instance = hot_redis.Dict(val, key=var) elif type(val) == list: # print('list') instance = hot_redis.List(val, key=var) elif type(val) == set: # print('set') instance = hot_redis.Set(val, key=var) elif type(val) == str: # print('str') instance = hot_redis.String(val, key=var) elif type(val) == int: # print('int') instance = hot_redis.Int(val, key=var) elif type(val) == None: # Not handled # print('None Not handled') return None elif callable(val): # print('function') return None else: # print("else, None:", type(val)) return None # instance = hot_redis(instance) # print("debug: ", var, val) self.instance = instance
def test_set(self): a = "wagwaan hotskull" b = "flute don" for i in range(0, len(b)): for j in range(i, len(b)): c = list(a) d = hot_redis.String(a) c[i:j] = list(b) d[i:j] = b c = "".join(c) self.assertEquals(d, c)
def hot_redis_test(clear=False): """ 测试 hot redis 常用功能 :return: """ # clear = True dat = { 'base': 10, 'crx': 2, 'jobbole': 1, } # 初始化一个字典 _dict = hot_redis.Dict(client=rdb_out, key='ig.dict') # 更新, 自动写入 redis _dict['fns'] = dat # 删除字典 if clear: _dict.clear() # 测试 list _list = hot_redis.List(client=rdb_out, key='ig.list') _list += list(dat.keys()) # pop list if clear: for i in range(len(_list)): _list.pop() # 字符串 _string = hot_redis.String(client=rdb_out, key='ig.string', initial=','.join([str(_) for _ in dat.keys()])) # 没有找到 hot_redis 如何删除, 只好使用 redis 默认的 if clear: rd.delete('ig.string')
def test_len(self): a = "wagwaan" self.assertEquals(len(a), len(hot_redis.String(a)))
def test_empty(self): self.assertEquals(hot_redis.String(), "")
def test_value(self): a = "wagwaan" self.assertEquals(hot_redis.String(a), a)