Module:Language/testcases

-- Unit tests for Module:Language. Click talk page to run tests. local p = require 'Module:UnitTests' local m_Language = require 'Module:Language'

local function tag(word, languageCode) return ' ' .. word .. ' ' end

local decompose = mw.ustring.toNFD function p:check_makeEntryName(languageCode, word, expected) self:equals(		tag(word, languageCode),		decompose(m_Language.makeEntryName(word, languageCode)),		decompose(expected),		{ display = function (word) return tag(word, languageCode) end }) end

p['test makeEntryName'] = function (self) local examples = { { "ar", "العَرَبِيَّة", "العربية" }, { "grc", "δημοκρᾰτῐ́ᾱ", "δημοκρατία" }, { "ha", "àzàhàr̃iyyā̀", "azahariyya" }, { "la", "coëō", "coeo" }, { "nci", "Quetzalcōātl", "Quetzalcoatl" }, { "ru", "ру́сский язы́к", "русский язык" }, { "sh", "ćá", "ća" }, -- fake word with c-acute and tonal acute; add a real word if you know one }	self:iterate(examples, "check_makeEntryName") end

return p