Add more unit tests.
[pyyaml/python3.git] / tests / test_representer.py
blob343d7f51e9086d17db660aa635b4f1ba96132a42
2 import test_appliance
3 from test_constructor import *
5 from yaml import *
7 class TestRepresenterTypes(test_appliance.TestAppliance):
9 def _testTypes(self, test_name, data_filename, code_filename):
10 data1 = eval(file(code_filename, 'rb').read())
11 data2 = None
12 output = None
13 try:
14 output = dump(data1, Dumper=MyDumper)
15 data2 = load(output, Loader=MyLoader)
16 self.failUnlessEqual(type(data1), type(data2))
17 try:
18 self.failUnlessEqual(data1, data2)
19 except AssertionError:
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:
28 raise
29 except:
30 print
31 print "OUTPUT:"
32 print output
33 print "NATIVES1:", data1
34 print "NATIVES2:", data2
35 raise
37 TestRepresenterTypes.add_tests('testTypes', '.data', '.code')