changeset 112:c28f2fc2bb05

Test with dump_s and load_s
author Stefano Rivera <stefano@rivera.za.net>
date Mon, 02 Sep 2013 14:50:30 +0200
parents 16d9f3a0dc29
children 163122b3a8e9
files nagslang/tests/test_yamlish.py nagslang/yamlish.py
diffstat 2 files changed, 15 insertions(+), 19 deletions(-) [+]
line wrap: on
line diff
--- a/nagslang/tests/test_yamlish.py	Mon Sep 02 14:45:18 2013 +0200
+++ b/nagslang/tests/test_yamlish.py	Mon Sep 02 14:50:30 2013 +0200
@@ -1,18 +1,16 @@
 from unittest import TestCase, SkipTest
-from StringIO import StringIO
 
 try:
     import yaml
 except ImportError:
     yaml = None  # pyflakes:ignore
 
-from nagslang.yamlish import load, dump
+from nagslang.yamlish import load_s, dump_s
 
 
 class TestParse(TestCase):
-    def assertParsesAs(self, yaml, expected):
-        f = StringIO(yaml.strip())
-        self.assertEqual(load(f), expected)
+    def assertParsesAs(self, text, expected):
+        self.assertEqual(load_s(text.strip()), expected)
 
     def test_dict_list_1(self):
         self.assertParsesAs('''
@@ -31,17 +29,15 @@
 
 class TestRoundTrip(TestCase):
     def roundtrip(self, data):
-        f = StringIO()
-        self.dump(data, f)
-        f.seek(0)
-        print '\n=== Begin ===\n%s\n=== End ===' % f.buf.rstrip()
-        self.assertEqual(self.load(f), data)
+        text = self.dump_s(data)
+        print '\n=== Begin ===\n%s\n=== End ===' % text
+        self.assertEqual(self.load_s(text), data)
 
-    def dump(self, data, f):
-        dump(data, f)
+    def dump_s(self, data):
+        return dump_s(data)
 
-    def load(self, f):
-        return load(f)
+    def load_s(self, text):
+        return load_s(text)
 
     def test_simple_dict(self):
         self.roundtrip({'foo': 'bar'})
@@ -79,14 +75,14 @@
 
 
 class TestFromPyYAML(TestRoundTrip):
-    def dump(self, data, f):
+    def dump_s(self, data):
         if yaml is None:
             raise SkipTest('yaml module unavailable')
-        yaml.dump(data, f, default_flow_style=False)
+        return yaml.dump(data, default_flow_style=False)
 
 
 class TestToPyYAML(TestRoundTrip):
-    def load(self, f):
+    def load_s(self, text):
         if yaml is None:
             raise SkipTest('yaml module unavailable')
-        return yaml.load(f)
+        return yaml.load(text)
--- a/nagslang/yamlish.py	Mon Sep 02 14:45:18 2013 +0200
+++ b/nagslang/yamlish.py	Mon Sep 02 14:50:30 2013 +0200
@@ -21,7 +21,7 @@
 
 
 def load_s(yaml):
-    return Parser().parse(yaml)
+    return Parser().parse(yaml.strip())