Bläddra i källkod

lrucache: change test case to py.test

I re-wrote lrucache (and it seems like no-one had looked at it much
before :).  I was told my test function would have been simpler in
native py.test, so let's have a go converting it all.

We can avoid any reference to unittest, because lrucache doesn't write
files so it doesn't need any of our custom assertion helpers.
Alan Jenkins 10 år sedan
förälder
incheckning
02b3fbb401
1 ändrade filer med 30 tillägg och 27 borttagningar
  1. 30 27
      borg/testsuite/lrucache.py

+ 30 - 27
borg/testsuite/lrucache.py

@@ -1,32 +1,35 @@
 from ..lrucache import LRUCache
-from . import BaseTestCase
+import pytest
 from tempfile import TemporaryFile
 
 
-class LRUCacheTestCase(BaseTestCase):
+class TestLRUCache:
 
-    def test(self):
+    def test_lrucache(self):
         c = LRUCache(2, dispose=lambda _: None)
-        self.assert_equal(len(c), 0)
+        assert len(c) == 0
+        assert c.items() == set()
         for i, x in enumerate('abc'):
             c[x] = i
-        self.assert_equal(len(c), 2)
-        self.assert_equal(c.items(), set([('b', 1), ('c', 2)]))
-        self.assert_equal(False, 'a' in c)
-        self.assert_equal(True, 'b' in c)
-        self.assert_raises(KeyError, lambda: c['a'])
-        self.assert_equal(c['b'], 1)
-        self.assert_equal(c['c'], 2)
+        assert len(c) == 2
+        assert c.items() == set([('b', 1), ('c', 2)])
+        assert 'a' not in c
+        assert 'b' in c
+        with pytest.raises(KeyError):
+            c['a']
+        assert c['b'] == 1
+        assert c['c'] == 2
         c['d'] = 3
-        self.assert_equal(len(c), 2)
-        self.assert_equal(c['c'], 2)
-        self.assert_equal(c['d'], 3)
+        assert len(c) == 2
+        assert c['c'] == 2
+        assert c['d'] == 3
         del c['c']
-        self.assert_equal(len(c), 1)
-        self.assert_raises(KeyError, lambda: c['c'])
-        self.assert_equal(c['d'], 3)
+        assert len(c) == 1
+        with pytest.raises(KeyError):
+            c['c']
+        assert c['d'] == 3
         c.clear()
-        self.assert_equal(c.items(), set())
+        assert c.items() == set()
 
     def test_dispose(self):
         c = LRUCache(2, dispose=lambda f: f.close())
@@ -35,15 +38,15 @@ class LRUCacheTestCase(BaseTestCase):
         f3 = TemporaryFile()
         c[1] = f1
         c[2] = f2
-        self.assert_equal(False, f2.closed)
+        assert not f2.closed
         c[3] = f3
-        self.assert_equal(False, 1 in c)
-        self.assert_equal(True, f1.closed)
-        self.assert_equal(True, 2 in c)
-        self.assert_equal(False, f2.closed)
+        assert 1 not in c
+        assert f1.closed
+        assert 2 in c
+        assert not f2.closed
         del c[2]
-        self.assert_equal(False, 2 in c)
-        self.assert_equal(True, f2.closed)
+        assert 2 not in c
+        assert f2.closed
         c.clear()
-        self.assert_equal(c.items(), set())
-        self.assert_equal(True, f3.closed)
+        assert not c.items()
+        assert f3.closed