diff --git a/tests/test_series/test_range.py b/tests/test_series/test_range.py
index 924d9b70f8d68876ced2f82032a9449230807502..c7b2ff020725494b4daea459b3a2eecbd00f5781 100644
--- a/tests/test_series/test_range.py
+++ b/tests/test_series/test_range.py
@@ -9,12 +9,18 @@ from firanka.series import Range
 class TestRange(unittest.TestCase):
 
     def do_intersect(self, a, b, val):
-        if bool(Range(a).intersection(b)) != val:
-            self.fail('%s ^ %s != %s' % (Range(a), Range(b), val))
-        if bool(Range(b).intersection(a)) != val:
-            self.fail('%s ^ %s != %s' % (Range(b), Range(a), val))
+        if type(val) == bool:
+            if bool(Range(a).intersection(b)) != val:
+                self.fail('%s ^ %s != %s' % (Range(a), Range(b), val))
+            if bool(Range(b).intersection(a)) != val:
+                self.fail('%s ^ %s != %s' % (Range(b), Range(a), val))
+        else:
+            self.assertEqual(Range(a).intersection(b), Range(val))
+            self.assertEqual(Range(b).intersection(a), Range(val))
 
     def test_isempty(self):
+        self.assertFalse(Range(-1,-1,False,False))
+        self.assertTrue(Range(-1,-1,False,True))
         self.assertTrue(Range(-1,-1,False,False).is_empty())
         self.assertFalse(Range(-1,-1,False,True).is_empty())
 
@@ -22,13 +28,18 @@ class TestRange(unittest.TestCase):
         self.do_intersect(Range(-10, -1, True, True), '<2;3>', False)
         self.do_intersect(Range(-10, -1, True, False), '(-1;3>', False)
         self.do_intersect('<-10;-1)', '<-1;1>', False)
+        self.do_intersect(Range(-10, -1, True, False), '(-1;3>', False)
+        self.do_intersect('<-10;2)', '<1;5>', '<1;2)')
 
-    def test_str(self):
+    def test_str_and_repr_and_bool(self):
+        p = Range(-1,1,True,True)
+        self.assertEqual(eval(repr(p)),p)
         self.assertEqual(str(Range(-1, 1, True, True)), '<-1;1>')
 
     def test_constructor(self):
         self.assertRaises(ValueError, lambda: Range('#2;3>'))
         self.assertRaises(ValueError, lambda: Range('(2;3!'))
+        self.assertRaises(ValueError, lambda: Range('<-inf;3)'))
         self.assertEqual(Range(1,2,True,False), Range('<1;2)'))
 
     def test_contains(self):