Module:sa-utilities/translit/SLP1-to-Sinh/testcases

require("Module:log globals") -- Examine Lua logs at end of preview for results. local tests = require('Module:UnitTests') local from_sinh = require('Module:sa-utilities/translit/Sinh-to-SLP1') local to_sinh = require('Module:sa-utilities/translit/SLP1-to-Sinh') local lang = nil local sc = nil local display function tests:test_round_trip local options = {} for _, case in pairs({		{'ක', 'ka'},		{'විද්‍වාංස්', 'vidvAMs'},		{'ලිඛති', 'liKati'}, --		{'ඛ', 'La'}, -- This test should be failed.		{'උෂ‍්ණ', 'uzRa'}, -- CG p31		{'ඌන', 'Una'}, --CG p32		{'කාණ', 'kARa'}, --CG p32		{'කර්‍ණ', 'karRa'}, --CG p32		{'ඛාදන්', 'KAdan'}, --CG p32		{'ගණ', 'gaRa'}, --CG p32		{'ඝන', 'Gana'}, --CG p32		{'තෘණ', 'tfRa'}, --CG p32		{'තෘෂ‍්ණා', 'tfzRA'}, --CG p32		{'ස‍්තන', 'stana'}, --CG p32		{'වර්‍ණ', 'varRa'}, --CG p32		{'ව්‍රණ', 'vraRa'}, --CG p32		{'වන', 'vana'}, --CG p32		{'ප්‍රාණ', 'prARa'}, --CG p32		{'පුනඃ', 'punaH'}, --CG p32		{'කෘ', 'kf'}, --CG p32		{'කලශ', 'kalaSa'}, --CG p32		{'ඝට', 'Gawa'}, --CG p32		{'කාල', 'kAla'}, --CG p32		{'දෘඪ', 'dfQa'}, --CG p32		{'දංෂ‍්ට්‍රා', 'daMzwrA'}, --CG p32		{'ජටා', 'jawA'}, --CG p32		{'දල', 'dala'}, --CG p32		{'ජල', 'jala'}, --CG p32		{'ජ‍්වල', 'jvala'}, --CG p32		{'තඩ', 'taqa'}, --CG p32		{'තිල', 'tila'}, --CG p32		{'තාල', 'tAla'}, --CG p32 {'දාඨිකා', 'dAWikA'}, --CG p32 {'ජාලක', 'jAlaka'}, --CG p32 {'මෘ', 'mf'}, --CG p32 {'මල', 'mala'}, --CG p32 {'මාල්‍ය', 'mAlya'}, --CG p32 {'ලවණ', 'lavaRa'}, --CG p33 {'ලශුන', 'laSuna'}, --CG p33 {'පක්‍ව', 'pakva'}, --CG p13 {'දක්‍ෂ', 'dakza'}, --CG p13 {'දග්‍ධ', 'dagDa'}, --CG p13 {'යඥ', 'yajYa'}, --CG p13 {'රාඥී', 'rAjYI'}, --CG p13 {'අර්‍ත්‍ථ', 'artTa'}, --CG p13 {'සත‍්ත්‍ව', 'sattva'}, --CG p13 {'ග්‍රන්‍ථ', 'granTa'}, --CG p13 {'අන්‍ධ', 'anDa'}, --CG p13 {'අන්‍වය', 'anvaya'}, --CG p13 {'පඤ්‍ච', 'paYca'}, --CG p14 {'අට්‍ඨ', 'awWa'}, --CG p14 but Pali! {'ද්‍වි', 'dvi'}, --CG p15 {'ද්‍වීප', 'dvIpa'}, --CG p15 {'මධ්‍ය', 'maDya'}, --CG p15 {'ධර්‍ම', 'Darma'}, --CG p15 {'දීර්‍ඝ', 'dIrGa'}, --CG p15 --		{'යන‍්ත්‍ර', 'yantra'}, --CG p15 {'ව්‍යාඝ්‍ර', 'vyAGra'}, --CG p15 {'ප්‍රඥා', 'prajYA'}, -- See word itself. -- There are strange writings for aṃśa 'side' and vaṃśa 'lineage' at CG p15. -- The two writings of -nd- are incompatible! {'Currently distrusted'}, {'අඦන', 'aYjana'}, --CG p14 {'Incompatible writings'}, {'බුද‍්ධ', 'budDa'}, -- See word itself. {'බුද්‍ධ', 'budDa'}, -- See word itself. {'යුද්‍ධ', 'yudDa'}, --CG p15 {'සුද්‍ධ', 'sudDa'}, --CG p15 {'ප්‍රභඞ‍්ගුර', 'praBaNgura'}, -- See word itself. {'ශෘඟ', 'SfNga'}, --CG p14 {'ලිඟ', 'liNga'}, --CG p14 {'පණ‍්ඩිතඃ', 'paRqitaH'}, -- See පණ‍්ඩිත {'දඬ', 'daRqa'}, --CG p14 {'මඬුක', 'maRquka'}, --CG p14 {'චන්‍දන', 'candana'}, --CG p13 {'ස‍්පන්‍දන', 'spandana'}, -- See word itself. {'චඳ්‍ර', 'candra'}, --CG p14 {'සුඳර', 'sundara'}, --CG p14 {'තම‍්බුද‍්ධ', 'tambuddham'}, -- See බුද‍්ධ or බුද්‍ධ {'ලඹ', 'lamba'}, --CG p13 {'අඹර', 'ambara'}, --CG p15 -- Cons coverage:   k kh g gh j ṭ ḍ ḍh ṇ t d dh n p v l ś s ḥ -- Cluster coverage: kv kṣ gdh ghr ṇg jñ jv ñc ñj ṭṭh ṇḍ ttv ddh dv dhy ntr nth nd ndr ndh nv dv pr mb rgh rtth rṇ rm ly vy vr ṣṇ ṣṭr st -- Dep coverage:    a ā i ī u ṛ -- Ind coverage:    u ū -- Other:           ṃ }) do		local slp2 = case[2]		if slp2 then			local sinh_in = case[1]			local slp1 = from_sinh.tr(sinh_in, lang, sc)			local sinh_out = to_sinh.tr(slp1, lang, sc)			local expected = ' '..sinh_in ..' = ' .. slp2			local obtained = ' '..sinh_out..' = ' .. slp1			tests:equals(..sinh_in.., obtained, expected, options)		else			tests:header(case[1])		end	end end

return tests