diff options
Diffstat (limited to 'test/10-input.py')
-rw-r--r-- | test/10-input.py | 103 |
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 |