Module:typing-aids/testcases: difference between revisions

From Wiktionary, the free dictionary
Jump to navigation Jump to search
Content deleted Content added
more
diaeresis-acute testcases
Line 105: Line 105:
check_output("a)/^ner", "ᾰ̓́νερ", "grc")
check_output("a)/^ner", "ᾰ̓́νερ", "grc")
check_output("a)^/ner", "ᾰ̓́νερ", "grc")
check_output("a)^/ner", "ᾰ̓́νερ", "grc")
check_output("dai+/frwn", "δαΐφρων", "grc")
check_output("dai/+frwn", "δαΐφρων", "grc")
end
end



Revision as of 10:25, 7 February 2017

4 of 69 tests failed. (refresh)

TextExpectedActual
test1_Avestan:
Passedap𐬀𐬞𐬀𐬞
Failedxsshu-uash𐬑𐬴𐬎𐬎𐬀𐬱𐬑𐬴𐬎-𐬎𐬀𐬱
Failedvaehrkaa-na𐬬𐬆𐬵𐬭𐬐𐬁𐬥𐬀𐬬𐬀𐬈𐬵𐬭𐬐𐬀𐬀-𐬥𐬀
TextExpectedActual
test1_Hittite:
Passeda-ku𒀀𒆪𒀀𒆪
Failedan-tu-wa-ah-ha-as𒀭𒌅𒉿𒀪𒄩𒀸𒀭𒌅𒉿𒄴𒄩𒀸
Failedan-tu-wa-aḫ-ḫa-aš𒀭𒌅𒉿𒀪𒄩𒀸𒀭𒌅𒉿𒄴𒄩𒀸
TextExpectedActual
test_Arabic:
Passedmaaeمَاءمَاء
Passedmueminمُؤْمِنمُؤْمِن
PassedeiDaafat'إِضَافَةإِضَافَة
Passedeaabآبآب
Passedqureaanقُرْآنقُرْآن
PassedqiTTat'قِطَّةقِطَّة
PassedfaEEaalفَعَّالفَعَّال
Passedxayeuشَيْءُشَيْءُ
PassedxayeaNشَيْءًشَيْءً
PasseddaaeimaNدَائِمًادَائِمًا
Passedmabduueat'مَبْدُوءَةمَبْدُوءَة
Passedmabduu'at'مَبْدُوءَةمَبْدُوءَة
PassedbadaaeiyyuNبَدَائِيٌّبَدَائِيٌّ
Passedbadaaeat'بَدَاءَةبَدَاءَة
Passedmaktuubمَكْتُوبمَكْتُوب
PassedtaHriirتَحْرِيرتَحْرِير
PassedEuZmaaaعُظْمَىعُظْمَى
Passedean0أَنْأَنْ
Passedlaw0لَوْلَوْ
Passedxay'aNشَيْءًشَيْءً
Passedta7riirتَحْرِيرتَحْرِير
Passed3axarat'عَشَرَةعَشَرَة
TextExpectedActual
test_Germanic:
Passed*t'a_ko^`*þākǫ̂*þākǫ̂
Passed*T'eudo_balt'az*Þeudōbalþaz*Þeudōbalþaz
Passed*bo_kijo_`*bōkijǭ*bōkijǭ
TextExpectedActual
test_Greek:
Passeda^)nh/rᾰ̓νήρᾰ̓νήρ
PassedPhlhi+a/dhsΠηληϊάδηςΠηληϊάδης
Passede)a_/nἐᾱ́νἐᾱ́ν
Passedpa=sa^πᾶσᾰπᾶσᾰ
Passedu_(mei=sῡ̔μεῖςῡ̔μεῖς
Passeda/)^nerᾰ̓́νερᾰ̓́νερ
Passeda/^)nerᾰ̓́νερᾰ̓́νερ
Passeda)/^nerᾰ̓́νερᾰ̓́νερ
Passeda)^/nerᾰ̓́νερᾰ̓́νερ
Passeddai+/frwnδαΐφρωνδαΐφρων
Passeddai/+frwnδαΐφρωνδαΐφρων
TextExpectedActual
test_Hellenic:
Passed*tat^t^o_*taťťō*taťťō
Passed*d^o_'yyon*ďṓyyon*ďṓyyon
Passed*gw@n'n'o_*gʷəňňō*gʷəňňō
Passed*gw@n^n^o_*gʷəňňō*gʷəňňō
Passed*kwhe_r*kʷʰēr*kʷʰēr
Passed*khwe_r*kʷʰēr*kʷʰēr
TextExpectedActual
test_PIE:
Passed*dye_'ws*dyḗws*dyḗws
Passed*n0mr0to's*n̥mr̥tós*n̥mr̥tós
Passed*tk'e'yti*tḱéyti*tḱéyti
Passed*h1es-*h₁es-*h₁es-
Passed*t_ep-e'h1(ye)-ti*tₔp-éh₁(ye)-ti*tₔp-éh₁(ye)-ti
Passed*h1e'k'wos*h₁éḱwos*h₁éḱwos
Passed*bhebho'ydhe*bʰebʰóydʰe*bʰebʰóydʰe
Passed*dh3to's*dh₃tós*dh₃tós
TextExpectedActual
test_all:
Passed*dye_'ws*dyḗws*dyḗws
Passed*n0mr0to's*n̥mr̥tós*n̥mr̥tós
Passed*tk'e'yti*tḱéyti*tḱéyti
Passed*h1es-*h₁es-*h₁es-
Passed*t_ep-e'h1(ye)-ti*tₔp-éh₁(ye)-ti*tₔp-éh₁(ye)-ti
Passed*h1e'k'wos*h₁éḱwos*h₁éḱwos
Passed*bhebho'ydhe*bʰebʰóydʰe*bʰebʰóydʰe
Passed*dh3to's*dh₃tós*dh₃tós
Passed*t'a_ko^`*þākǫ̂*þākǫ̂
Passed*T'eudo_balt'az*Þeudōbalþaz*Þeudōbalþaz
Passed*bo_kijo_`*bōkijǭ*bōkijǭ
Passed*tat^t^o_*taťťō*taťťō
Passed*d^o_'yyon*ďṓyyon*ďṓyyon

local tests = require('Module:UnitTests')
local m_typing = require('Module:typing-aids')
local m_languages = require("Module:languages")

local function check_output(code, expected, lang)
	if lang then
		tests:equals(
			code,
			mw.ustring.toNFD(m_typing.replace({lang, code})),
			mw.ustring.toNFD(expected)
		)
	else
		tests:equals(
			code,
			mw.ustring.toNFD(m_typing.replace({code})),
			mw.ustring.toNFD(expected)
		)
	end
end

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

function tests:test1_Avestan()
	check_output("ap", "𐬀𐬞", "ae")
	check_output("xsshu-uash", "𐬑𐬴𐬎𐬎𐬀𐬱", "ae")
	check_output("vaehrkaa-na", "𐬬𐬆𐬵𐬭𐬐𐬁𐬥𐬀", "ae")
end

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

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

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

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

function tests:test_Greek()
	check_output("a^)nh/r", "ᾰ̓νήρ", "grc")
	check_output("Phlhi+a/dhs", "Πηληϊάδης", "grc")
	check_output("e)a_/n", "ἐᾱ́ν", "grc")
	check_output("pa=sa^", "πᾶσᾰ", "grc")
	check_output("u_(mei=s", "ῡ̔μεῖς", "grc")
	check_output("a/)^ner", "ᾰ̓́νερ", "grc")
	check_output("a/^)ner", "ᾰ̓́νερ", "grc")
	check_output("a)/^ner", "ᾰ̓́νερ", "grc")
	check_output("a)^/ner", "ᾰ̓́νερ", "grc")
	check_output("dai+/frwn", "δαΐφρων", "grc")
	check_output("dai/+frwn", "δαΐφρων", "grc")
end

function tests:test1_Hittite()
	check_output("a-ku", "𒀀𒆪", "hit")
	check_output("an-tu-wa-ah-ha-as", "𒀭𒌅𒉿𒀪𒄩𒀸", "hit")
	check_output("an-tu-wa-aḫ-ḫa-aš", "𒀭𒌅𒉿𒀪𒄩𒀸", "hit")
end

return tests