Documentation for this module may be created at Module:Cakm-translit/testcases/doc

local scdef, langdef  = 'Cakm', 'ccp'
local canonical_def
local ti = table.insert
return require("Module:transliteration module testcases"){
	module = "Cakm-translit",
    examples = {
-- The 59 lemmas as at 19 October 2021: (the two mere letters are excluded,
-- as is the one untransliterated lemmas ๐‘„Œ๐‘„–๐‘„ด)
    	{ "๐‘„ƒ๐‘„˜๐‘„ข",  "ฤdฤrฤ"},
    	{ "๐‘„‡๐‘„‹๐‘„ข",  "kฤแน…ฤrฤ"},
    	{ "๐‘„‡๐‘„ง",     "ka"},
    	{ "๐‘„‡๐‘„ง๐‘„™๐‘„–๐‘„ข", "kadhฤtฤrฤ"},
    	{ "๐‘„‡๐‘„ง๐‘„™๐‘„—๐‘„ช๐‘„›๐‘„ด", "kadhฤthup"},
    	{ "๐‘„‡๐‘„จ๐‘„ ๐‘„ฎ๐‘„", "kiแบoแน…"},
    	{ "๐‘„ˆ๐‘„ง๐‘„ข๐‘„ด๐‘„‰๐‘„ง๐‘„Œ๐‘„ด", "hรดrgรดc"},
    	{ "๐‘„‰", "gฤ"},
    	{ "๐‘„‰๐‘„ง๐‘„‹", "gaแน…ฤ"},
    	{ "๐‘„‰๐‘„ง๐‘„–๐‘„ด", "gat"},
    	{ "๐‘„‰๐‘„ง๐‘„™", "gadhฤ"},
    	{ "๐‘„‰๐‘„ง๐‘„ข๐‘„ด๐‘„", "garbฤ"},
    	{ "๐‘„Š๐‘„ง๐‘„ข๐‘„ด", "ghar"},
    	{ "๐‘„Œ๐‘„˜๐‘„จ", "cฤdi"},
    	{ "๐‘„Œ๐‘„š๐‘„ด", "cฤn"},
    	{ "๐‘„Œ๐‘„Ÿ๐‘„ด", "cฤm"},
    	{ "๐‘„Œ๐‘„ง๐‘„‰๐‘„ง๐‘„˜", "cagadฤ"},
    	{ "๐‘„Œ๐‘„ง๐‘„‰๐‘„ง๐‘„ฃ", "cagalฤ"},
    	{ "๐‘„๐‘„ฎ๐‘„ฃ๐‘„‰๐‘„ง๐‘„ข๐‘„ด", "solagรดr"},
    	{ "๐‘„Ž๐‘„ง๐‘„˜", "jadฤ"},
    	{ "๐‘„๐‘„ง๐‘„ข๐‘„ด", "jhar"},
    	{ "๐‘„’๐‘„‰๐‘„ช๐‘„ข๐‘„ด", "แนญhฤgur"},
    	{ "๐‘„’๐‘„™๐‘„ข๐‘„ด", "แนญฤdhฤr"},
    	{ "๐‘„–๐‘„ฃ", "tฤlฤ"},
    	{ "๐‘„—๐‘„‰", "thฤgฤ"},
    	{ "๐‘„—๐‘„ฃ๐‘„ด", "thฤl"},
    	{ "๐‘„—๐‘„ง๐‘„Ÿ๐‘„ด", "tham"},
    	{ "๐‘„—๐‘„ง๐‘„ข๐‘„ด", "thar"},
    	{ "๐‘„˜๐‘„ง๐‘„‰๐‘„š๐‘„ด", "dagฤn"},
    	{ "๐‘„›๐‘„š๐‘„จ", "pฤni"},
    	{ "๐‘„›๐‘„ช๐‘„š๐‘„จ", "puni"},
    	{ "๐‘„›๐‘„ฌ๐‘„‡๐‘„ด", "pek"},
    	{ "๐‘„๐‘„ฌ๐‘„‹๐‘„ด", "beแน…"},
    	{ "๐‘„ž๐‘„Œ๐‘„ด", "bhฤc"},
    	{ "๐‘„ž๐‘„Œ๐‘„ด๐‘„Ÿ๐‘„–๐‘„ด", "bhฤc-mฤt"},
    	{ "๐‘„ž๐‘„–๐‘„ด", "bhฤt"},
    	{ "๐‘„ž๐‘„ช๐‘„–๐‘„ด", "bhut"},
    	{ "๐‘„Ÿ๐‘„Œ๐‘„ด", "mฤc"},
    	{ "๐‘„Ÿ๐‘„ช๐‘„Ž๐‘„ด๐‘„๐‘„ฌ๐‘„", "mujjheแน…"},
    	{ "๐‘„ข๐‘„–๐‘„ด", "rฤt"},
    	{ "๐‘„ข๐‘„ง", "ra"},
    	{ "๐‘„ข๐‘„ง๐‘„–๐‘„ด", "rat"},
    	{ "๐‘„ฃ๐‘„‹๐‘„ง๐‘„š๐‘„จ", "lฤแน…oni"},
    	{ "๐‘„ฃ๐‘„‹๐‘„ณ๐‘„ก๐‘„ด", "lฤแน…yฤ"},
    	{ "๐‘„ฃ๐‘„‹๐‘„ด", "lฤแน…"},
    	{ "๐‘„ฃ๐‘„ช๐‘„ข๐‘„จ", "luri"},
    	{ "๐‘„ค๐‘„‡๐‘„ด", "wฤk"},
    	{ "๐‘„ฅ๐‘„Ÿ๐‘„ช๐‘„‡๐‘„ด", "sฤmuk"},
    	{ "๐‘„ฅ๐‘„ง๐‘„๐‘„ฅ๐‘„ง๐‘„ž", "saแนƒsabhฤ"},
    	{ "๐‘„ฅ๐‘„ง๐‘„š", "sanฤ"},
    	{ "๐‘„ฅ๐‘„ช๐‘„Ÿ๐‘„ช๐‘„ฃ๐‘„", "sumulฤแน…"},
    	{ "๐‘„ฆ๐‘„Œ๐‘„ด", "hฤc"},
    	{ "๐‘„ฆ๐‘„–๐‘„ด", "hฤt"},
    	{ "๐‘„ฆ๐‘„", "hฤbฤ"},
    	{ "๐‘„ฆ๐‘„ข๐‘„‰", "hฤrฤgฤ"},
    	{ "๐‘„ฆ๐‘„ง๐‘„™", "hadhฤ"},
    	{ "๐‘„ฆ๐‘„จ๐‘„ ๐‘„ง๐‘„", "hiแบoแน…"},
    	{ "๐‘„ฆ๐‘„จ๐‘„ข๐‘„ด๐‘„๐‘„ฌ", "hirbe"},
    	{ "๐‘„ฆ๐‘„ฎ๐‘„ข๐‘„ฎ๐‘„‹", "horoแน…ฤ"},
-- Pali stuff
		{ "๐‘„‡๐‘„ช๐‘„ˆ๐‘„ฉ๐‘„‰๐‘„‹๐‘„ด๐‘„Š๐‘„‚",  "kukhฤซgaแน…ghฤ", "Cakm", "pi"},
		{ "๐‘„‘๐‘„‘๐‘„ด๐‘„’๐‘„ฎ๐‘„“๐‘„ด๐‘„”๐‘„•๐‘„ด๐‘„“๐‘„ฉ๐‘„”๐‘„š๐‘„ด๐‘„–๐‘„ด", "แนญaแนญแนญhoแธแธhaแน‡แธฤซแธhant", "Cakm", "pi" },
		{ "๐‘„Ž๐‘„Œ๐‘„ด๐‘„๐‘„ช๐‘„๐‘„ฅ๐‘„Ž๐‘„ด๐‘„๐‘„ฌ๐‘„Ž๐‘„ณ๐‘„", "jacchuแนƒsajjhejรฑa", "Cakm", "pi" },
		{ "๐‘„ƒ๐‘„จ๐‘„›๐‘„•๐‘„ด๐‘„’๐‘„Ÿ๐‘„ด๐‘„๐‘„จ๐‘„œ๐‘„ž๐‘„ฎ", "ipaแน‡แนญhambiphabho", "Cakm", "pi" },
		{ "๐‘…‡๐‘„ณ๐‘„ ๐‘„๐‘„ด๐‘„๐‘„ฎ๐‘„ข๐‘…„๐‘„ณ๐‘„ฆ๐‘…„๐‘„จ๐‘„š๐‘„‚", "vyabboraแธทhaแธทinฤ", "Cakm", "pi" },
		{ "๐‘„›๐‘„ช๐‘„๐‘„ฃ๐‘„จ๐‘„‹๐‘„ด๐‘„‰", "puแนƒliแน…ga", "Cakm", "pi"},
		{ "๐‘„ƒ๐‘„‚๐‘„ฅ๐‘„ณ๐‘„š๐‘„ฎ๐‘„‡๐‘„ณ๐‘„ฃ๐‘„–๐‘„ณ๐‘„ค๐‘„‚๐‘„ ๐‘„ด๐‘„ฆ๐‘„ฃ๐‘„ฎ", "ฤsnoklatvฤyhalo", "Cakm", "pi" },
		{ "๐‘„…๐‘„‰๐‘„ ๐‘„ด๐‘„ฆ๐‘„ฎ", "ugayho", "Cakm", "pi" },
		{ "๐‘„š๐‘„จ๐‘„‰๐‘„ณ๐‘„ข๐‘„ฎ๐‘„™", "nigrodha", "Cakm", "pi"},
		{ "๐‘„›๐‘„Œ๐‘…‡๐‘„ด๐‘„ฆ๐‘„ฎ", "pacavho", "Cakm", "pi" },
		{ "๐‘„ƒ๐‘„‰๐‘„๐‘„๐‘„จ๐‘„", "agaแนƒchiแนƒ", "Cakm", "pi" },
		{ "๐‘„›๐‘„‚๐‘„›๐‘„ฎ", "pฤpo", "Cakm", "pi" },
		{ "๐‘„š๐‘„จ๐‘„๐‘„ด๐‘„๐‘„‚๐‘„š", "nibbฤna", "Cakm", "pi" },
		{ "๐‘„ƒ๐‘„ซ๐‘„‡๐‘„–๐‘„๐‘„ด๐‘„๐‘„ฎ",  "ลซkatabbo", "Cakm", "pi" },
		{ "๐‘„ƒ๐‘„ฎ๐‘„‡๐‘„‚๐‘„ฅ๐‘„Ÿ๐‘„ณ๐‘„ฆ๐‘„จ", "okฤsamhi", "Cakm", "pi" },
		{ "๐‘„†๐‘„ฆ๐‘„จ", "ehi", "Cakm", "pi" },
		{ "๐‘„ƒ๐‘„ฉ๐‘„–๐‘„ณ๐‘„ข๐‘„ฌ๐‘„˜๐‘„ด๐‘„™๐‘„ฎ๐‘„—๐‘„ซ๐‘„š๐‘„จ๐‘„Ÿ๐‘„ด", "ฤซtreddhothลซnim", "Cakm", "pi" },
		{ "๐‘…„๐‘„ด๐‘„ฆ๐‘„‚๐‘„ฅ๐‘„‚๐‘…„๐‘„ซ๐‘„", "แธทhฤsฤแธทลซแนƒ", "Cakm", "pi" },
   	--[[
    	{ "", "" },
    	--]]
    },
    sc = scdef, lang = langdef,
	func_with_link = function(text, should, sc, lang)
		local canonical_name
		if not canonical_def then
			local lang_object = require('Module:languages').getByCode(langdef)
				or error('The language code ' .. langdef .. ' is not valid.')
			canonical_def = lang_object:getCanonicalName()
		end
		local label = {}
		if lang and lang ~= langdef then
			local lang_object = require('Module:languages').getByCode(lang)
				or error('The language code ' .. lang .. ' is not valid.')
			canonical_name = lang_object:getCanonicalName()
			ti(label, lang);
			ti(label, ': ')
		else
			canonical_name = canonical_def
		end
		ti(label, '<span class="');
		ti(label, sc or scdef);
		ti(label, '" lang="');
		ti(label, lang or langdef);
		ti(label, '">[[');
		ti(label, text)
		ti(label, '#')
		ti(label, canonical_name)
		ti(label, '|')
		ti(label, text)
		ti(label, ']]</span>')
		return table.concat(label)
	end
}