summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tablib/core.py2
-rwxr-xr-xtest_tablib.py13
2 files changed, 14 insertions, 1 deletions
diff --git a/tablib/core.py b/tablib/core.py
index f8e2df7..7afdd71 100644
--- a/tablib/core.py
+++ b/tablib/core.py
@@ -45,7 +45,7 @@ class Row(object):
return repr(self._row)
def __getslice__(self, i, j):
- return self._row[i,j]
+ return self._row[i:j]
def __getitem__(self, i):
return self._row[i]
diff --git a/test_tablib.py b/test_tablib.py
index ba57170..a1f581c 100755
--- a/test_tablib.py
+++ b/test_tablib.py
@@ -8,6 +8,7 @@ import sys
import os
import tablib
from tablib.compat import markup, unicode, is_py3
+from tablib.core import Row
@@ -206,6 +207,18 @@ class TablibTestCase(unittest.TestCase):
self.assertEqual(self.founders[2:], [self.tom])
+ def test_row_slicing(self):
+ """Verify Row's __getslice__ method. Issue #184."""
+
+ john = Row(self.john)
+
+ self.assertEqual(john[:], list(self.john[:]))
+ self.assertEqual(john[0:], list(self.john[0:]))
+ self.assertEqual(john[:2], list(self.john[:2]))
+ self.assertEqual(john[0:2], list(self.john[0:2]))
+ self.assertEqual(john[0:-1], list(self.john[0:-1]))
+
+
def test_delete(self):
"""Verify deleting from dataset works."""