Module:kpv-IPA/testcases

From Wiktionary, the free dictionary
Jump to navigation Jump to search

34 of 66 tests failed. (refresh)

TextExpectedActual
test_phonetic:
phonemic
Failedнимˈnʲimˈɲim
Failedзильгисˈzʲilʲɡisˈʑiʎɡis
Failedтильганˈtʲilʲɡanˈciʎɡan
Failedмичаˈmit͡sʲaˈmit͡ɕa
Failedмунінныдˈmuninːɨdˈmuninːɯd
Passedшондіˈʃondiˈʃondi
Failedняньˈnʲanʲˈɲaɲ
Failedвидзаасимˈʋid͡zʲaːsʲimˈʋid͡ʑaːɕim
Failedясыдˈjasɨdˈjasɯd
Failedшойччыныˈʃojt͡sʲːɨnɨˈʃojt͡ɕːɯnɯ
Failedаддзысьлытӧдзˈadd͡zʲɨsʲlɨtəd͡zʲˈad͡ʑːɯɕlɯtɘd͡ʑ
Failedӧтдортныˈətdortnɨˈɘtdortnɯ
Failedпӧсьджыкˈpəsʲd͡ʒɨkˈpɘɕd͡ʒɯk
Failedводтӧдныˈʋodtədnɨˈʋodtɘdnɯ
Failedвильскӧбтыныˈʋilʲskəbtɨnɨˈʋiʎskɘbtɯnɯ
Passedсветˈsʋetˈsʋet
Failedкосджыкˈkosd͡ʒɨkˈkosd͡ʒɯk
Failedпос шӧрˈpos ˈʃərˈpos ˈʃɘr
Passedиз шомˈiz ˈʃomˈiz ˈʃom
Failedпӧлӧсджыкˈpələsd͡ʒɨkˈpɘlɘsd͡ʒɯk
Failedвидчыныˈʋidt͡sʲɨnɨˈʋidt͡ɕɯnɯ
Failedяесничаˈjajesnʲit͡sʲaˈjajesɲit͡ɕa
Failedверблю́дʋerbˈlʲudʋerbˈʎud
Passedпингви́нpinɡˈʋinpinɡˈʋin
Failedмлекопита́ющӧйmlʲekopiˈtajuʃːəjmʎekopiˈtajuʃːɘj
Passed-ка-ka-ka
Failedвидзьясˈʋid͡zʲjasˈʋid͡ʑjas
Passedлунъясˈlunjasˈlunjas
Passed-яс-jas-jas
Failed-иль-ilʲ-iʎ
Passedмед-ˈmed-ˈmed-
Failedне-ˈnʲe-ˈɲe-
Failedчиркˈt͡sʲirkˈt͡ɕirk
phonetic
Passedнимˈɲimˈɲim
Passedзильгисˈʑiʎɡisˈʑiʎɡis
Passedтильганˈciʎɡänˈciʎɡän
Passedмичаˈmit͡ɕäˈmit͡ɕä
Passedмунінныдˈmuninːɯ̈dˈmuninːɯ̈d
Passedшондіˈʃ̺o̞ndiˈʃ̺o̞ndi
Passedняньˈɲäɲˈɲäɲ
Passedвидзаасимˈʋid͡ʑäːɕimˈʋid͡ʑäːɕim
Passedясыдˈjäsɯ̈dˈjäsɯ̈d
Passedшойччыныˈʃ̺o̞jt͡ɕːɯ̈nɯ̈ˈʃ̺o̞jt͡ɕːɯ̈nɯ̈
Failedаддзысьлытӧдзˈäd͡ʑːɯ̈ɕlɯ̈təd͡ʑˈäd͡ʑːɯ̈ɕɫɯ̈tɘd͡ʑ
Failedӧтдортныˈədːo̞rtnɯ̈ˈɘdːo̞rtnɯ̈
Failedпӧсьджыкˈpəʑd͡ʒ̺ɯ̈kˈpɘʑd͡ʒ̺ɯ̈k
Failedводтӧдныˈʋo̞tːədnɯ̈ˈʋo̞tːɘdnɯ̈
Failedвильскӧбтыныˈʋiʎskəptɯ̈nɯ̈ˈʋiʎskɘptɯ̈nɯ̈
Passedсветˈsʋetˈsʋet
Passedкосджыкˈko̞ʒ̺d͡ʒ̺ɯ̈kˈko̞ʒ̺d͡ʒ̺ɯ̈k
Failedпос шӧрˈpo̞ʃ̺ ˈʃ̺ərˈpo̞ʃ̺ ˈʃ̺ɘr
Passedиз шомˈiʒ̺ ˈʃ̺o̞mˈiʒ̺ ˈʃ̺o̞m
Failedпӧлӧсджыкˈpələʒ̺d͡ʒ̺ɯ̈kˈpɘɫɘʒ̺d͡ʒ̺ɯ̈k
Passedвидчыныˈʋit͡ɕːɯ̈nɯ̈ˈʋit͡ɕːɯ̈nɯ̈
Passedяесничаˈjäjesɲit͡ɕäˈjäjesɲit͡ɕä
Passedверблю́дʋerbˈʎudʋerbˈʎud
Passedпингви́нpinɡˈʋinpinɡˈʋin
Failedмлекопита́ющӧйmʎeko̞piˈtäjuʃ̺ːəjmʎeko̞piˈtäjuʃ̺ːɘj
Passed-ка-kä-kä
Passedвидзьясˈʋid͡ʑjäsˈʋid͡ʑjäs
Failedлунъясˈlunjäsˈɫunjäs
Passed-яс-jäs-jäs
Passed-иль-iʎ-iʎ
Passedмед-ˈmed-ˈmed-
Passedне-ˈɲe-ˈɲe-
Passedчиркˈt͡ɕirkˈt͡ɕirk

