Module:pine-pron/testcases: Difference between revisions

From Linguifex
Jump to navigation Jump to search
No edit summary
No edit summary
 
(10 intermediate revisions by the same user not shown)
Line 21: Line 21:
function tests:test_example()
function tests:test_example()
local list = {
local list = {
{"syįįi", "sʏjːɪ"},
{"syįįi", "sʏ.jːɪ"},
{"ṛ", "sʏjːɪ"},
{"dyryn", "dʏː.rʏn"},
{"ů", "sʏjːɪ"},
{"bỷḍma", "byːðː.ma"},
{"į", "sʏjːɪ"},
{"iḷi", "ɪː.ɬɪ"},
{"ṡ", "sʏjːɪ"},
{"ḍ", "sʏjːɪ"},
{"ġ", "sʏjːɪ"},
{"ḥ", "sʏjːɪ"},
{"ḳ", "sʏjːɪ"},
{"ḷ", "sʏjːɪ"},
{"ṇ", "sʏjːɪ"},
{"ṃ", "sʏjːɪ"},
{"dyryn", "dʏːrʏn"},
{"bỷḍma", "byːðːma"},
{"disƛami", "dɪst͡ɬɑːmɪ"},
{"iḷi", "ɪːɬɪ"},
{"hỉn", "hiːn"},
{"hỉn", "hiːn"},
{"tsġůġty", "t͡sxœxːtʏ"},
{"tsġůġty", "t͡sxœxː.tʏ"},
{"ůḷů", "œːɬœ"},
{"ůḷů", "œː.ɬœ"},
{"meůdniggůn", "møːʔtnɪkːœn"},
{"meůdniggůn", "møːʔt.nɪ.kːœn"},
{"geṡkva", "ɡɛʃːkʷɑ"},
{"geṡkva", "ɡɛʃː.kʷɑ"},
{"nenut", "nɛːnʊt"},
{"nenut", "nɛː.nʊt"},
{"tṡẻlġġan", "t͡ʃeːlːɣan"},
{"tṡẻlġġan", "t͡ʃeːl.ːɣan"},
{"udnįu", "ʊʔtɲʊ"},
{"udnįu", "ʊʔt.ɲʊ"},
{"ṡkunuḳ", "ʃkʊːnʊkʷ"},
{"ṡkunuḳ", "ʃkʊː.nʊkʷ"},
{"kįủva", "cuːwɑ"},
{"kįủva", "cuː.wɑ"},
{"bįodnan", "bjɔʔtnan"},
{"bįodnan", "bjɔʔt.nan"},
{"moni", "mɔːni"},
{"moni", "mɔː.ni"},
{"ỏtur", "oːtʊr"},
{"ỏtur", "oː.tʊr"},
{"algu", "alːɡʊ"},
{"algu", "alː.ɡʊ"},
{"aįi", "ɑːjɪ"},
{"aįi", "ɑː.jɪ"},
{"hoahhi", "hɑːhːɪ"},
{"hoahhi", "hɑː.hːɪ"},
{"ainnįi", "æɪ̯ɲːɪ"},
{"ainnįi", "æɪ̯.ɲːɪ"},
{"kaika", "kæɪ̯kɑ"},
{"kaika", "kæɪ̯.kɑ"},
{"kảḷḷi", "kæːɬːɪ"},
{"kảḷḷi", "kæː.ɬːɪ"},
{"důelpṃen", "dʏy̑ɬːpm̥ɛn"},
{"důelpṃen", "dʏy̑ɬː.pm̥ɛn"},
{"ṛvůekki", "r̥ᶣyʰkɪ"},
{"ṛvůekki", "r̥ᶣyʰ.kɪ"},
{"tůaƛƛa", "tøy̑t͡ɬːɑ"},
{"tůaƛƛa", "tøy̑.t͡ɬːɑ"},
{"kvůaƛƛisit", "kᶣøt͡ɬːɪːsɪt"},
{"kvůaƛƛisit", "kᶣø.t͡ɬːɪː.sɪt"},
{"tsuokka", "t͡sʊu̯ʰkɑ"},
{"tsuokka", "t͡sʊu̯.ʰkɑ"},
{"vuoġvi", "wuɣᶣːɪ"},
{"vuoġvi", "wu.ɣᶣːɪ"},
{"mierri", "mɪ̯ɛrːɪ"},
{"mierri", "mɪ̯ɛ.rːɪ"},
{"aitta", "æɪ̯ʰtɑ"},
{"aitta", "æɪ̯.ʰtɑ"},
{"daidni", "dæɪ̯ʔtnɪ"},
{"daidni", "dæɪ̯ʔt.nɪ"},
{"mįeigan", "mjɛɪ̯ɡan"},
{"mįeigan", "mjɛɪ̯.ɡan"},
{"eihhitta", "ɛɪ̯hːɪʰtɑ"},
{"eihhitta", "ɛɪ̯.hːɪ.ʰtɑ"},
{"tṡůivami", "t͡ʃœɪ̯wɑːmɪ"},
{"tṡůivami", "t͡ʃœɪ̯.wɑː.mɪ"},
{"ůikṃet", "œɪ̯kːm̥ɛt"},
{"ůikṃet", "œɪ̯kː.m̥ɛt"},
{"teygi", "tɛy̑ɡɪ"},
{"teygi", "tɛy̑.ɡɪ"},
{"beyƛis", "bɛy̑t͡ɬɪs"},
{"beyƛis", "bɛy̑.t͡ɬɪs"},
{"ayƛƛi", "æy̑t͡ɬːɪ"},
{"ayƛƛi", "æy̑.t͡ɬːɪ"},
{"raykvi", "ræy̑ʰkᶣɪ"},
{"raykvi", "ræy̑.ʰkᶣɪ"},
{"gihiůƛƛami", "ɡɪhɪy̑t͡ɬːɑːmɪ"},
{"gihiůƛƛami", "ɡɪ.hɪy̑.t͡ɬːɑː.mɪ"},
{"miůġi", "mɪy̑ɣɪ"},
{"miůġi", "mɪy̑.ɣɪ"},
{"beuhot", "bɛu̯hɔt"},
{"beuhot", "bɛu̯.hɔt"},
{"seuvot", "sɛu̯wɔt"},
{"seuvot", "sɛu̯.wɔt"},
{"biuggut", "bɪu̯kːʊt"},
{"biuggut", "bɪu̯.kːʊt"},
{"piuvvami", "pɪu̯ʋːɑːmɪ"},
{"piuvvami", "pɪu̯.ʋːɑː.mɪ"},
{"ḷủluit", "ɬuːlʊɪ̯t"},
{"ḷủluit", "ɬuː.lʊɪ̯t"},
{"tṡadnututtuat", "t͡ʃaʔtnʊtʊʰtʊɑ̯t"},
{"tṡadnututtuat", "t͡ʃaʔt.nʊ.tʊ.ʰtʊɑ̯t"},
{"boiƛƛuƛami", "bɑɪ̯t͡ɬːʊt͡ɬɑːmɪ"},
{"boiƛƛuƛami", "bɑɪ̯.t͡ɬːʊ.t͡ɬɑː.mɪ"},
{"aukka", "ɑu̯ʰkɑ"},
{"aukka", "ɑu̯.ʰkɑ"},
{"vabna", "wapːnɑ"},
{"vabna", "wapː.nɑ"},
{"vảpṇen", "ɥæːpːtn̥ɛn"},
{"vảpṇen", "ɥæːpː.tn̥ɛn"},
{"veivegi", "ɥɛɪ̯ɥɛːɡɪ"},
{"veivegi", "ɥɛɪ̯.ɥɛː.ɡɪ"},
{"lůaiki", "lᶣæɪ̯kɪ"},
{"lůaiki", "lᶣæɪ̯.kɪ"},
{"lįůeyṡṡi", "ʎᶣɛy̑ʃːɪ"},
{"lįůeyṡṡi", "ʎᶣɛy̑.ʃːɪ"},
{"kulpa", "kʊɬːpɑ"},
{"kulpa", "kʊɬː.pɑ"},
{"důaggi", "døy̑kːɪ"},
{"důaggi", "døy̑.kːɪ"},
{"tsittsa", "t͡sɪ.t͡sːɑ"},
--[[{"", ""},
--[[{"", ""},
{"", ""},
{"", ""},
{"", ""},
{"", ""},
{"", ""},

Latest revision as of 12:43, 26 November 2025


54 of 58 tests failed. (refresh)

TextExpectedActual
test_example:
Error creating thumbnail: syįįisʏ.jːɪsʏ.įːɪ
Error creating thumbnail: dyryndʏː.rʏn.rʏn
Error creating thumbnail: bỷḍmabyːðː.mabyː.mɑ
Error creating thumbnail: iḷiɪː.ɬɪɪ.ɬɪ
Passedhỉnhiːnhiːn
Error creating thumbnail: tsġůġtyt͡sxœxː.tʏt͡sġœġ.tʏ
Error creating thumbnail: ůḷůœː.ɬœœ.ɬœ
Error creating thumbnail: meůdniggůnmøːʔt.nɪ.kːœnmøːd.nɪ.ɡːœn
Error creating thumbnail: geṡkvaɡɛʃː.kʷɑɡɛʃ.kvɑ
Error creating thumbnail: nenutnɛː.nʊt.nʊt
Error creating thumbnail: tṡẻlġġant͡ʃeːl.ːɣant͡ʃeːl.ġːɑn
Error creating thumbnail: udnįuʊʔt.ɲʊʊd.nįʊ
Error creating thumbnail: ṡkunuḳʃkʊː.nʊkʷʃkʊ.nʊḳ
Error creating thumbnail: kįủvacuː.wɑkįuː.vɑ
Error creating thumbnail: bįodnanbjɔʔt.nanbįɔd.nɑn
Error creating thumbnail: monimɔː.ni.
Passedỏturoː.tʊroː.tʊr
Error creating thumbnail: algualː.ɡʊɑl.ɡʊ
Error creating thumbnail: aįiɑː.jɪɑ.įɪ
Passedhoahhihɑː.hːɪhɑː.hːɪ
Error creating thumbnail: ainnįiæɪ̯.ɲːɪɑɪ.nːįɪ
Error creating thumbnail: kaikakæɪ̯.kɑkɑɪ.kɑ
Passedkảḷḷikæː.ɬːɪkæː.ɬːɪ
Error creating thumbnail: důelpṃendʏy̑ɬː.pm̥ɛnyl.pm̥ɛn
Error creating thumbnail: ṛvůekkir̥ᶣyʰ.kɪr̥ᶣy.kːɪ
Error creating thumbnail: tůaƛƛatøy̑.t͡ɬːɑy.t͡ɬːɑ
Error creating thumbnail: kvůaƛƛisitkᶣø.t͡ɬːɪː.sɪtkᶣø.t͡ɬːɪ.sɪt
Error creating thumbnail: tsuokkat͡sʊu̯.ʰkɑt͡sʊu.kːɑ
Error creating thumbnail: vuoġviwu.ɣᶣːɪwu.ġ
Error creating thumbnail: mierrimɪ̯ɛ.rːɪmɪɛ.rːɪ
Error creating thumbnail: aittaæɪ̯.ʰtɑɑɪ.tːɑ
Error creating thumbnail: daidnidæɪ̯ʔt.nɪdɑɪd.nɪ
Error creating thumbnail: mįeiganmjɛɪ̯.ɡanmįɛɪ.ɡɑn
Error creating thumbnail: eihhittaɛɪ̯.hːɪ.ʰtɑɛɪ.hːɪ.tːɑ
Error creating thumbnail: tṡůivamit͡ʃœɪ̯.wɑː.mɪt͡ʃœɪ.vɑ.mɪ
Error creating thumbnail: ůikṃetœɪ̯kː.m̥ɛtœɪk.m̥ɛt
Error creating thumbnail: teygitɛy̑.ɡɪy.ɡɪ
Error creating thumbnail: beyƛisbɛy̑.t͡ɬɪsy.t͡ɬɪs
Error creating thumbnail: ayƛƛiæy̑.t͡ɬːɪæy.t͡ɬːɪ
Error creating thumbnail: raykviræy̑.ʰkᶣɪy.kvɪ
Error creating thumbnail: gihiůƛƛamiɡɪ.hɪy̑.t͡ɬːɑː.mɪɡɪ.hɪy.t͡ɬːɑ.mɪ
Error creating thumbnail: miůġimɪy̑.ɣɪy.ġɪ
Error creating thumbnail: beuhotbɛu̯.hɔtʊu.hɔt
Error creating thumbnail: seuvotsɛu̯.wɔtʊu.vɔt
Error creating thumbnail: biuggutbɪu̯.kːʊtʊu.ɡːʊt
Error creating thumbnail: piuvvamipɪu̯.ʋːɑː.mɪʊu.vːɑ.mɪ
Error creating thumbnail: ḷủluitɬuː.lʊɪ̯tɬuː.lʊɪt
Error creating thumbnail: tṡadnututtuatt͡ʃaʔt.nʊ.tʊ.ʰtʊɑ̯tt͡ʃɑd.nʊ.tʊ.tːʊɑt
Error creating thumbnail: boiƛƛuƛamibɑɪ̯.t͡ɬːʊ.t͡ɬɑː.mɪbɔɪ.t͡ɬːʊ.t͡ɬɑ.mɪ
Error creating thumbnail: aukkaɑu̯.ʰkɑɑʊu.kːɑ
Error creating thumbnail: vabnawapː.nɑvɑb.nɑ
Error creating thumbnail: vảpṇenɥæːpː.tn̥ɛnvæːp.n̥ɛn
Error creating thumbnail: veivegiɥɛɪ̯.ɥɛː.ɡɪvɛɪ.vɛ.ɡɪ
Error creating thumbnail: lůaikilᶣæɪ̯.kɪløyɪ.kɪ
Error creating thumbnail: lįůeyṡṡiʎᶣɛy̑.ʃːɪlįʏyʏ.ʃːɪ
Error creating thumbnail: kulpakʊɬː.pɑl.pɑ
Error creating thumbnail: důaggidøy̑.kːɪy.ɡːɪ
Error creating thumbnail: tsittsat͡sɪ.t͡sːɑt͡sɪ.tt͡sɑ

local tests = require('Module:UnitTests')
local m_IPA = require('Module:pine-pron')

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

local function linkup(text)
	return "[[Contionary:" .. text .. "#Pine|" .. text .. "]]"
end

function tests:check_output(term, expected, noresp)
	return tests:equals(
		noresp and linkup(noresp) .. "<br>(" .. term .. ")" or linkup(term),
		m_IPA.crux(term),
		expected,
		{ display = tag_IPA, show_difference = true }
	)
end

function tests:test_example()
	local list = {
		{"syįįi", "sʏ.jːɪ"},
		{"dyryn", "dʏː.rʏn"},
		{"bỷḍma", "byːðː.ma"},
		{"iḷi", "ɪː.ɬɪ"},
		{"hỉn", "hiːn"},
		{"tsġůġty", "t͡sxœxː.tʏ"},
		{"ůḷů", "œː.ɬœ"},
		{"meůdniggůn", "møːʔt.nɪ.kːœn"},
		{"geṡkva", "ɡɛʃː.kʷɑ"},
		{"nenut", "nɛː.nʊt"},
		{"tṡẻlġġan", "t͡ʃeːl.ːɣan"},
		{"udnįu", "ʊʔt.ɲʊ"},
		{"ṡkunuḳ", "ʃkʊː.nʊkʷ"},
		{"kįủva", "cuː.wɑ"},
		{"bįodnan", "bjɔʔt.nan"},
		{"moni", "mɔː.ni"},
		{"ỏtur", "oː.tʊr"},
		{"algu", "alː.ɡʊ"},
		{"aįi", "ɑː.jɪ"},
		{"hoahhi", "hɑː.hːɪ"},
		{"ainnįi", "æɪ̯.ɲːɪ"},
		{"kaika", "kæɪ̯.kɑ"},
		{"kảḷḷi", "kæː.ɬːɪ"},
		{"důelpṃen", "dʏy̑ɬː.pm̥ɛn"},
		{"ṛvůekki", "r̥ᶣyʰ.kɪ"},
		{"tůaƛƛa", "tøy̑.t͡ɬːɑ"},
		{"kvůaƛƛisit", "kᶣø.t͡ɬːɪː.sɪt"},
		{"tsuokka", "t͡sʊu̯.ʰkɑ"},
		{"vuoġvi", "wu.ɣᶣːɪ"},
		{"mierri", "mɪ̯ɛ.rːɪ"},
		{"aitta", "æɪ̯.ʰtɑ"},
		{"daidni", "dæɪ̯ʔt.nɪ"},
		{"mįeigan", "mjɛɪ̯.ɡan"},
		{"eihhitta", "ɛɪ̯.hːɪ.ʰtɑ"},
		{"tṡůivami", "t͡ʃœɪ̯.wɑː.mɪ"},
		{"ůikṃet", "œɪ̯kː.m̥ɛt"},
		{"teygi", "tɛy̑.ɡɪ"},
		{"beyƛis", "bɛy̑.t͡ɬɪs"},
		{"ayƛƛi", "æy̑.t͡ɬːɪ"},
		{"raykvi", "ræy̑.ʰkᶣɪ"},
		{"gihiůƛƛami", "ɡɪ.hɪy̑.t͡ɬːɑː.mɪ"},
		{"miůġi", "mɪy̑.ɣɪ"},
		{"beuhot", "bɛu̯.hɔt"},
		{"seuvot", "sɛu̯.wɔt"},
		{"biuggut", "bɪu̯.kːʊt"},
		{"piuvvami", "pɪu̯.ʋːɑː.mɪ"},
		{"ḷủluit", "ɬuː.lʊɪ̯t"},
		{"tṡadnututtuat", "t͡ʃaʔt.nʊ.tʊ.ʰtʊɑ̯t"},
		{"boiƛƛuƛami", "bɑɪ̯.t͡ɬːʊ.t͡ɬɑː.mɪ"},
		{"aukka", "ɑu̯.ʰkɑ"},
		{"vabna", "wapː.nɑ"},
		{"vảpṇen", "ɥæːpː.tn̥ɛn"},
		{"veivegi", "ɥɛɪ̯.ɥɛː.ɡɪ"},
		{"lůaiki", "lᶣæɪ̯.kɪ"},
		{"lįůeyṡṡi", "ʎᶣɛy̑.ʃːɪ"},
		{"kulpa", "kʊɬː.pɑ"},
		{"důaggi", "døy̑.kːɪ"},
		{"tsittsa", "t͡sɪ.t͡sːɑ"},
		--[[{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},
		{"", ""},]]
	}
	self:iterate(list, "check_output")
end

return tests