Esempio n. 1
0
 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)
Esempio n. 2
0
 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)
Esempio n. 3
0
    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)
Esempio n. 4
0
 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)])
Esempio n. 5
0
    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
Esempio n. 6
0
 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)
Esempio n. 7
0
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')
Esempio n. 8
0
 def test_len(self):
     a = "wagwaan"
     self.assertEquals(len(a), len(hot_redis.String(a)))
Esempio n. 9
0
 def test_empty(self):
     self.assertEquals(hot_redis.String(), "")
Esempio n. 10
0
 def test_value(self):
     a = "wagwaan"
     self.assertEquals(hot_redis.String(a), a)