5 teszt sikertelen. (frissítés)

Szöveg Várt Tényleges
test_Akkadian:
Sikeres ša 𒊭 𒊭
Szöveg Várt Tényleges
test_Arabic:
Sikeres al-Huruuf al-qamariyyat' الْحُرُوف الْقَمَرِيَّة الْحُرُوف الْقَمَرِيَّة
Sikeres al-Huruuf al-xamsiyyat' الْحُرُوف الشَّمْسِيَّة الْحُرُوف الشَّمْسِيَّة
Sikeres ealifu WlwaSli أَلِفُ ٱلْوَصْلِ أَلِفُ ٱلْوَصْلِ
Sikeres maae مَاء مَاء
Sikeres muemin مُؤْمِن مُؤْمِن
Sikeres eiDaafat' إِضَافَة إِضَافَة
Sikeres eaab آب آب
Sikeres qureaan قُرْآن قُرْآن
Sikeres qiTTat' قِطَّة قِطَّة
Sikeres faEEaal فَعَّال فَعَّال
Sikeres xayeu شَيْءُ شَيْءُ
Sikeres xayeaN شَيْءً شَيْءً
Sikeres daaeimaN دَائِمًا دَائِمًا
Sikeres mabduueat' مَبْدُوءَة مَبْدُوءَة
Sikeres mabduu'at' مَبْدُوءَة مَبْدُوءَة
Sikeres badaaeiyyuN بَدَائِيٌّ بَدَائِيٌّ
Sikeres badaaeat' بَدَاءَة بَدَاءَة
Sikeres maktuub مَكْتُوب مَكْتُوب
Sikeres taHriir تَحْرِير تَحْرِير
Sikeres EuZmaaa عُظْمَى عُظْمَى
Sikeres ean0 أَنْ أَنْ
Sikeres law0 لَوْ لَوْ
Sikeres xay'aN شَيْءً شَيْءً
Sikeres ta7riir تَحْرِير تَحْرِير
Sikeres 3axarat' عَشَرَة عَشَرَة
Szöveg Várt Tényleges
test_Armenian:
Sikeres azgaynac`um ազգայնացում ազգայնացում
Sikeres azgaynacʿum ազգայնացում ազգայնացում
Sikeres terew տերև տերև
Sikeres burz^uazia բուրժուազիա բուրժուազիա
Sikeres buržuazia բուրժուազիա բուրժուազիա
Sikeres kol_mnaki կողմնակի կողմնակի
Sikeres kołmnaki կողմնակի կողմնակի
Szöveg Várt Tényleges
test_Armenian_tr:
Sikeres azgaynac`um azgaynacʿum azgaynacʿum
Sikeres terew terew terew
Sikeres burz^uazia buržuazia buržuazia
Sikeres kol_mnaki kołmnaki kołmnaki
Szöveg Várt Tényleges
test_Avestan:
Sikeres ap 𐬀𐬞 𐬀𐬞
Sikeres xs.^uuas^ 𐬑𐬴𐬎𐬎𐬀𐬱 𐬑𐬴𐬎𐬎𐬀𐬱
Sikeres xṣ̌uuaš 𐬑𐬴𐬎𐬎𐬀𐬱 𐬑𐬴𐬎𐬎𐬀𐬱
Sikeres v@hrka_na 𐬬𐬆𐬵𐬭𐬐𐬁𐬥𐬀 𐬬𐬆𐬵𐬭𐬐𐬁𐬥𐬀
Sikeres vəhrkāna 𐬬𐬆𐬵𐬭𐬐𐬁𐬥𐬀 𐬬𐬆𐬵𐬭𐬐𐬁𐬥𐬀
Sikeres nae_za 𐬥𐬀𐬉𐬰𐬀 𐬥𐬀𐬉𐬰𐬀
Sikeres naēza 𐬥𐬀𐬉𐬰𐬀 𐬥𐬀𐬉𐬰𐬀
Sikeres zaaO 𐬰𐬃 𐬰𐬃
Sikeres zā̊ 𐬰𐬃 𐬰𐬃
Sikeres hizwaO 𐬵𐬌𐬰𐬎𐬎𐬂 𐬵𐬌𐬰𐬎𐬎𐬂
Sikeres hizuuå 𐬵𐬌𐬰𐬎𐬎𐬂 𐬵𐬌𐬰𐬎𐬎𐬂
Szöveg Várt Tényleges
test_Avestan_tr:
Sikeres ap ap ap
Sikeres xs.^uuas^ xṣ̌uuaš xṣ̌uuaš
Sikeres v@hrka_na vəhrkāna vəhrkāna
Sikeres nae_za naēza naēza
Sikeres zaaO zā̊ zā̊
Sikeres hizwaO hizuuå hizuuå
Szöveg Várt Tényleges
test_Germanic:
Sikeres *t'a_ko^` *þākǫ̂ *þākǫ̂
Sikeres *T'eudo_balt'az *Þeudōbalþaz *Þeudōbalþaz
Sikeres *bo_kijo_` *bōkijǭ *bōkijǭ
Szöveg Várt Tényleges
test_Gothic:
Sikeres ƕaiwa 𐍈𐌰𐌹𐍅𐌰 𐍈𐌰𐌹𐍅𐌰
Sikeres anþar 𐌰𐌽𐌸𐌰𐍂 𐌰𐌽𐌸𐌰𐍂
Sikeres fidwōr 𐍆𐌹𐌳𐍅𐍉𐍂 𐍆𐌹𐌳𐍅𐍉𐍂
Sikeres fidwor 𐍆𐌹𐌳𐍅𐍉𐍂 𐍆𐌹𐌳𐍅𐍉𐍂
Sikeres mikils 𐌼𐌹𐌺𐌹𐌻𐍃 𐌼𐌹𐌺𐌹𐌻𐍃
Sikeres hēr 𐌷𐌴𐍂 𐌷𐌴𐍂
Sikeres her 𐌷𐌴𐍂 𐌷𐌴𐍂
Sikeres vac 𐍈𐌰𐌸 𐍈𐌰𐌸
Szöveg Várt Tényleges
test_Greek:
Sikeres a__i ᾱͅ ᾱͅ
Sikeres a)lhqh/s ἀληθής ἀληθής
Sikeres a)lhqhs* ἀληθησ ἀληθησ
Sikertelen a)lhqhs- ἀληθησ- ἀληθης-
Sikeres a^)nh/r ᾰ̓νήρ ᾰ̓νήρ
Sikeres Phlhi+a/dhs Πηληϊάδης Πηληϊάδης
Sikeres Phlhi^+a^/dhs Πηληῐ̈ᾰ́δης Πηληῐ̈ᾰ́δης
Sikeres Πηληϊ^ά^δης Πηληῐ̈ᾰ́δης Πηληῐ̈ᾰ́δης
Sikeres e)a_/n ἐᾱ́ν ἐᾱ́ν
Sikeres ἐά_ν ἐᾱ́ν ἐᾱ́ν
Sikeres pa=sa^ πᾶσᾰ πᾶσᾰ
Sikeres u_(mei=s ῡ̔μεῖς ῡ̔μεῖς
Sikeres a/)^ner ᾰ̓́νερ ᾰ̓́νερ
Sikeres a/^)ner ᾰ̓́νερ ᾰ̓́νερ
Sikeres a)/^ner ᾰ̓́νερ ᾰ̓́νερ
Sikeres a)^/ner ᾰ̓́νερ ᾰ̓́νερ
Sikeres dai+/frwn δαΐφρων δαΐφρων
Sikeres dai/+frwn δαΐφρων δαΐφρων
Szöveg Várt Tényleges
test_Hellenic:
Sikeres *tat^t^o_ *taťťō *taťťō
Sikeres *d^o_'yyon *ďṓyyon *ďṓyyon
Sikeres *gw@n'n'o_ *gʷəňňō *gʷəňňō
Sikeres *gw@n^n^o_ *gʷəňňō *gʷəňňō
Sikeres *kwhe_r *kʷʰēr *kʷʰēr
Sikeres *khwe_r *kʷʰēr *kʷʰēr
Szöveg Várt Tényleges
test_Hittite:
Sikeres a-ku 𒀀𒆪 𒀀𒆪
Sikertelen an-tu-wa-ah-ha-as 𒀭𒌅𒉿𒄴𒄩𒀸 𒀭𒌅𒉿𒀪𒄩𒀸
Sikertelen an-tu-wa-aḫ-ḫa-aš 𒀭𒌅𒉿𒄴𒄩𒀸 𒀭𒌅𒉿𒀪𒄩𒀸
Sikertelen DINGIRIŠKUR 𒀭𒅎 DINGIRIŠKUR
Szöveg Várt Tényleges
test_Japanese:
Sikeres iro ha nihoheto いろ は にほへと いろ は にほへと
Sikeres uwyi no okuyama うゐ の おくやま うゐ の おくやま
Sikeres FAMIRI-MA-TO ファミリーマート ファミリーマート
Sikeres altu あっ あっ
Sikeres hi/mi/tu ひ・み・つ ひ・み・つ
Sikeres han'i はんい はんい
Sikeres hanni はんい はんい
Sikeres mannnaka まんなか まんなか
Sikeres attiike あっちいけ あっちいけ
Sikeres acchiike あっちいけ あっちいけ
Sikeres upnusi うpぬし うpぬし
Szöveg Várt Tényleges
test_Old_Church_Slavonic:
Sikeres ljudije людиѥ людиѥ
Sikeres azuh азъ азъ
Sikeres buky боукꙑ боукꙑ
Sikeres mŭčati мъчати мъчати
Sikertelen Iosija Иосиꙗ Iосиꙗ
Szöveg Várt Tényleges
test_Old_Persian:
Sikeres aitiiy 𐎠𐎡𐎫𐎡𐎹 𐎠𐎡𐎫𐎡𐎹
Sikeres raucah 𐎼𐎢𐎨𐏃 𐎼𐎢𐎨𐏃
Sikeres ham 𐏃𐎶 𐏃𐎶
Sikeres jiva 𐎪𐎺 𐎪𐎺
Sikeres daraniyakara 𐎭𐎼𐎴𐎹𐎣𐎼 𐎭𐎼𐎴𐎹𐎣𐎼
Sikeres daragama 𐎭𐎼𐎥𐎶 𐎭𐎼𐎥𐎶
Szöveg Várt Tényleges
test_Ossetian:
Sikeres fynʒ фындз фындз
Sikeres æxsæv ӕхсӕв ӕхсӕв
Sikeres c’æx цъӕх цъӕх
Sikeres biræǧ бирӕгъ бирӕгъ
Sikeres Ræstʒinad Рӕстдзинад Рӕстдзинад
Szöveg Várt Tényleges
test_PIE:
Sikeres *dye_'ws *dyḗws *dyḗws
Sikeres *n0mr0to's *n̥mr̥tós *n̥mr̥tós
Sikeres *tk'e'yti *tḱéyti *tḱéyti
Sikeres *h1es- *h₁es- *h₁es-
Sikeres *t_ep-e'h1(ye)-ti *tₔp-éh₁(ye)-ti *tₔp-éh₁(ye)-ti
Sikeres *h1e'k'wos *h₁éḱwos *h₁éḱwos
Sikeres *bhebho'ydhe *bʰebʰóydʰe *bʰebʰóydʰe
Sikeres *dh3to's *dh₃tós *dh₃tós
Sikeres *dhewg'h- *dʰewǵʰ- *dʰewǵʰ-
Szöveg Várt Tényleges
test_Parthian:
Sikeres tšynd 𐫤𐫢𐫏𐫗𐫅 𐫤𐫢𐫏𐫗𐫅
Sikeres xʾrtʾg 𐫟𐫀𐫡𐫤𐫀𐫃 𐫟𐫀𐫡𐫤𐫀𐫃
Sikeres hʾmhyrz 𐫍𐫀𐫖𐫍𐫏𐫡𐫉 𐫍𐫀𐫖𐫍𐫏𐫡𐫉
Sikeres ʿšnwhr 𐫙𐫢𐫗𐫇𐫍𐫡 𐫙𐫢𐫗𐫇𐫍𐫡
Sikeres hʾwsʾr 𐫍𐫀𐫇𐫘𐫀𐫡 𐫍𐫀𐫇𐫘𐫀𐫡
Szöveg Várt Tényleges
test_Persian:
Sikeres brAdr برادر برادر
Szöveg Várt Tényleges
test_Sanskrit:
Sikeres saMskRta/ संस्कृत संस्कृत
Sikeres saṃskṛtá संस्कृत संस्कृत
Sikeres kSatri/ya क्षत्रिय क्षत्रिय
Sikeres kṣatríya क्षत्रिय क्षत्रिय
Sikeres rAja suprabuddha राज सुप्रबुद्ध राज सुप्रबुद्ध
Sikeres rāja suprabuddha राज सुप्रबुद्ध राज सुप्रबुद्ध
Sikeres zAkyamuni शाक्यमुनि शाक्यमुनि
Sikeres śākyamuni शाक्यमुनि शाक्यमुनि
Sikeres siMha सिंह सिंह
Sikeres siṃha सिंह सिंह
Sikeres nAman नामन् नामन्
Sikeres nāman नामन् नामन्
Sikeres anA/ अना अना
Sikeres anā́ अना अना
Sikeres ayuSmAn अयुष्मान् अयुष्मान्
Sikeres ayuṣmān अयुष्मान् अयुष्मान्
Sikeres ghatsyati घत्स्यति घत्स्यति
Szöveg Várt Tényleges
test_Sanskrit_tr:
Sikeres saMskRta/ saṃskṛtá saṃskṛtá
Sikeres kSatri/ya kṣatríya kṣatríya
Sikeres rAja suprabuddha rāja suprabuddha rāja suprabuddha
Sikeres zAkyamuni śākyamuni śākyamuni
Sikeres siMha siṃha siṃha
Sikeres nAman nāman nāman
Sikeres anA/ anā́ anā́
Sikeres ayuSmAn ayuṣmān ayuṣmān
Sikeres ghatsyati ghatsyati ghatsyati
Szöveg Várt Tényleges
test_all:
Sikeres *dye_'ws *dyḗws *dyḗws
Sikeres *n0mr0to's *n̥mr̥tós *n̥mr̥tós
Sikeres *tk'e'yti *tḱéyti *tḱéyti
Sikeres *h1es- *h₁es- *h₁es-
Sikeres *t_ep-e'h1(ye)-ti *tₔp-éh₁(ye)-ti *tₔp-éh₁(ye)-ti
Sikeres *h1e'k'wos *h₁éḱwos *h₁éḱwos
Sikeres *bhebho'ydhe *bʰebʰóydʰe *bʰebʰóydʰe
Sikeres *dh3to's *dh₃tós *dh₃tós
Sikeres *t'a_ko^` *þākǫ̂ *þākǫ̂
Sikeres *T'eudo_balt'az *Þeudōbalþaz *Þeudōbalþaz
Sikeres *bo_kijo_` *bōkijǭ *bōkijǭ
Sikeres *tat^t^o_ *taťťō *taťťō
Sikeres *d^o_'yyon *ďṓyyon *ďṓyyon

local tests = require('Module:UnitTests')
local m_typing = require('Module:typing-aids')
local get_by_code = require('Module:languages').getByCode
local find_best_script = require('Module:scripts').findBestScript

local decompose = mw.ustring.toNFD

local langs = {}
local tag_funcs = {}

-- Assumes one script per language.
local function tag_gen(test_text, langCode)
	local func = tag_funcs[langCode]
	if func then
		return func
	else
		if not langs[langCode] then
			langs[langCode] = get_by_code(langCode) or error('The language code ' .. langCode .. ' is invalid.')
		end
		
		local scCode = find_best_script(test_text, langs[langCode]):getCode() or
			error('No script could be found for the text ' .. test_text .. ' and the language code ' .. langCode .. '.')
		
		local before, after = '<span class="' .. scCode .. '" lang="' .. langCode .. '">', '</span>'
		function func(text)
			return before .. text .. after
		end
		tag_funcs[langCode] = func
		return func	
	end
end

local options_cache = {}
function tests:check_output(code, expected, lang, transliteration)
	local result
	
	if lang then
		result = m_typing.replace{ lang, code }
	else
		result = m_typing.replace{code}
	end
	
	result = decompose(result)
	expected = decompose(expected)
	
	local options = options_cache[lang]
	if not options and lang and not transliteration then
		options = { display = tag_gen(result, lang) }
		options_cache[lang] = options
	end
	
	self:equals(
		code,
		result,
		expected,
		options
	)
end

function tests:do_tests(examples, lang)
	local transliteration = lang ~= nil and lang:find("%-tr$") ~= nil
	for _, example in ipairs(examples) do
		if #example == 3 and not transliteration then
			self:check_output(example[1], example[3], lang)
			if example[2] ~= example[1] then
				self:check_output(example[2], example[3], lang)
			end
		else
			self:check_output(example[1], example[2], lang, transliteration)
		end
	end
end

function tests:test_all()
	local examples = {
		{ "*dye_'ws", "*dyḗws" },
		{ "*n0mr0to's", "*n̥mr̥tós" },
		{ "*tk'e'yti", "*tḱéyti" },
		{ "*h1es-", "*h₁es-" },
		{ "*t_ep-e'h1(ye)-ti", "*tₔp-éh₁(ye)-ti" },
		{ "*h1e'k'wos", "*h₁éḱwos" },
		{ "*bhebho'ydhe", "*bʰebʰóydʰe" },
		{ "*dh3to's", "*dh₃tós" },
		{ "*t'a_ko^`", "*þākǫ̂" },
		{ "*T'eudo_balt'az", "*Þeudōbalþaz" },
		{ "*bo_kijo_`", "*bōkijǭ" },
		{ "*tat^t^o_", "*taťťō" },
		{ "*d^o_'yyon", "*ďṓyyon" },
	}
	
	self:do_tests(examples)
