summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenneth Reitz <me@kennethreitz.org>2014-01-08 11:44:30 -0800
committerKenneth Reitz <me@kennethreitz.org>2014-01-08 11:44:30 -0800
commit939b0af551aabc345568d7b439fa97684604ae48 (patch)
tree75d9927cc3f82cbbd98985085fa79de7c8db0b03
parent9c2018653fc8d02f1db727dd73cfc61b3fcfa81d (diff)
parent63f6cea1326c61dd8a7ac8d9ec38bf95e3e1accb (diff)
downloadtablib-939b0af551aabc345568d7b439fa97684604ae48.tar.gz
Merge pull request #110 from djrobstep/develop
Fix for a broken YAML test and tsv autodetection
-rw-r--r--tablib/formats/_csv.py2
-rw-r--r--tablib/formats/_yaml.py4
-rwxr-xr-xtest_tablib.py2
3 files changed, 5 insertions, 3 deletions
diff --git a/tablib/formats/_csv.py b/tablib/formats/_csv.py
index 3cda71b..c5d3202 100644
--- a/tablib/formats/_csv.py
+++ b/tablib/formats/_csv.py
@@ -49,7 +49,7 @@ def import_set(dset, in_stream, headers=True):
def detect(stream):
"""Returns True if given stream is valid CSV."""
try:
- csv.Sniffer().sniff(stream)
+ csv.Sniffer().sniff(stream, delimiters=',')
return True
except (csv.Error, TypeError):
return False
diff --git a/tablib/formats/_yaml.py b/tablib/formats/_yaml.py
index e2ccf46..0052b0f 100644
--- a/tablib/formats/_yaml.py
+++ b/tablib/formats/_yaml.py
@@ -26,12 +26,12 @@ extensions = ('yaml', 'yml')
def export_set(dataset):
"""Returns YAML representation of Dataset."""
- return yaml.dump(dataset._package(ordered=False))
+ return yaml.safe_dump(dataset._package(ordered=False))
def export_book(databook):
"""Returns YAML representation of Databook."""
- return yaml.dump(databook._package())
+ return yaml.safe_dump(databook._package(ordered=False))
def import_set(dset, in_stream):
diff --git a/test_tablib.py b/test_tablib.py
index 526370a..70e6051 100755
--- a/test_tablib.py
+++ b/test_tablib.py
@@ -493,10 +493,12 @@ class TablibTestCase(unittest.TestCase):
_yaml = '- {age: 90, first_name: John, last_name: Adams}'
_json = '[{"last_name": "Adams","age": 90,"first_name": "John"}]'
_csv = '1,2,3\n4,5,6\n7,8,9\n'
+ _tsv = '1\t2\t3\n4\t5\t6\n7\t8\t9\n'
_bunk = '¡¡¡¡¡¡---///\n\n\n¡¡£™∞¢£§∞§¶•¶ª∞¶•ªº••ª–º§•†•§º¶•†¥ª–º•§ƒø¥¨©πƒø†ˆ¥ç©¨√øˆ¥≈†ƒ¥ç©ø¨çˆ¥ƒçø¶'
self.assertEqual(tablib.detect(_yaml)[0], tablib.formats.yaml)
self.assertEqual(tablib.detect(_csv)[0], tablib.formats.csv)
+ self.assertEqual(tablib.detect(_tsv)[0], tablib.formats.tsv)
self.assertEqual(tablib.detect(_json)[0], tablib.formats.json)
self.assertEqual(tablib.detect(_bunk)[0], None)