Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(191)

Side by Side Diff: bindings/scripts/generate_idl_diff_test.py

Issue 2786203002: Roll 50: Copied IDLs, PYTHON scripts from WebKit removed deleted files in WebCore (Closed)
Patch Set: Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 #!/usr/bin/env python
2 # Copyright 2015 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file.
5
6 import generate_idl_diff
7 import os
8 import sys
9 import unittest
10
11 from generate_idl_diff import DIFF_TAG
12 from generate_idl_diff import DIFF_TAG_DELETED
13 from generate_idl_diff import DIFF_TAG_ADDED
14
15
16 testdata_path = os.path.join(
17 os.path.dirname(os.path.realpath(__file__)), 'testdata')
18 old_data_path = os.path.join(testdata_path, 'old_chrome.json')
19 new_data_path = os.path.join(testdata_path, 'new_chrome.json')
20
21
22 class TestGenerateIDLDiff(unittest.TestCase):
23
24 def setUp(self):
25 old = generate_idl_diff.load_json_file('old_chrome.json')
26 new = generate_idl_diff.load_json_file('new_chrome.json')
27 self.diff = generate_idl_diff.interfaces_diff(old, new)
28
29 def test_deleted_interface(self):
30 self.assertTrue('AnimationEffectReadOnly' in self.diff)
31 deleted_interface = self.diff.get('AnimationEffectReadOnly')
32 self.assertIsNotNone(deleted_interface)
33 self.assertEqual(deleted_interface.get(DIFF_TAG), DIFF_TAG_DELETED)
34
35 def test_added_interface(self):
36 self.assertTrue('AnimationEvent' in self.diff)
37 added_interface = self.diff.get('AnimationEvent')
38 self.assertIsNotNone(added_interface)
39 self.assertEqual(added_interface.get(DIFF_TAG), DIFF_TAG_ADDED)
40
41 def test_changed_interface(self):
42 self.assertTrue('ANGLEInstancedArrays' in self.diff)
43 changed_interface = self.diff.get('ANGLEInstancedArrays')
44 self.assertIsNotNone(changed_interface)
45 self.assertIsNone(changed_interface.get(DIFF_TAG))
46
47 def test_unchanged_interface(self):
48 self.assertFalse('AbstractWorker' in self.diff)
49
50 def test_unchanged_consts(self):
51 changed_interface = self.diff['ANGLEInstancedArrays']
52 members = changed_interface['Consts']
53 for member in members:
54 self.assertEqual(member['Name'], 'VERTEX_ATTRIB_ARRAY_DIVISOR')
55 self.assertEqual(member['Type'], 'unsigned long')
56 self.assertEqual(member['Value'], '0x88FE')
57
58 def test_changed_attribute(self):
59 changed_interface = self.diff['ANGLEInstancedArrays']
60 members = changed_interface['Attributes']
61 for member in members:
62 if member.get(DIFF_TAG) == DIFF_TAG_DELETED:
63 deleted = member
64 elif member.get(DIFF_TAG) == DIFF_TAG_ADDED:
65 added = member
66 else:
67 unchanged = member
68 self.assertEqual(deleted['Name'], 'animVal')
69 self.assertEqual(deleted['Type'], 'SVGAngle')
70 self.assertEqual(deleted['ExtAttributes'], [])
71 self.assertEqual(added['Name'], 'computedTiming')
72 self.assertEqual(added['Type'], 'ComputedTimingProperties')
73 self.assertEqual(added['ExtAttributes'], [{"Name": "maxChannelCount"}])
74 self.assertEqual(unchanged['Name'], 'timing')
75 self.assertEqual(unchanged['Type'], 'AnimationEffectTiming')
76 self.assertEqual(unchanged['ExtAttributes'], [])
77
78 def test_changed_operation(self):
79 changed_interface = self.diff['ANGLEInstancedArrays']
80 members = changed_interface['Operations']
81 deleted_arguments = [{"Type": "long", "Name": "primcount"}]
82 added_arguments = [{"Type": "unsigned long", "Name": "mode"}]
83 unchanged_arguments = [{"Type": "unsigned long", "Name": "mode"}]
84 for member in members:
85 if member.get(DIFF_TAG) == DIFF_TAG_DELETED:
86 deleted = member
87 elif member.get(DIFF_TAG) == DIFF_TAG_ADDED:
88 added = member
89 else:
90 unchanged = member
91 self.assertEqual(deleted['Name'], 'drawElementsInstancedANGLE')
92 self.assertEqual(deleted['Type'], 'void')
93 self.assertEqual(deleted['ExtAttributes'], [])
94 self.assertEqual(deleted['Arguments'], deleted_arguments)
95 self.assertEqual(added['Name'], 'drawElementsInstancedANGLE')
96 self.assertEqual(added['Type'], 'void')
97 self.assertEqual(added['ExtAttributes'], [])
98 self.assertEqual(added['Arguments'], added_arguments)
99 self.assertEqual(unchanged['Name'], 'drawArraysInstancedANGLE')
100 self.assertEqual(unchanged['Type'], 'void')
101 self.assertEqual(unchanged['ExtAttributes'], [])
102 self.assertEqual(unchanged['Arguments'], unchanged_arguments)
103
104
105 if __name__ == '__main__':
106 unittest.main()
OLDNEW
« no previous file with comments | « bindings/scripts/generate_idl_diff.py ('k') | bindings/scripts/generate_init_partial_interfaces.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698