end

local ae_examples = {
	{ "ap", "ap", "𐬀𐬞" },
	{ "xs.^uuas^", "xṣ̌uuaš", "𐬑𐬴𐬎𐬎𐬀𐬱" },
	{ "v@hrka_na", "vəhrkāna", "𐬬𐬆𐬵𐬭𐬐𐬁𐬥𐬀" },
	{ "nae_za", "naēza", "𐬥𐬀𐬉𐬰𐬀" },
	{ "zaaO", "zā̊", "𐬰𐬃"},
	{ "hizwaO", "hizuuå", "𐬵𐬌𐬰𐬎𐬎𐬂"},
}

function tests:test_Avestan()
	self:do_tests(ae_examples, "ae")
end

function tests:test_Avestan_tr()
	self:do_tests(ae_examples, "ae-tr")
end

function tests:test_Akkadian()
	local examples = { 
		{ "ša", "𒊭" },
		-- { "transliteration", "result" },
	}
	self:do_tests(examples, "akk")
end

local hy_examples = {
	{ "azgaynac`um", "azgaynacʿum", "ազգայնացում" },
	{ "terew", "terew", "տերև" },
	{ "burz^uazia", "buržuazia", "բուրժուազիա" },
	{ "kol_mnaki", "kołmnaki", "կողմնակի" },
}

