Module:Lang/testcases/ISO 639 deprecated and override category from tag

local p = require('Module:UnitTests')

--[[--< T E S T _ P A T T E R N S _ G E T >

Build a table of test patterns where each entry in the table is a table with two members: {" ", ""}

]]

local function test_patterns_get(iana_data) local cat_from_tag = require('Module:Lang')._category_from_tag				-- use Module:Lang to create the 'expected results' local tpats = {}															-- collect test patterns here for code in pairs(iana_data) do												-- list of names not needed here local pattern = {}														-- here we assemble the test pattern for table.insert(pattern, code)												-- add it to the pattern table.insert(pattern, cat_from_tag ({code}))							-- call module:lang and add the 'expected results' for code to pattern table.insert(tpats, pattern)											-- accumulate in list of patterns end

local function comp(a, b)													-- local function used by table.sort return a[1] < b[1]														-- ascending sort by code end table.sort(tpats, comp)														-- make the list pretty return tpats																-- and done end

----< T E S T _ C A T E G O R Y _ F R O M _ T A G >--

function p:test_category_from_tag_iso_639_deprecated local test_patterns = test_patterns_get(mw.loadData('Module:Language/data/iana languages').deprecated) self:preprocess_equals_preprocess_many(, , '', test_patterns, {nowiki=1}) end

function p:test_category_from_tag_iso_639_override local test_patterns = test_patterns_get(mw.loadData('Module:Lang/data').override) self:preprocess_equals_preprocess_many(, , '', test_patterns, {nowiki=1}) end

return p