Module:cu-pronunciation/testcases
Appearance
- The following documentation is located at Module:cu-pronunciation/testcases/documentation. [edit] Categories were auto-generated by Module:module categorization. [edit]
- Useful links: root page • root page’s subpages • links • transclusions • tested module • sandbox (diff)
Each testcase challenges different capabilities of the system, which serve to increase the template's accuracy. If all testcases pass, then the system has assigned the correct sound values to characters, transcribes ѵ in respect to surrounding sounds, knows which consonants are syllabic and transcribes them as such, and can identify and correctly transcribe tense, lax, strong and weak yers. This means that maximum historical accuracy has been achieved.
local tests = require('Module:UnitTests')
local m_IPA = require('Module:cu-pronunciation')
local OCS = require('Module:languages').getByCode("cu")
local Cyrillic = require('Module:scripts').getByCode("Cyrl")
local function link(term)
return require("Module:links").full_link{ term = term, lang = OCS, sc = Cyrillic}
end
local function tag_IPA(IPA)
return '<span class="IPA">' .. IPA .. '</span>'
end
function tests:check_output(term, expected)
tests:equals(
term,
m_IPA.toIPA(term),
expected,
{ display = tag_IPA }
)
end
function tests:test_all()
list = {
{ "пѣти", "pæː.t̪iː"},
{ "кѫ̏ща", "kɔ̃ꜜɔ̃.ʃtʲæː"},
{ "[[Ꙁеѵсъ]]", "z̪ɛ̠.ʋs̪ə̆"},
{ "Сѵрий", "s̪iː.ɾ̪iː.jɪ̆"},
{ "ю̏гъ", "jʉꜜʉ.ɡə̆"},
{"ѣ̀сти", "jæꜛæ.s̪t̪iː"},
{ "междоу̀", "mɛ̠.ʒdʲʉꜛʉ"},
{ "съ́ѭꙁъ", "s̪ʊ.jɞ̃.z̪ə̆"},
{ "ть̏нъкъ", "t̪ɪꜜ.n̪ʊ.kə̆"},
{ "грь̏къ", "ɡr̩ꜜ.kə̆"},
{ "влъ̏къ", "ʋɫ̩ꜜ.kə̆"},
{ "чаꙗ̀ньѥ", "t͡ʃæː.jæꜛæ.n̪i.jɛ̠"},
{ "мо̏р҄є", "mɔ̟ꜜ.ɾ̟ɛ̠"},
{ "чрѣ̏шьнꙗ", "t͡ʃɾ̪æꜜæ.ʃɪ̆.ɲ̟æː"},
{ "ꙁємлꙗ̏", "z̪ɛ̠.mʎ̟æꜜæ"},
{ "прѣль̏стьнъ", "pɾ̪æː.l̪ɪꜜ.s̪t̪ɪ.n̪ə̆"},
{ "хѣръ", "ɕæː.ɾ̪ə̆"},
}
self:iterate(list, "check_output")
end
return tests