function tests:test_Armenian()
	self:do_tests(hy_examples, "hy")
end

function tests:test_Armenian_tr()
	self:do_tests(hy_examples, "hy-tr")
end

function tests:test_Arabic()
	local examples = {
		{ "al-Huruuf al-qamariyyat'", "الْحُرُوف الْقَمَرِيَّة" },
		{ "al-Huruuf al-xamsiyyat'", "الْحُرُوف الشَّمْسِيَّة" },
		{ "ealifu WlwaSli", "أَلِفُ ٱلْوَصْلِ" },
		{ "maae", "مَاء" },
		{ "muemin", "مُؤْمِن" },
		{ "eiDaafat'", "إِضَافَة" },
		{ "eaab", "آب" },
		{ "qureaan", "قُرْآن" },
		{ "qiTTat'", "قِطَّة" },
		{ "faEEaal", "فَعَّال" },
		{ "xayeu", "شَيْءُ" },
		{ "xayeaN", "شَيْءً" },
		{ "daaeimaN", "دَائِمًا" },
		{ "mabduueat'", "مَبْدُوءَة" },
		{ "mabduu'at'", "مَبْدُوءَة" },
		{ "badaaeiyyuN", "بَدَائِيٌّ" },
		{ "badaaeat'", "بَدَاءَة" },
		{ "maktuub", "مَكْتُوب" },
		{ "taHriir", "تَحْرِير" },
		{ "EuZmaaa", "عُظْمَى" },
		{ "ean0", "أَنْ" },
		{ "law0", "لَوْ" },
		{ "xay'aN", "شَيْءً" },
		{ "ta7riir", "تَحْرِير" },
		{ "3axarat'", "عَشَرَة" },
	}
	
	self:do_tests(examples, "ar")
