示例#1
0
    def test_increment(self):
        """ Simple increment.
        """
        from leakdb.storage import DefaultStorage

        leak = DefaultStorage()
        leak.set(key="foo", value=1)

        leak.incr(key="foo")
        self.assertEqual(leak.get("foo"), 2)

        leak.incr(key="foo", delta=2)
        self.assertEqual(leak.get("foo"), 4)
示例#2
0
    def test_increment_initial(self):
        """ Increment key with initial value.
        """
        from leakdb.storage import DefaultStorage

        leak = DefaultStorage()

        leak.incr(key="foo", initial_value=666)
        self.assertEqual(leak.get("foo"), 666)

        leak.incr(key="foo", initial_value=666)
        self.assertEqual(leak.get("foo"), 667)

        leak.incr(key="foo", delta=2, initial_value=666)
        self.assertEqual(leak.get("foo"), 669)
示例#3
0
    def test_decrement(self):
        """ Simple decrement.
        """
        from leakdb.storage import DefaultStorage

        leak = DefaultStorage()
        leak.set(key="foo", value=1)
        leak.set(key="bar", value=10)

        leak.decr(key="foo")
        self.assertEqual(leak.get("foo"), 0)

        leak.decr(key="bar", delta=5)
        self.assertEqual(leak.get("bar"), 5)

        leak.decr(key="bar", delta=10)
        self.assertEqual(leak.get("bar"), -5)
示例#4
0
    def test_increment_empty(self):
        """ Increment empty key.
        """
        from leakdb.storage import DefaultStorage

        leak = DefaultStorage()

        leak.incr(key="foo")
        leak.incr(key="bar", delta=2)

        self.assertEqual(leak.get("foo"), 1)
        self.assertEqual(leak.get("bar"), 2)
示例#5
0
    def test_delete(self):
        """ Simple delete.
        """
        from leakdb.storage import DefaultStorage

        leak = DefaultStorage()
        leak.set(key="foo", value=1)

        self.assertEqual(leak.delete(key="foo"), 1)
        self.assertFalse(leak.get("foo"))

        self.assertFalse(leak.delete(key="foo"))