• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# -*- coding: utf-8 -*-
2
3import sys
4
5RENAME_LIST_2011_1_2011_2 = [
6	("dEQP-GLES2.functional.shaders.random.basic_expressions.*",			"dEQP-GLES2.functional.shaders.random.basic_expression."),
7	("dEQP-GLES2.functional.shaders.random.scalar_conversions.*",			"dEQP-GLES2.functional.shaders.random.scalar_conversion."),
8	("dEQP-GLES2.functional.fbo.render.color_clears_*",						"dEQP-GLES2.functional.fbo.render.color_clear."),
9	("dEQP-GLES2.functional.fbo.render.intersecting_quads_*",				"dEQP-GLES2.functional.fbo.render.depth."),
10	("dEQP-GLES2.functional.fbo.render.mix_*",								"dEQP-GLES2.functional.fbo.render.color.mix_"),
11	("dEQP-GLES2.functional.fbo.render.blend_*",							"dEQP-GLES2.functional.fbo.render.color.blend_"),
12	("dEQP-GLES2.functional.fbo.render.shared_colorbuffer_clears_*",		"dEQP-GLES2.functional.fbo.render.shared_colorbuffer_clear."),
13	("dEQP-GLES2.functional.fbo.render.shared_colorbuffer_*",				"dEQP-GLES2.functional.fbo.render.shared_colorbuffer."),
14	("dEQP-GLES2.functional.fbo.render.shared_depthbuffer_*",				"dEQP-GLES2.functional.fbo.render.shared_depthbuffer."),
15	("dEQP-GLES2.functional.fbo.render.texsubimage_*",						"dEQP-GLES2.functional.fbo.render.texsubimage."),
16	("dEQP-GLES2.functional.fbo.render.recreate_colorbuffer_*",				"dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_"),
17	("dEQP-GLES2.functional.fbo.render.recreate_depthbuffer_*",				"dEQP-GLES2.functional.fbo.render.recreate_depthbuffer.no_rebind_"),
18	("dEQP-GLES2.functional.fbo.render.resize_*",							"dEQP-GLES2.functional.fbo.render.resize.")
19]
20
21RENAME_LIST_2011_2_2011_3 = [
22	("dEQP-GLES2.usecases.ui.src_over_linear_1_batched",                    "dEQP-GLES2.usecases.ui.src_over_linear_batched_1"),
23	("dEQP-GLES2.usecases.ui.src_over_linear_2_batched",                    "dEQP-GLES2.usecases.ui.src_over_linear_batched_2"),
24	("dEQP-GLES2.usecases.ui.src_over_linear_4_batched",                    "dEQP-GLES2.usecases.ui.src_over_linear_batched_4"),
25	("dEQP-GLES2.usecases.ui.src_over_nearest_1_batched",                   "dEQP-GLES2.usecases.ui.src_over_nearest_batched_1"),
26	("dEQP-GLES2.usecases.ui.src_over_nearest_2_batched",                   "dEQP-GLES2.usecases.ui.src_over_nearest_batched_2"),
27	("dEQP-GLES2.usecases.ui.src_over_nearest_4_batched",                   "dEQP-GLES2.usecases.ui.src_over_nearest_batched_4"),
28	("dEQP-GLES2.usecases.ui.premultiplied_src_over_linear_1_batched",      "dEQP-GLES2.usecases.ui.premultiplied_src_over_linear_batched_1"),
29	("dEQP-GLES2.usecases.ui.premultiplied_src_over_linear_2_batched",      "dEQP-GLES2.usecases.ui.premultiplied_src_over_linear_batched_2"),
30	("dEQP-GLES2.usecases.ui.premultiplied_src_over_linear_4_batched",      "dEQP-GLES2.usecases.ui.premultiplied_src_over_linear_batched_4"),
31	("dEQP-GLES2.usecases.ui.premultiplied_src_over_nearest_1_batched",     "dEQP-GLES2.usecases.ui.premultiplied_src_over_nearest_batched_1"),
32	("dEQP-GLES2.usecases.ui.premultiplied_src_over_nearest_2_batched",     "dEQP-GLES2.usecases.ui.premultiplied_src_over_nearest_batched_2"),
33	("dEQP-GLES2.usecases.ui.premultiplied_src_over_nearest_4_batched",     "dEQP-GLES2.usecases.ui.premultiplied_src_over_nearest_batched_4"),
34	("dEQP-GLES2.usecases.ui.no_blend_linear_1_batched",                    "dEQP-GLES2.usecases.ui.no_blend_linear_batched_1"),
35	("dEQP-GLES2.usecases.ui.no_blend_linear_2_batched",                    "dEQP-GLES2.usecases.ui.no_blend_linear_batched_2"),
36	("dEQP-GLES2.usecases.ui.no_blend_linear_4_batched",                    "dEQP-GLES2.usecases.ui.no_blend_linear_batched_4"),
37	("dEQP-GLES2.usecases.ui.no_blend_nearest_1_batched",                   "dEQP-GLES2.usecases.ui.no_blend_nearest_batched_1"),
38	("dEQP-GLES2.usecases.ui.no_blend_nearest_2_batched",                   "dEQP-GLES2.usecases.ui.no_blend_nearest_batched_2"),
39	("dEQP-GLES2.usecases.ui.no_blend_nearest_4_batched",                   "dEQP-GLES2.usecases.ui.no_blend_nearest_batched_4")
40]
41
42RENAME_LIST_2011_3_2011_4 = []
43
44RENAME_LIST_2011_4_2012_1 = [
45	("dEQP-GLES2.functional.vertex_arrays.multiple_attributes.output_types.*", "dEQP-GLES2.functional.vertex_arrays.multiple_attributes.input_types."),
46]
47
48RENAME_LIST_2012_2_2012_3 = [
49	("dEQP-GLES2.functional.shaders.operator.geometric.refract.mediump_float_vertex",   	"dEQP-GLES2.functional.shaders.operator.geometric.refract.mediump_float_float_vertex"),
50	("dEQP-GLES2.functional.shaders.operator.geometric.refract.mediump_float_fragment",		"dEQP-GLES2.functional.shaders.operator.geometric.refract.mediump_float_float_fragment"),
51	("dEQP-GLES2.functional.shaders.operator.geometric.refract.highp_float_vertex",     	"dEQP-GLES2.functional.shaders.operator.geometric.refract.highp_float_float_vertex"),
52	("dEQP-GLES2.functional.shaders.operator.geometric.refract.highp_float_fragment",   	"dEQP-GLES2.functional.shaders.operator.geometric.refract.highp_float_float_fragment"),
53	("dEQP-GLES2.functional.shaders.operator.geometric.refract.mediump_vec2_vertex",    	"dEQP-GLES2.functional.shaders.operator.geometric.refract.mediump_vec2_float_vertex"),
54	("dEQP-GLES2.functional.shaders.operator.geometric.refract.mediump_vec2_fragment",  	"dEQP-GLES2.functional.shaders.operator.geometric.refract.mediump_vec2_float_fragment"),
55	("dEQP-GLES2.functional.shaders.operator.geometric.refract.highp_vec2_vertex",      	"dEQP-GLES2.functional.shaders.operator.geometric.refract.highp_vec2_float_vertex"),
56	("dEQP-GLES2.functional.shaders.operator.geometric.refract.highp_vec2_fragment",    	"dEQP-GLES2.functional.shaders.operator.geometric.refract.highp_vec2_float_fragment"),
57	("dEQP-GLES2.functional.shaders.operator.geometric.refract.mediump_vec3_vertex",    	"dEQP-GLES2.functional.shaders.operator.geometric.refract.mediump_vec3_float_vertex"),
58	("dEQP-GLES2.functional.shaders.operator.geometric.refract.mediump_vec3_fragment",  	"dEQP-GLES2.functional.shaders.operator.geometric.refract.mediump_vec3_float_fragment"),
59	("dEQP-GLES2.functional.shaders.operator.geometric.refract.highp_vec3_vertex",      	"dEQP-GLES2.functional.shaders.operator.geometric.refract.highp_vec3_float_vertex"),
60	("dEQP-GLES2.functional.shaders.operator.geometric.refract.highp_vec3_fragment",    	"dEQP-GLES2.functional.shaders.operator.geometric.refract.highp_vec3_float_fragment"),
61	("dEQP-GLES2.functional.shaders.operator.geometric.refract.mediump_vec4_vertex",    	"dEQP-GLES2.functional.shaders.operator.geometric.refract.mediump_vec4_float_vertex"),
62	("dEQP-GLES2.functional.shaders.operator.geometric.refract.mediump_vec4_fragment",  	"dEQP-GLES2.functional.shaders.operator.geometric.refract.mediump_vec4_float_fragment"),
63	("dEQP-GLES2.functional.shaders.operator.geometric.refract.highp_vec4_vertex",      	"dEQP-GLES2.functional.shaders.operator.geometric.refract.highp_vec4_float_vertex"),
64	("dEQP-GLES2.functional.shaders.operator.geometric.refract.highp_vec4_fragment",    	"dEQP-GLES2.functional.shaders.operator.geometric.refract.highp_vec4_float_fragment"),
65	("dEQP-GLES2.functional.negative_api.texture.copyteximage2d_unequal_width_height_cube",	"dEQP-GLES2.functional.negative_api.texture.copyteximage2d_inequal_width_height_cube"),
66	("dEQP-GLES2.functional.negative_api.texture.teximage2d_unequal_width_height_cube",		"dEQP-GLES2.functional.negative_api.texture.teximage2d_inequal_width_height_cube"),
67	("dEQP-GLES2.functional.negative_api.vertex_array.draw_arrays",							"dEQP-GLES2.functional.negative_api.vertex_array.draw_arrays_invalid_program"),
68	("dEQP-GLES2.functional.negative_api.vertex_array.draw_elemens",						"dEQP-GLES2.functional.negative_api.vertex_array.draw_elements_invalid_program"),
69	("dEQP-GLES2.functional.negative_api.shader.attach_shader_invalid_object",				"dEQP-GLES2.functional.negative_api.shader.attach_shader"),
70	("dEQP-GLES2.functional.negative_api.shader.detach_shader_invalid_object",				"dEQP-GLES2.functional.negative_api.shader.detach_shader"),
71	("dEQP-GLES2.usecases.shadow.shadowmap.1sample.1_vertex_lights_no_texture",				"dEQP-GLES2.usecases.shadow.shadowmaps.basic_1sample.1_vertex_lights_no_texture"),
72	("dEQP-GLES2.usecases.shadow.shadowmap.1sample.2_vertex_lights_no_texture",             "dEQP-GLES2.usecases.shadow.shadowmaps.basic_1sample.2_vertex_lights_no_texture"),
73	("dEQP-GLES2.usecases.shadow.shadowmap.1sample.4_vertex_lights_no_texture",             "dEQP-GLES2.usecases.shadow.shadowmaps.basic_1sample.4_vertex_lights_no_texture"),
74	("dEQP-GLES2.usecases.shadow.shadowmap.1sample.1_vertex_lights",                        "dEQP-GLES2.usecases.shadow.shadowmaps.basic_1sample.1_vertex_lights"),
75	("dEQP-GLES2.usecases.shadow.shadowmap.1sample.2_vertex_lights",                        "dEQP-GLES2.usecases.shadow.shadowmaps.basic_1sample.2_vertex_lights"),
76	("dEQP-GLES2.usecases.shadow.shadowmap.1sample.4_vertex_lights",                        "dEQP-GLES2.usecases.shadow.shadowmaps.basic_1sample.4_vertex_lights"),
77	("dEQP-GLES2.usecases.shadow.shadowmap.1sample.1_fragment_lights",                      "dEQP-GLES2.usecases.shadow.shadowmaps.basic_1sample.1_fragment_lights"),
78	("dEQP-GLES2.usecases.shadow.shadowmap.1sample.2_fragment_lights",                      "dEQP-GLES2.usecases.shadow.shadowmaps.basic_1sample.2_fragment_lights"),
79	("dEQP-GLES2.usecases.shadow.shadowmap.1sample.4_fragment_lights",                      "dEQP-GLES2.usecases.shadow.shadowmaps.basic_1sample.4_fragment_lights"),
80	("dEQP-GLES2.usecases.shadow.shadowmap.4sample.1_vertex_lights_no_texture",             "dEQP-GLES2.usecases.shadow.shadowmaps.basic_4sample.1_vertex_lights_no_texture"),
81	("dEQP-GLES2.usecases.shadow.shadowmap.4sample.2_vertex_lights_no_texture",             "dEQP-GLES2.usecases.shadow.shadowmaps.basic_4sample.2_vertex_lights_no_texture"),
82	("dEQP-GLES2.usecases.shadow.shadowmap.4sample.4_vertex_lights_no_texture",             "dEQP-GLES2.usecases.shadow.shadowmaps.basic_4sample.4_vertex_lights_no_texture"),
83	("dEQP-GLES2.usecases.shadow.shadowmap.4sample.1_vertex_lights",                        "dEQP-GLES2.usecases.shadow.shadowmaps.basic_4sample.1_vertex_lights"),
84	("dEQP-GLES2.usecases.shadow.shadowmap.4sample.2_vertex_lights",                        "dEQP-GLES2.usecases.shadow.shadowmaps.basic_4sample.2_vertex_lights"),
85	("dEQP-GLES2.usecases.shadow.shadowmap.4sample.4_vertex_lights",                        "dEQP-GLES2.usecases.shadow.shadowmaps.basic_4sample.4_vertex_lights"),
86	("dEQP-GLES2.usecases.shadow.shadowmap.4sample.1_fragment_lights",                      "dEQP-GLES2.usecases.shadow.shadowmaps.basic_4sample.1_fragment_lights"),
87	("dEQP-GLES2.usecases.shadow.shadowmap.4sample.2_fragment_lights",                      "dEQP-GLES2.usecases.shadow.shadowmaps.basic_4sample.2_fragment_lights"),
88	("dEQP-GLES2.usecases.shadow.shadowmap.4sample.4_fragment_lights",                      "dEQP-GLES2.usecases.shadow.shadowmaps.basic_4sample.4_fragment_lights"),
89	("dEQP-GLES2.usecases.shadow.shadowmap.16sample.1_vertex_lights_no_texture",            "dEQP-GLES2.usecases.shadow.shadowmaps.basic_16sample.1_vertex_lights_no_texture"),
90	("dEQP-GLES2.usecases.shadow.shadowmap.16sample.2_vertex_lights_no_texture",            "dEQP-GLES2.usecases.shadow.shadowmaps.basic_16sample.2_vertex_lights_no_texture"),
91	("dEQP-GLES2.usecases.shadow.shadowmap.16sample.4_vertex_lights_no_texture",            "dEQP-GLES2.usecases.shadow.shadowmaps.basic_16sample.4_vertex_lights_no_texture"),
92	("dEQP-GLES2.usecases.shadow.shadowmap.16sample.1_vertex_lights",                       "dEQP-GLES2.usecases.shadow.shadowmaps.basic_16sample.1_vertex_lights"),
93	("dEQP-GLES2.usecases.shadow.shadowmap.16sample.2_vertex_lights",                       "dEQP-GLES2.usecases.shadow.shadowmaps.basic_16sample.2_vertex_lights"),
94	("dEQP-GLES2.usecases.shadow.shadowmap.16sample.4_vertex_lights",                       "dEQP-GLES2.usecases.shadow.shadowmaps.basic_16sample.4_vertex_lights"),
95	("dEQP-GLES2.usecases.shadow.shadowmap.16sample.1_fragment_lights",                     "dEQP-GLES2.usecases.shadow.shadowmaps.basic_16sample.1_fragment_lights"),
96	("dEQP-GLES2.usecases.shadow.shadowmap.16sample.2_fragment_lights",                     "dEQP-GLES2.usecases.shadow.shadowmaps.basic_16sample.2_fragment_lights"),
97	("dEQP-GLES2.usecases.shadow.shadowmap.16sample.4_fragment_lights",                     "dEQP-GLES2.usecases.shadow.shadowmaps.basic_16sample.4_fragment_lights")
98]
99
100RENAME_LIST_2012_3_2012_4 = [
101	("dEQP-GLES2.functional.depth.*",				"dEQP-GLES2.functional.fragment_ops.depth."),
102	("dEQP-GLES2.functional.stencil.*",				"dEQP-GLES2.functional.fragment_ops.stencil.")
103]
104
105def readCaseList (filename):
106	f = open(filename, 'r')
107	cases = []
108	for line in f:
109		if line[0:5] == "TEST:":
110			cases.append(line[6:].strip())
111	f.close()
112	return cases
113
114def isWildcardPattern (pattern):
115	return pattern[-1:] == '*'
116
117# returns (cases, renames)
118def renameCases (cases, rename):
119	renamedCases	= []
120	renamedSet		= set()
121	renames			= []
122	for case in cases:
123		renamed = None
124
125		for src, dst in rename:
126			if isWildcardPattern(src) and case[:len(src)-1] == src[:-1]:
127				renamed = dst + case[len(src)-1:]
128				break
129			elif case == src:
130				renamed = dst
131				break
132
133		if renamed != None:
134			renames.append((case, renamed))
135			case = renamed
136
137		# It is possible that some later case is renamed to case already seen in the list
138		assert not case in renamedSet or renamed != None
139		if case not in renamedSet:
140			renamedCases.append(case)
141			renamedSet.add(case)
142
143	return (renamedCases, renames)
144
145# returns (added, removed) lists
146def diffCaseLists (old, new):
147	added	= []
148	removed	= []
149
150	oldSet = set(old)
151	newSet = set(new)
152
153	# build added list
154	for case in new:
155		if not case in oldSet:
156			added.append(case)
157
158	# build removed set
159	for case in old:
160		if not case in newSet:
161			removed.append(case)
162
163	return (added, removed)
164
165if __name__ == "__main__":
166	if len(sys.argv) != 3:
167		print "%s [old caselist] [new caselist]" % sys.argv[0]
168		sys.exit(-1)
169
170	oldCases	= readCaseList(sys.argv[1])
171	newCases	= readCaseList(sys.argv[2])
172	rename		= RENAME_LIST_2012_3_2012_4
173
174	renamedCases, renameList	= renameCases(oldCases, rename)
175	added, removed				= diffCaseLists(renamedCases, newCases)
176
177#	for src, dst in rename:
178#		print "RENAME: %s -> %s" % (src, dst)
179
180	for case in added:
181		print "ADD: %s" % case
182
183	for src, dst in renameList:
184		print "RENAME: %s -> %s" % (src, dst)
185
186	for case in removed:
187		print "REMOVE: %s" % case
188