end

function tests:test_Persian()
	local examples = {
		{ "brAdr", "برادر" },
	}
	
	self:do_tests(examples, "fa")
end

function tests:test_PIE()
	local examples = {
		{ "*dye_'ws", "*dyḗws" },
		{ "*n0mr0to's", "*n̥mr̥tós" },
		{ "*tk'e'yti", "*tḱéyti" },
		{ "*h1es-", "*h₁es-" },
		{ "*t_ep-e'h1(ye)-ti", "*tₔp-éh₁(ye)-ti" },
		{ "*h1e'k'wos", "*h₁éḱwos" },
		{ "*bhebho'ydhe", "*bʰebʰóydʰe" },
		{ "*dh3to's", "*dh₃tós" },
		{ "*dhewg'h-", "*dʰewǵʰ-" },
	}
	
	self:do_tests(examples, "ine-pro")
end

function tests:test_Germanic()
	local examples = {
		{ "*t'a_ko^`", "*þākǫ̂" },
		{ "*T'eudo_balt'az", "*Þeudōbalþaz" },
		{ "*bo_kijo_`", "*bōkijǭ" },
	}
	
	self:do_tests(examples, "gem-pro")
end

function tests:test_Gothic()
	local examples = {
		{ "ƕaiwa", "𐍈𐌰𐌹𐍅𐌰" },
		{ "anþar", "𐌰𐌽𐌸𐌰𐍂" },
		{ "fidwōr", "𐍆𐌹𐌳𐍅𐍉𐍂" },
		{ "fidwor", "𐍆𐌹𐌳𐍅𐍉𐍂" },
		{ "mikils", "𐌼𐌹𐌺𐌹𐌻𐍃" },
		{ "hēr", "𐌷𐌴𐍂" },
		{ "her", "𐌷𐌴𐍂" },
		{ "vac", "𐍈𐌰𐌸" },
--		{ "", "" },
	}
	
	self:do_tests(examples, "got")
