Modul:pi-Latn-translit/testcases
A modult a Modul:pi-Latn-translit/testcases/doc lapon tudod dokumentálni
local tests = require('Module:UnitTests')
tr = require('Module:pi-Latn-translit').tr
-- A single letter field is the principal transliteration to the script, encoded as the lowercase letter usable for Template pi-alt.
-- (No transliteration, no test.) An explanation for the choice of transliteration may be given in the field whose name is formed
-- by suffix '_just', e.g fields 'l' and 'l_just' for the script encoded as 'Lana'. The explanation is printed out if the test is
-- deemed to have failed.
-- The field aborts is set to a true value if converting the string causes a test terminating error condition to be reported.
local cases = {
{"vulhati", l = "ᩅᩩᩃ᩠ᩉᨲᩥ"},
{"khalvapi", l = "ᨡᩃ᩠ᩅᨷᩥ"},
-- Clusters with final 'y':
{"vākyaṃ", l = "ᩅᩤᨠ᩠ᨿᩴ"},
{"kyāhaṃ", l = "ᨠ᩠ᨿᩣᩉᩴ"},
{"khyāte", l = "ᨡ᩠ᨿᩣᨲᩮ"},
{"mukhyato", l = "ᨾᩩᨡ᩠ᨿᨲᩮᩣ"},
{"saṅkhyāvāro", l = "ᩈᩘᨡ᩠ᨿᩣᩅᩤᩁᩮᩣ", aborts = 1},
{"asaṅkhyeyyāni", l = "ᩋᩈᩘᨡ᩠ᨿᩮᨿ᩠ᨿᩣᨶᩥ", aborts = 1},
{"gyadā", l = "ᨣ᩠ᨿᨴᩤ", l_just = "Cf. NT ᨴᩤ"},
{"ārogyaṃ", l = "ᩋᩣᩁᩮᩣᨣ᩠ᨿᩴ"},
{"ghyaṇa", l = "ᨥ᩠ᨿᨱ"},
{"māghya", l = "ᨾᩣᨥ᩠ᨿ"},
{"laṅghyate", l = "ᩃᩘᩉ᩠ᨿᨲᩮ", aborts = 1},
{"cyatthe", l = "ᨧ᩠ᨿᨲ᩠ᨳᩮ"},
{"ucyate", l = "ᩏᨧ᩠ᨿᨲᩮ"},
{"jyādīhi", l = "ᨩ᩠ᨿᩣᨴᩦᩉᩥ"},
{"pavvajyanti", l = "ᨷᩅ᩠ᩅᨩ᩠ᨿᨶ᩠ᨲᩥ"},
{"nāṭyaṃ", l = "ᨶᩣᨭ᩠ᨿᩴ"},
{"saṭhye", l = "ᩈᨮ᩠ᨿᩮ"},
{"chaṭṭhyatthe", l = "ᨨᨭᩛ᩠ᨿᨲ᩠ᨳᩮ"},
{"kaḍyādīhi", l = "ᨠᨯ᩠ᨿᩣᨴᩦᩉᩥ"},
{"tuṇḍyādīhi", l = "ᨲᩩᨱ᩠ᨯ᩠ᨿᩣᨴᩦᩉᩥ", aborts = 1},
{"ṇyamhi", l = "ᨱ᩠ᨿᨾ᩠ᩉᩥ"},
{"āṇaṇyaṃ", l = "ᩋᩣᨱᨱ᩠ᨿᩴ"},
{"tyāhaṃ", l = "ᨲ᩠ᨿᩣᩉᩴ"},
{"ratyā", l = "ᩁᨲ᩠ᨿᩣ"},
{"thyaṃpañcantehidādhikā", l = "ᨳ᩠ᨿᩴᨷᨬ᩠ᨧᨶ᩠ᨲᩮᩉᩥᨴᩤᨵᩥᨠᩣ"},
{"kathyate", l = "ᨠᨳ᩠ᨿᨲᩮ"},
{"titthyā", l = "ᨲᩥᨲ᩠ᨳ᩠ᨿᩣ"},
{"dyassa", l = "ᨴ᩠ᨿᩔ"},
{"syādyuppatti", l = "ᩈ᩠ᨿᩣᨴ᩠ᨿᩩᨷ᩠ᨷᨲ᩠ᨲᩥ"},
{"dhyādīhi", l = "ᨵ᩠ᨿᩣᨴᩦᩉᩥ", l_just="Cf. NT ᨻ᩠ᨿᩣᨵᩥ from Pali byādhi"},
{"osadhyo", l = "ᩋᩰᩈᨵ᩠ᨿᩮᩣ", l_just="Cf. NT ᨻ᩠ᨿᩣᨵᩥ from Pali byādhi"},
{"nyādayo", l = "ᨶ᩠ᨿᩣᨴᨿᩮᩣ"},
{"atthantaranyāso", l = "ᩋᨲ᩠ᨳᨶ᩠ᨲᩁᨶ᩠ᨿᩣᩈᩮᩣ"},
{"pyatha", l = "ᨷ᩠ᨿᨳ"},
{"ṇiṇāpyāpīhi", l = "ᨱᩥᨱᩣᨷ᩠ᨿᩣᨷᩦᩉᩥ", l_just="Cf. NT ᨻ᩠ᨿᩣᨵᩥ from Pali byādhi"},
{"phyasīnāmake", l = "ᨹ᩠ᨿᩈᩦᨶᩣᨾᨠᩮ"},
{"byākāsi", l = "ᨻ᩠ᨿᩣᨠᩣᩈᩥ", l_just="Cf. NT ᨻ᩠ᨿᩣᨵᩥ from Pali byādhi"},
{"abyākato", l = "ᩋᨻ᩠ᨿᩣᨠᨲᩮᩣ", l_just="Cf. NT ᨻ᩠ᨿᩣᨵᩥ from Pali byādhi"},
{"bhyādīhi", l = "ᨽ᩠ᨿᩣᨴᩦᩉᩥ"},
{"nabhyā", l = "ᨶᨽ᩠ᨿᩣ"},
{"myāyaṃ", l = "ᨾ᩠ᨿᩣᨿᩴ"},
{"paṇamāmyahaṃ", l = "ᨷᨱᨾᩣᨾ᩠ᨿᩉᩴ"},
{"seyyathāpi", l = "ᩈᩮᨿ᩠ᨿᨳᩣᨷᩥ"},
{"ryamhi", l = "ᩁ᩠ᨿᨾ᩠ᩉᩥ"},
{"kalyāṇaṃ", l = "ᨠᩃ᩠ᨿᩣᨱᩴ"},
{"vyaggha", l = "ᩅ᩠ᨿᨣ᩠ᨥ"},
{"syādyantaṃ", l = "ᩈ᩠ᨿᩣᨴ᩠ᨿᨶ᩠ᨲᩴ"},
{"ālasyaṃ", l = "ᩋᩣᩃᩈ᩠ᨿᩴ"},
{"bāhye", l = "ᨻᩤᩉ᩠ᨿᩮ"},
-- Clusters with final v
{"kvaci", l = "ᨠ᩠ᩅᨧᩥ"},
{"yāvatakvassa", l = "ᨿᩣᩅᨲᨠ᩠ᩅᩔ"},
{"khvāhaṃ", l = "ᨡ᩠ᩅᩣᩉᩴ"},
{"yadākhvāhaṃ", l = "ᨿᨴᩤᨡ᩠ᩅᩣᩉᩴ", l_just = "Pali dāna is loaned into NT as ᨴᩤ᩠ᨶ"},
{"cakkhvādito", l = "ᨧᨠ᩠ᨧ᩠ᩅᩣᨴᩥᨲᩮᩣ"},
{"tiṭṭhagvādīni", l = "ᨲᩥᨭᩛᨣ᩠ᩅᩣᨴᩦᨶᩥ"},
{"laghvāhārova", l = "ᩃᨥ᩠ᩅᩣᩉᩣᩁᩮᩣᩅ"},
{"paṭilaṅvarappadāno", l = "ᨷᨭᩥᩃᩘᩅᩁᨷ᩠ᨷᨴᩤᨶᩮᩣ", l_just = "Pali dāna is loaned into NT as ᨴᩤ᩠ᨶ"},
{"cve", l = "ᨧ᩠ᩅᩮ"},
{"kyecvā", l = "ᨠ᩠ᨿᩮᨧ᩠ᩅᩣ"},
{"jvā", l = "ᨩ᩠ᩅᩣ"},
{"sajjva", l = "ᩈᨩ᩠ᨩ᩠ᩅ"},
{"nañvacanena", l = "ᨶᨬ᩠ᩅᨧᨶᩮᨶ"},
{"ṇvu", l = "ᨱ᩠ᩅᩩ"},
{"ṇvādi", l = "ᨱ᩠ᩅᩣᨴᩥ"},
{"tvaṃ", l = "ᨲ᩠ᩅᩴ"},
{"nikkhamitvā", l = "ᨶᩥᨠ᩠ᨡᨾᩥᨲ᩠ᩅᩣ"},
{"vatthvettha", l = "ᩅᨧ᩠ᨳ᩠ᩅᩮᨲ᩠ᨳ"},
{"dve", l = "ᨴ᩠ᩅᩮ"},
{"vidvā", l = "ᩅᩥᨴ᩠ᩅᩣ"},
{"anveti", l = "ᩋᨶ᩠ᩅᩮᨲᩥ"},
{"nānvāgameyya", l = "ᨶᩣᨶ᩠ᩅᩣᨣᨾᩮᨿ᩠ᨿ"},
{"nvajja", l = "ᨶ᩠ᩅᨩ᩠ᨩ"},
{"pvā", l = "ᨷ᩠ᩅᩤ", l_just="Cf. NT ᨣ᩠ᩅᩤ᩠ᨯ"},
{"pubvenivāsoti", l = "ᨷᩩᨻ᩠ᩅᩮᨶᩥᩅᩤᩈᩮᩣᨲᩥ"},
{"ambvādīhi", l = "ᩋᨾᩛ᩠ᩅᩣᨴᩦᩉᩥ", aborts = 1},
{"bhvāpā", l = "ᨽ᩠ᩅᩣᨷᩤ"},
{"pubbanipātabhvassa", l = "ᨷᩩᨻᩛᨶᩥᨷᩤᨲᨽ᩠ᩅᩔ"},
{"mve", l = "ᨾ᩠ᩅᩮ"},
{"yvāyaṃ", l = "ᨿ᩠ᩅᩣᨿᩴ"},
-- See above for -vv-. I didn't trust vv- example.
{"svāssa", l = "ᩈ᩠ᩅᩣᩔ"},
{"disvā", l = "ᨴᩥᩈ᩠ᩅᩣ"},
{"hvayati", l = "ᩉ᩠ᩅᨿᨲᩥ"},
{"juhvati", l = "ᨩᩩᩉ᩠ᩅᨲᩥ"},
{"bahvābādho", l = "ᨻᩉ᩠ᩅᩣᨻᩤᨵᩮᩤ", l_just = "Cf. NT ᨵᩤᨲᩩ from Pali dhātu."},
-- Clusters with final h
{"mayhaṃ", l = "ᨾᨿ᩠ᩉᩴ"},
{"mūḷho", l = "ᨾᩪᩊ᩠ᩉᩮᩣ"},
{"nhatvā", l = "ᨶ᩠ᩉᨲ᩠ᩅᩣ"},
{"nhāru", l = "ᨶ᩠ᩉᩣᩁᩩ"},
{"sāyanhe", l = "ᩈᩣᨿᨶ᩠ᩉᩮ"},
-- Clusters with initial niggahita
{"tasmiṃyeva", l = "ᨲᩈ᩠ᨾᩥᩴᨿᩮᩅ"},
{"evaṃrūpo", l = "ᩑᩅᩴᩁᩪᨷᩮᩤ"},
{"evaṃladdhanāmo", l = "ᩑᩅᩴᩃᨴ᩠ᨵᨶᩣᨾᩮᩣ"},
{"saṃvattati", l = "ᩈᩴᩅᨲ᩠ᨲᨲᩥ"},
{"āhaṃsu", l = "ᩋᩣᩉᩴᩈᩩ"},
{"taṃhetu", l = "ᨲᩴᩉᩮᨲᩩ"},
{"taṃḷīkaṃ", l = "ᨲᩴᩊᩦᨠᩴ"},
-- Clusters with final r
{"kriyā", l = "ᨠᩕᩥᨿᩣ"},
{"ukre", l = "ᩏᨠᩕᩮ"},
{"nigrodha", l = "ᨶᩥᨣᩕᩮᩣᨵ", l_just = "Cf. NT ᨣᩕᩣ."},
{"saṃghraṭṭhaṃ", l = "ᩈᩴᨥᩕᨭᩛᩴ"},
{"jrā", l = "ᨩᩕᩣ"},
{"tre", l = "ᨲᩕᩮ"},
{"tatra", l = "ᨲᨲᩕ"},
{"dravatā", l = "ᨴᩕᩅᨲᩣ"},
{"indriyā", l = "ᩍᨶ᩠ᨴᩕᩥᨿᩣ", aborts = 1},
{"bhadro", l = "ᨽᨴᩕᩮᩣ", l_just="Cf. NT ᨴᩕᩣ᩠ᨶ Round AA is the commonernot universal. Borrowed into NT as ᨽᨴᩕ."},
{"tanra", l = "ᨲᨶᩕ"},
{"prānadassī", l = "ᨷᩕᩣᨶᨴᩔᩦ", ["l_just"]="Cf. NT ᨷᩕᩣᨠᩣ᩠ᩁ"},
{"kaphrū", l = "ᨠᨹᩕᩪ"},
{"brāhmaṇo", l = "ᨻᩕᩣᩉ᩠ᨾᨱᩮᩣ", ["l_just"]="Cf. NT ᨻᩕᩣᩉ᩠ᨾᨱ᩺"},
{"bhrūnahā", l = "ᨽᩕᩪᨶᩉᩣ"},
{"mrā", l = "ᨾᩕᩣ"},
{"kalrāṇa", l = "ᨠᩃᩕᩣᨱ"},
{"srī", l = "ᩈᩕᩦ"}, -- hapax legomen!
-- Clusters with initial s
{"slā", l = "ᩈᩖᩣ"},
{"tasmiṃ", l = "ᨲᩈ᩠ᨾᩥᩴ"},
{"sthita", l = "ᩈ᩠ᨳᩥᨲ"},
{"sneho", l = "ᩈ᩠ᨶᩮᩉᩮᩣ"},
{"viddhastā", l = "ᩅᩥᨴ᩠ᨵᩈ᩠ᨲᩣ"},
{"vanaspatī", l = "ᩅᨶᩈ᩠ᨷᨲᩦ"},
-- Clusters with final l
{"kleso", l = "ᨠᩖᩮᩈᩮᩣ"},
{"uklāpo", l = "ᩏᨠᩖᩣᨷᩮᩤ"},
{"gloso", l = "ᨣᩖᩮᩤᩈᩮᩣ", ["l_just"]="Cf. NT ᨣᩖᩤ"}, -- Want to cite reference named MFL
{"sabbaglā", l = "ᩈᨻᩛᨣᩖᩤ", ["l_just"]="Cf. NT ᨣᩖᩤ"},
{"nlā", l = "ᨶᩖᩣ"},
{"plavanti", l = "ᨷᩖᩅᨶ᩠ᨲᩥ"},
{"niplavitaṃ", l = "ᨶᩥᨷᩖᩅᩥᨲᩴ"},
{"pallaṅkaṃ", l = "ᨷᩃᩖᩘᨠᩴ"}, -- Conceivable stem variation here!
-- Clusters not covered above
{"buddhuppāda", l = "ᨻᩩᨴ᩠ᨵᩩᨷ᩠ᨷᩣᨴ", l_just = "Borrowed into NT in this form."},
{"buddhānussati", l = "ᨻᩩᨴ᩠ᨵᩤᨶᩩᩔᨲᩥ", l_just = "Borrowed into NT in this form."},
-- Other special combinations.
{"dhātu", l = "ᨵᩤᨲᩩ", l_just = "Loaned into NT as ᨵᩤᨲᩩ"},
}
--[[ here be the tests ]]
function tests:test_Tai_Tham()
local res;
for ia, va in pairs({false, true}) do
va = not not va
for ic, vc in ipairs(cases) do
if va == not not vc.aborts then
if vc.l then
res = tr(vc[1], "Lana")
-- equals(name, actual, expected, options)
if res == vc.l then
tests:equals(vc[1], res, vc.l)
elseif vc.l_just then
tests:equals(vc[1], res, vc.l.."<br>("..vc.l_just..")")
else
tests:equals(vc[1], res, vc.l)
end
end
end
end
end
end
return tests