Module:anui-pron/testcases: Difference between revisions
No edit summary |
No edit summary |
||
| (43 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
local tests = require('Module:UnitTests') | local tests = require('Module:UnitTests') | ||
local m_IPA = require('Module:anui-pron') | |||
local function IPA_style(IPA) | |||
return '<span style="font-size:110%;font-family:Gentium,\'DejaVu Sans\',\'Segoe UI\',sans-serif>' .. IPA .. '</span>' | |||
end | |||
local function bold(x) | |||
return "'''" .. x .. "'''" | |||
end | |||
function tests:check_output(term, expected) | |||
return tests:equals( | |||
bold(term), | |||
mw.ustring.toNFC(mw.ustring.toNFD(m_IPA.crux(term))), | |||
mw.ustring.toNFC(mw.ustring.toNFD(expected)), | |||
{ display = IPA_style, show_difference = true} | |||
) | |||
end | |||
function tests:test_example() | function tests:test_example() | ||
local list = { | local list = { | ||
{"aa", " | {"aa", "aː˧"}, | ||
{"aã", " | {"aã", "ãː˥˦"}, | ||
{" | {"a̰a", "a̰̰ː˦"}, | ||
{" | {"a̰ã", "ã̰̰ː˧"}, | ||
{" | {"a̰ʼa", "a̰̰ʔa˦"}, | ||
{" | {"a̰ʼã", "ã̰̰ʔã˥˦"}, | ||
{"um", " | {"ùu", "ṵː˨"}, | ||
{" | {"um", "m̩ː˥˦"}, | ||
{"mʼm", " | {"ṵm", "m̰̍ː˧"}, | ||
{"mʼm", "m̰̍ʔm̩˧"}, | |||
{"oi", "ɔi˧"}, | |||
{"oĩ", "ɔ̃ĩ˥˦"}, | |||
{"uĩ", "m̩ĩ˥˦"}, | |||
{"ṵĩ", "m̰̍ĩ˧"}, | |||
{"ḛe", "ḛ̰ː˦"}, | |||
{"ṭʼṭʼaṇi", "ʈʼʈʼaᶯɖi"}, | |||
{"šǃxa̰ʼã", "ʃǃ͡χɑ̰̃ʔã˥˦"}, | |||
{"ʘui", "ʘɯi˧"}, | |||
{"ṭrui", "ʈ͡ʂɯi˧"}, | |||
} | } | ||
self:iterate(list, "check_output") | |||
end | end | ||
return tests | return tests | ||