source: pyyaml/trunk/tests/test_representer.py @ 144

Revision 144, 1.1 KB checked in by xi, 8 years ago (diff)

Add more unit tests.

RevLine 
[133]1
2import test_appliance
[144]3from test_constructor import *
[133]4
5from yaml import *
6
[144]7class TestRepresenterTypes(test_appliance.TestAppliance):
[133]8
9    def _testTypes(self, test_name, data_filename, code_filename):
[136]10        data1 = eval(file(code_filename, 'rb').read())
11        data2 = None
[133]12        output = None
13        try:
[136]14            output = dump(data1, Dumper=MyDumper)
15            data2 = load(output, Loader=MyLoader)
[144]16            self.failUnlessEqual(type(data1), type(data2))
[133]17            try:
[136]18                self.failUnlessEqual(data1, data2)
[133]19            except AssertionError:
[136]20                if isinstance(data1, dict):
21                    data1 = data1.items()
22                    data1.sort()
23                    data1 = repr(data1)
24                    data2 = data2.items()
25                    data2.sort()
26                    data2 = repr(data2)
27                if data1 != data2:
[133]28                    raise
29        except:
30            print
31            print "OUTPUT:"
32            print output
[136]33            print "NATIVES1:", data1
34            print "NATIVES2:", data2
[133]35            raise
36
[144]37TestRepresenterTypes.add_tests('testTypes', '.data', '.code')
[133]38
Note: See TracBrowser for help on using the repository browser.