#!/usr/bin/env python # Copyright (c) 2019 The Khronos Group Inc. # Use of this source code is governed by an MIT-style license that can be # found in the LICENSE.txt file. """ Generator for texturespecification* tests. This file needs to be run in its folder. """ import sys _DO_NOT_EDIT_WARNING = """ """ _HTML_TEMPLATE = """ WebGL Texture Specification Tests
""" _GROUPS = [ 'basic_teximage2d_2d_00', 'basic_teximage2d_2d_01', 'basic_teximage2d_cube_00', 'basic_teximage2d_cube_01', 'basic_teximage2d_cube_02', 'basic_teximage2d_cube_03', 'basic_teximage2d_cube_04', 'random_teximage2d_2d', 'random_teximage2d_cube', 'teximage2d_align', 'teximage2d_unpack_params', 'teximage2d_pbo_2d_00', 'teximage2d_pbo_2d_01', 'teximage2d_pbo_cube_00', 'teximage2d_pbo_cube_01', 'teximage2d_pbo_cube_02', 'teximage2d_pbo_cube_03', 'teximage2d_pbo_cube_04', 'teximage2d_pbo_params', 'teximage2d_depth', 'teximage2d_depth_pbo', 'basic_texsubimage2d_2d_00', 'basic_texsubimage2d_2d_01', 'basic_texsubimage2d_2d_02', 'basic_texsubimage2d_cube_00', 'basic_texsubimage2d_cube_01', 'basic_texsubimage2d_cube_02', 'basic_texsubimage2d_cube_03', 'basic_texsubimage2d_cube_04', 'texsubimage2d_empty_tex', 'texsubimage2d_align', 'texsubimage2d_unpack_params', 'texsubimage2d_pbo_2d_00', 'texsubimage2d_pbo_2d_01', 'texsubimage2d_pbo_cube_00', 'texsubimage2d_pbo_cube_01', 'texsubimage2d_pbo_cube_02', 'texsubimage2d_pbo_cube_03', 'texsubimage2d_pbo_cube_04', 'texsubimage2d_pbo_params', 'texsubimage2d_depth', 'basic_copyteximage2d', 'basic_copytexsubimage2d', 'basic_teximage3d_2d_array_00', 'basic_teximage3d_2d_array_01', 'basic_teximage3d_2d_array_02', 'basic_teximage3d_3d_00', 'basic_teximage3d_3d_01', 'basic_teximage3d_3d_02', 'basic_teximage3d_3d_03', 'basic_teximage3d_3d_04', 'teximage3d_unpack_params', 'teximage3d_pbo_2d_array_00', 'teximage3d_pbo_2d_array_01', 'teximage3d_pbo_3d_00', 'teximage3d_pbo_3d_01', 'teximage3d_pbo_params', 'teximage3d_depth', 'teximage3d_depth_pbo', 'basic_texsubimage3d_00', 'basic_texsubimage3d_01', 'basic_texsubimage3d_02', 'basic_texsubimage3d_03', 'basic_texsubimage3d_04', 'texsubimage3d_unpack_params', 'texsubimage3d_pbo_2d_array_00', 'texsubimage3d_pbo_2d_array_01', 'texsubimage3d_pbo_3d_00', 'texsubimage3d_pbo_3d_01', 'texsubimage3d_pbo_params', 'texsubimage3d_depth', 'texstorage2d_format_2d_00', 'texstorage2d_format_2d_01', 'texstorage2d_format_2d_02', 'texstorage2d_format_cube_00', 'texstorage2d_format_cube_01', 'texstorage2d_format_cube_02', 'texstorage2d_format_cube_03', 'texstorage2d_format_cube_04', 'texstorage2d_format_depth_stencil', 'texstorage2d_format_size', 'texstorage3d_format_2d_array_00', 'texstorage3d_format_2d_array_01', 'texstorage3d_format_2d_array_02', 'texstorage3d_format_3d_00', 'texstorage3d_format_3d_01', 'texstorage3d_format_3d_02', 'texstorage3d_format_3d_03', 'texstorage3d_format_depth_stencil', 'texstorage3d_format_size', ] def GenerateFilename(group): """Generate test filename.""" filename = group filename += ".html" return filename def WriteTest(filename, start, end): """Write one test.""" file = open(filename, "wb") file.write(_DO_NOT_EDIT_WARNING) file.write(_HTML_TEMPLATE % { 'start': start, 'end': end }) file.close def GenerateTests(): """Generate all tests.""" filelist = [] for ii in range(len(_GROUPS)): filename = GenerateFilename(_GROUPS[ii]) filelist.append(filename) WriteTest(filename, ii, ii + 1) return filelist def GenerateTestList(filelist): file = open("00_test_list.txt", "wb") file.write('\n'.join(filelist)) file.close def main(argv): """This is the main function.""" filelist = GenerateTests() GenerateTestList(filelist) if __name__ == '__main__': sys.exit(main(sys.argv[1:]))