end

function tests:test_Hellenic()
	local examples = {
		{ "*tat^t^o_", "*taťťō" },
		{ "*d^o_'yyon", "*ďṓyyon" },
		{ "*gw@n'n'o_", "*gʷəňňō" },
		{ "*gw@n^n^o_", "*gʷəňňō" },
		{ "*kwhe_r", "*kʷʰēr" },
		{ "*khwe_r", "*kʷʰēr" },
	}
	
	self:do_tests(examples, "grk-pro")
end

function tests:test_Greek()
	local examples = {
		{ "a__i", "ᾱͅ" },
		{ "a)lhqh/s", "ἀληθής" },
		{ "a)lhqhs*", "ἀληθησ" },
		{ "a)lhqhs-", "ἀληθησ-" },
		{ "a^)nh/r", "ᾰ̓νήρ" },
		{ "Phlhi+a/dhs", "Πηληϊάδης" },
		{ "Phlhi^+a^/dhs", "Πηληῐ̈ᾰ́δης" },
		{ "Πηληϊ^ά^δης", "Πηληῐ̈ᾰ́δης" },
		{ "e)a_/n", "ἐᾱ́ν" },
		{ "ἐά_ν", "ἐᾱ́ν" },
		{ "pa=sa^", "πᾶσᾰ" },
		{ "u_(mei=s", "ῡ̔μεῖς" },
		{ "a/)^ner", "ᾰ̓́νερ" },
		{ "a/^)ner", "ᾰ̓́νερ" },
		{ "a)/^ner", "ᾰ̓́νερ" },
		{ "a)^/ner", "ᾰ̓́νερ" },
		{ "dai+/frwn", "δαΐφρων" },
		{ "dai/+frwn", "δαΐφρων" },
	}
	
	self:do_tests(examples, "grc")
