aboutsummaryrefslogtreecommitdiffstats
path: root/test/10-input.py
diff options
context:
space:
mode:
authorMatěj Cepl <mcepl@redhat.com>2012-02-15 23:59:42 +0100
committerMatěj Cepl <mcepl@redhat.com>2012-02-16 00:24:01 +0100
commitd7e73ec4c238d0eb1c5493bb90c022d683123296 (patch)
treed81f22a220c40fd7528e098dd0d22060410415e0 /test/10-input.py
downloadyamlish-d7e73ec4c238d0eb1c5493bb90c022d683123296.tar.gz
Initial commit with skeleton of the project.
Also added original Perl, together with PHP and Javascript ports.
Diffstat (limited to 'test/10-input.py')
-rw-r--r--test/10-input.py103
1 files changed, 103 insertions, 0 deletions
diff --git a/test/10-input.py b/test/10-input.py
new file mode 100644
index 0000000..5ec8d96
--- /dev/null
+++ b/test/10-input.py
@@ -0,0 +1,103 @@
+# -*- coding: utf-8 -*-
+import unittest
+
+IN = """
+ ---
+ bill-to:
+ address:
+ city: "Royal Oak"
+ lines: "458 Walkman Dr.\nSuite #292\n"
+ postal: 48046
+ state: MI
+ family: Dumars
+ given: Chris
+ comments: "Late afternoon is best. Backup contact is Nancy Billsmer @ 338-4338\n"
+ date: 2001-01-23
+ invoice: 34843
+ product:
+ -
+ description: Basketball
+ price: 450.00
+ quantity: 4
+ sku: BL394D
+ -
+ description: "Super Hoop"
+ price: 2392.00
+ quantity: 1
+ sku: BL4438H
+ tax: 251.42
+ total: 4443.52
+ ...
+"""
+
+OUT = {
+ 'bill-to': {
+ 'given': 'Chris',
+ 'address': {
+ 'city': 'Royal Oak',
+ 'postal': '48046',
+ 'lines': "458 Walkman Dr.\nSuite #292\n",
+ 'state': 'MI'
+ },
+ 'family': 'Dumars'
+ },
+ 'invoice': '34843',
+ 'date': '2001-01-23',
+ 'tax': '251.42',
+ 'product': [
+ {
+ 'sku': 'BL394D',
+ 'quantity': '4',
+ 'price': '450.00',
+ 'description': 'Basketball'
+ },
+ {
+ 'sku': 'BL4438H',
+ 'quantity': '1',
+ 'price': '2392.00',
+ 'description': 'Super Hoop'
+ }
+ ],
+ 'comments':
+ "Late afternoon is best. Backup contact is Nancy Billsmer @ 338-4338\n",
+ 'total': '4443.52'
+}
+
+class TestInput(unittest.TestCase):
+ """FIXME description of this class"""
+ def test_reader(self):
+ #my @lines = @$in;
+ #my $scalar = join("\n", @lines) . "\n";
+ #
+ #my @source = (
+ # {
+ # name= > 'Array reference',
+ # source= > $in,
+ # },
+ # {
+ # name= > 'Closure',
+ # source= > sub { shift @lines },
+ # },
+ # {
+ # name= > 'Scalar',
+ # source= > $scalar,
+ # },
+ # {
+ # name= > 'Scalar ref',
+ # source= > \$scalar,
+ # },
+ #);
+ #
+ #for my $src (@source) {
+ # my $name = $src -> {name};
+ # ok my $yaml = Data::YAML::Reader -> new, "$name: Created";
+ # isa_ok $yaml, 'Data::YAML::Reader';
+ #
+ # my $got = eval { $yaml -> read($src -> {source}) };
+ # unless (is_deeply $got, $out, "$name: Result matches") {
+ # local $Data::Dumper::Useqq = $Data::Dumper::Useqq = 1;
+ # diag(Data::Dumper -> Dump([$got], ['$got']));
+ # diag(Data::Dumper -> Dump([$out], ['$expected']));
+ # }
+ #}
+ pass