152 # Test defaults for others |
152 # Test defaults for others |
153 for x in range(10, 15): |
153 for x in range(10, 15): |
154 v = c.get(x, -1) |
154 v = c.get(x, -1) |
155 self.assertEqual(v, -1) |
155 self.assertEqual(v, -1) |
156 |
156 |
157 |
157 def test_iterkeys(self): |
158 def test_iterator(self): |
158 """ |
159 """ |
159 Tests the iterating on keys in the cache |
160 Tests the iterating on key-value couples in the cache |
|
161 """ |
160 """ |
162 c = QueryCache(ceiling=20) |
161 c = QueryCache(ceiling=20) |
163 # set 10 values |
162 # set 10 values |
164 for x in range(10): |
163 for x in range(10): |
165 c[x] = x |
164 c[x] = x |
170 self.assertEqual(v, x) |
169 self.assertEqual(v, x) |
171 self.assertEqual(c._usage_report(), |
170 self.assertEqual(c._usage_report(), |
172 {'transientcount': 0, |
171 {'transientcount': 0, |
173 'itemcount': 10, |
172 'itemcount': 10, |
174 'permanentcount': 5}) |
173 'permanentcount': 5}) |
175 content = sorted(c) |
174 keys = sorted(c) |
|
175 for x in range(10): |
|
176 self.assertEquals(x, keys[x]) |
|
177 |
|
178 def test_items(self): |
|
179 """ |
|
180 Tests the iterating on key-value couples in the cache |
|
181 """ |
|
182 c = QueryCache(ceiling=20) |
|
183 # set 10 values |
|
184 for x in range(10): |
|
185 c[x] = x |
|
186 # arrange for the first 5 to be permanent |
|
187 for x in range(5): |
|
188 for r in range(QueryCache._maxlevel + 2): |
|
189 v = c[x] |
|
190 self.assertEqual(v, x) |
|
191 self.assertEqual(c._usage_report(), |
|
192 {'transientcount': 0, |
|
193 'itemcount': 10, |
|
194 'permanentcount': 5}) |
|
195 content = sorted(c.items()) |
176 for x in range(10): |
196 for x in range(10): |
177 self.assertEquals(x, content[x][0]) |
197 self.assertEquals(x, content[x][0]) |
178 self.assertEquals(x, content[x][1]) |
198 self.assertEquals(x, content[x][1]) |
179 |
199 |
180 |
200 |