コード例 #1
0
    def test_constructor(self):
        for i in range(5):
            name = self.generate_string()
            cache = Cache(name)
            self.assertEqual(name, cache.name)
            self.assertEqual(cache.allow_type_override, True)

        for j in range(5):
            cache = Cache()
            cache.allow_type_override = False
            self.assertEqual(cache.name, None)
            self.assertEqual(cache.allow_type_override, False)
コード例 #2
0
    def test_add_delete(self):
        cache = Cache()
        cache.allow_type_override = False

        cache.add(1234)
        cache.add([x for x in range(10)])
        cache.add([random.randint(0, 100) for _ in range(10)], "randList")

        self.assertTrue(len(cache) == 3)
        cache.delete("1234")
        self.assertTrue(len(cache) == 2)
        del cache["randList"]
        self.assertTrue(len(cache) == 1)

        cache.add(123, "123")
        cache.add(123)
        cache.add("Does not raise", 123)
        self.assertRaises(TypeError, cache.add, "Should raise", "123")
        self.assertRaises(TypeError, cache.add, [], "123")
        self.assertRaises(TypeError, cache.add, 0, 123)