local tests = require "Module:UnitTests"
local to_IPA = require "Module:kpv-IPA".convert

local function link_kpv(term)
	return '<span class="Cyrl" lang="kpv">[[' .. term .. "#Komi-Zyrian|" .. term .. ']]</span>'
end

local function tag_IPA(transcription)
	return '<span class="IPA">' .. transcription .. '</span>'
end

function tests:test_phonetic()
	local examples = {
		"phonemic",
		{ "ним", "ˈnʲim" },
		{ "зильгис", "ˈzʲilʲɡis" },
		{ "тильган", "ˈtʲilʲɡan" },
		{ "мича", "ˈmit͡sʲa" },
		{ "мунінныд", "ˈmuninːɨd" },
		{ "шонді", "ˈʃondi" },
		{ "нянь", "ˈnʲanʲ" },
		{ "видзаасим", "ˈʋid͡zʲaːsʲim" },
		{ "ясыд", "ˈjasɨd" },
		{ "шойччыны", "ˈʃojt͡sʲːɨnɨ" },
		{ "аддзысьлытӧдз", "ˈadd͡zʲɨsʲlɨtəd͡zʲ" },
		{ "ӧтдортны", "ˈətdortnɨ" },
		{ "пӧсьджык", "ˈpəsʲd͡ʒɨk" },
		{ "водтӧдны", "ˈʋodtədnɨ" },
		{ "вильскӧбтыны", "ˈʋilʲskəbtɨnɨ" },
		{ "свет", "ˈsʋet" },
		{ "косджык", "ˈkosd͡ʒɨk" },
		{ "пос шӧр", "ˈpos ˈʃər" },
		{ "из шом", "ˈiz ˈʃom" },
		{ "пӧлӧсджык", "ˈpələsd͡ʒɨk" },
		{ "видчыны", "ˈʋidt͡sʲɨnɨ" },
		{ "яеснича", "ˈjajesnʲit͡sʲa" },
		{ "верблю́д", "ʋerbˈlʲud" },
		{ "пингви́н", "pinɡˈʋin"},
		{ "млекопита́ющӧй", "mlʲekopiˈtajuʃːəj" },
		{ "-ка", "-ka" },
		{ "видзьяс", "ˈʋid͡zʲjas" },
		{ "лунъяс", "ˈlunjas" },
		{ "-яс", "-jas" },
		{ "-иль", "-ilʲ" },
		{ "мед-", "ˈmed-" },
		{ "не-", "ˈnʲe-" },
		{ "чирк", "ˈt͡sʲirk" },
		"phonetic",
		{ "ним", "ˈɲim", true },
		{ "зильгис", "ˈʑiʎɡis", true },
		{ "тильган", "ˈciʎɡän", true },
		{ "мича", "ˈmit͡ɕä", true },
		{ "мунінныд", "ˈmuninːɯ̈d", true },
		{ "шонді", "ˈʃ̺o̞ndi", true },
		{ "нянь", "ˈɲäɲ", true },
		{ "видзаасим", "ˈʋid͡ʑäːɕim", true },
		{ "ясыд", "ˈjäsɯ̈d", true },
		{ "шойччыны", "ˈʃ̺o̞jt͡ɕːɯ̈nɯ̈", true },
		{ "аддзысьлытӧдз", "ˈäd͡ʑːɯ̈ɕlɯ̈təd͡ʑ", true },
		{ "ӧтдортны", "ˈədːo̞rtnɯ̈", true },
		{ "пӧсьджык", "ˈpəʑd͡ʒ̺ɯ̈k", true },
		{ "водтӧдны", "ˈʋo̞tːədnɯ̈", true },
		{ "вильскӧбтыны", "ˈʋiʎskəptɯ̈nɯ̈", true },
		{ "свет", "ˈsʋet", true },
		{ "косджык", "ˈko̞ʒ̺d͡ʒ̺ɯ̈k", true },
		{ "пос шӧр", "ˈpo̞ʃ̺ ˈʃ̺ər", true },
		{ "из шом", "ˈiʒ̺ ˈʃ̺o̞m", true },
		{ "пӧлӧсджык", "ˈpələʒ̺d͡ʒ̺ɯ̈k", true },
		{ "видчыны", "ˈʋit͡ɕːɯ̈nɯ̈", true },
		{ "яеснича", "ˈjäjesɲit͡ɕä", true },
		{ "верблю́д", "ʋerbˈʎud", true },
		{ "пингви́н", "pinɡˈʋin", true},
		{ "млекопита́ющӧй", "mʎeko̞piˈtäjuʃ̺ːəj", true },
		{ "-ка", "-kä", true },
		{ "видзьяс", "ˈʋid͡ʑjäs", true },
		{ "лунъяс", "ˈlunjäs", true },
		{ "-яс", "-jäs", true },
		{ "-иль", "-iʎ", true },
		{ "мед-", "ˈmed-", true },
		{ "не-", "ˈɲe-", true },
		{ "чирк", "ˈt͡ɕirk", true },
	}
	
	local options = { display = tag_IPA }
	
	self:iterate(examples,
		function (self, term, expected, is_phonetic, respelling)
			self:equals(
				link_kpv(term)
					 .. (respelling and " (<kbd>" .. respelling .. "</kbd>)" or ""),
				to_IPA(respelling or term, is_phonetic),
				expected, options)
		end)
end

return tests