end

function tests:test_Hittite()
	local examples = {
		{ "a-ku", "𒀀𒆪" },
		{ "an-tu-wa-ah-ha-as", "𒀭𒌅𒉿𒄴𒄩𒀸" },
		{ "an-tu-wa-aḫ-ḫa-aš", "𒀭𒌅𒉿𒄴𒄩𒀸" },
		{ "<sup>DINGIR</sup>IŠKUR", "𒀭𒅎" }, -- Akkadian actually?
	}
	
	self:do_tests(examples, "hit")
end

local sa_examples = {
	{ "saMskRta/", "saṃskṛtá", "संस्कृत" },
	{ "kSatri/ya", "kṣatríya", "क्षत्रिय" },
	{ "rAja suprabuddha", "rāja suprabuddha", "राज सुप्रबुद्ध"},
	{ "zAkyamuni", "śākyamuni", "शाक्यमुनि"},
	{ "siMha", "siṃha", "सिंह"},
	{ "nAman", "nāman", "नामन्"},
	{ "anA/", "anā́", "अना" },
	{ "ayuSmAn", "ayuṣmān", "अयुष्मान्"},
	{ "ghatsyati", "ghatsyati", "घत्स्यति"},
}

function tests:test_Sanskrit()
	self:do_tests(sa_examples, "sa")
