Range objects are nonzero when not empty

This commit is contained in:
Daniele Varrazzo 2012-09-23 22:43:23 +01:00
parent a96a4349ed
commit 25ef540aa3
2 changed files with 9 additions and 0 deletions

View File

@ -133,6 +133,9 @@ class Range(object):
return True
def __nonzero__(self):
return self._bounds is not None
def __eq__(self, other):
return (self._lower == other._lower
and self._upper == other._upper

View File

@ -888,6 +888,12 @@ class RangeTestCase(unittest.TestCase):
self.assert_(20 not in r)
self.assert_(21 not in r)
def test_nonzero(self):
from psycopg2.extras import Range
self.assert_(Range())
self.assert_(Range(10, 20))
self.assert_(not Range(empty=True))
def test_eq_hash(self):
from psycopg2.extras import Range
def assert_equal(r1, r2):