summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKuba Janoszek <kuba.janoszek@gmail.com>2012-03-13 00:05:24 +0100
committerKuba Janoszek <kuba.janoszek@gmail.com>2012-03-13 00:05:24 +0100
commit8e837349855cef2e54460b705a166bf85e84017c (patch)
treea25c18c9a90683775752573178fc32479f4d28f0
parentc0a3c3ea1e66e92415038d751fe1b92395c4ea5a (diff)
downloadtablib-8e837349855cef2e54460b705a166bf85e84017c.tar.gz
Databook.add_sheet accepts Dataset subclasses
-rw-r--r--tablib/core.py2
-rwxr-xr-xtest_tablib.py15
2 files changed, 16 insertions, 1 deletions
diff --git a/tablib/core.py b/tablib/core.py
index 46146db..c52671e 100644
--- a/tablib/core.py
+++ b/tablib/core.py
@@ -955,7 +955,7 @@ class Databook(object):
def add_sheet(self, dataset):
"""Adds given :class:`Dataset` to the :class:`Databook`."""
- if type(dataset) is Dataset:
+ if isinstance(dataset, Dataset):
self._datasets.append(dataset)
else:
raise InvalidDatasetType
diff --git a/test_tablib.py b/test_tablib.py
index 02a1eb3..fbb6eab 100755
--- a/test_tablib.py
+++ b/test_tablib.py
@@ -669,5 +669,20 @@ Old |Man |100500
)
+ def test_databook_add_sheet_accepts_dataset_subclasses(self):
+ class DatasetSubclass(tablib.Dataset):
+ pass
+
+ # just checking if subclass of tablib.Dataset can be added to Databook
+ dataset = DatasetSubclass()
+ dataset.append(self.john)
+ dataset.append(self.tom)
+
+ try:
+ book.add_sheet(dataset)
+ except tablib.InvalidDatasetType:
+ self.fail("Subclass of tablib.Dataset should be accepted by Databook.add_sheet")
+
+
if __name__ == '__main__':
unittest.main()