end

function tests:test_Sanskrit_tr()
	self:do_tests(sa_examples, "sa-tr")
end

function tests:test_Old_Persian()
	local examples = {
		{ "aitiiy", "𐎠𐎡𐎫𐎡𐎹" },
		{ "raucah", "𐎼𐎢𐎨𐏃" },
		{ "ham", "𐏃𐎶" },
		{ "jiva", "𐎪𐎺"},
		{ "daraniyakara", "𐎭𐎼𐎴𐎹𐎣𐎼" },
		{ "daragama", "𐎭𐎼𐎥𐎶" },
	}

	self:do_tests(examples, "peo")
end

function tests:test_Parthian()
	local examples = {
		{ "tšynd", "𐫤𐫢𐫏𐫗𐫅" },
		{ "xʾrtʾg", "𐫟𐫀𐫡𐫤𐫀𐫃" },
		{ "hʾmhyrz", "𐫍𐫀𐫖𐫍𐫏𐫡𐫉" },
		{ "ʿšnwhr", "𐫙𐫢𐫗𐫇𐫍𐫡"},
		{ "hʾwsʾr", "𐫍𐫀𐫇𐫘𐫀𐫡" },
	}

	self:do_tests(examples, "xpr")
end

function tests:test_Japanese()
	local examples = {
		{ "iro ha nihoheto", "いろ は にほへと" },
		{ "uwyi no okuyama", "うゐ の おくやま" },
		{ "FAMIRI-MA-TO", "ファミリーマート" },
		{ "altu", "あっ" },
		{ "hi/mi/tu", "ひ・み・つ" },
		{ "han'i", "はんい" },
		{ "hanni", "はんい" },
		{ "mannnaka", "まんなか" },
		{ "attiike", "あっちいけ" },
		{ "acchiike", "あっちいけ" },
		{ "upnusi", "うpぬし" },
	}

	self:do_tests(examples, "ja")
end

function tests:test_Old_Church_Slavonic()
	local examples = {
		{ "ljudije", "людиѥ" },
		{ "azuh", "азъ" },
		{ "buky", "боукꙑ" },
		{ "mŭčati", "мъчати" },
		{ "Iosija", "Иосиꙗ" },
	}
	
	self:do_tests(examples, "cu")
end

function tests:test_Ossetian()
	local examples = {
		{ "fynʒ", "фындз" },
		{ "æxsæv", "ӕхсӕв" },
		{ "c’æx", "цъӕх" },
		{ "biræǧ", "бирӕгъ" },
		{ "Ræstʒinad", "Рӕстдзинад" },
	}
	
	self:do_tests(examples, "os")
end


--[[
To add another example, place the following code
	within the braces of an "examples" table:
		{ "shortcut", "expected result" },
		{ "", "" },
or for Sanskrit,
	{ "Harvard-Kyoto", "IAST", "Devanagari" },
	{ "", "", "" },
]]

return tests