Module:Wd/sandbox/testcases/common

-- This module contains functions used in testcases. local p = {}

-- generates unit test object to be returned by a specific testcase module -- first argument: name of the module to test -- second argument: a table with the structure described in testcaseTable; used for testcases and reference values function p.generate_unit_tests_module_vs_table(module_to_test, testcases) local unit_tests_module = require("Module:UnitTests") function unit_tests_module:test for _, testcase in ipairs(testcases) do           input_data = testcase[1] expected_output = testcase[2] needs_ul = testcase[3] -- Use  and  tags when needed. if needs_ul then list_prefix, list_suffix = "", "" else list_prefix, list_suffix = "", "" end unit_tests_module:preprocess_equals(               list_prefix .. "" .. list_suffix,                expected_output            ) end end return unit_tests_module end

-- for testing a module against a module -- first argument: module to test -- second argument: module to be used for correct outputs -- third argument: a table with the structure described in testcaseTable; reference values are ignored function p.generate_unit_tests_module_vs_module(module_to_test, reference_module, testcases) local unit_tests_module = require("Module:UnitTests") function unit_tests_module:test for _, testcase in ipairs(testcases) do           input_data = testcase[1] needs_ul = testcase[3] -- Use  and  tags when needed. if needs_ul then list_prefix, list_suffix = "", "" else list_prefix, list_suffix = "", "" end unit_tests_module:preprocess_equals_preprocess(               list_prefix .. "" .. list_suffix,                list_prefix .. "" .. list_suffix            ) end end return unit_tests_module end

return p