local tests = require('Module:UnitTests')
local m_IPA = require('Module:mk-pronunciation')
local Macedonian = require("Module:languages").getByCode("mk")
local Cyrillic = require("Module:scripts").getByCode("Cyrl")
local function link(term)
return require("Module:links").full_link{ term = term, lang = Macedonian, sc = Cyrillic }
end
local function tag_IPA(IPA)
return '<span class="IPA">' .. IPA .. '</span>'
end
function tests:check_output(term, expected)
tests:equals(
link(term),
m_IPA.toIPA(term),
expected,
{ display = tag_IPA }
)
end
function tests:test_all()
local list = {
{ "нананазад", "naˈnanazat" },
{ "Тласолтеотл", "tɫasɔɫˈtɛɔtɫ̩" },
{ "њутн", "ˈɲutn̩" },
{ "беџ", "bɛt͡ʃ"},
{ "правци", "ˈpraft͡si" },
{ "надежта", "ˈnadɛʃta" },
{ "бели", "ˈbɛli" },
{ "соседство", "ˈsɔsɛtstvɔ" },
{ "зима́ва", "ziˈmava" },
{ "одва́j", "ɔˈdvaj" },
{ "Мавританија", "mavriˈtani(j)a" },
{ "’рѓа", "ˈr̩ɟa" },
{ "бесчестен", "ˈbɛʃt͡ʃɛstɛn" },
{ "бара", "ˈbaɾa"},
{ "станбен", "ˈstambɛn"},
{ "конфузен", "ˈkɔɱfuzɛn"},
{ "рамка", "ˈramka"},
{ "амфора", "ˈaɱfɔɾa"},
{ "емиграциски", "ɛmiˈɡrat͡siski"},
{ "соучесништво", "sɔuˈt͡ʃɛsniʃtvɔ"},
{ "подмножество", "pɔdˈmnɔʒɛstvɔ"},
{ "грнчарство", "ˈɡr̩nt͡ʃarstvɔ"},
{ "стокхолмски", "ˈstɔkxɔɫmski"},
{ "трамвајскиот", "traɱˈvajski(j)ɔt"},
{ "одраниот", "ɔˈdrani(j)ɔt"},
{ "позлатува", "pɔˈzɫatuva"},
{ "остварува", "ɔˈstvaɾuva"},
{ "дошколува", "dɔˈʃkɔɫuva"},
{ "основање", "ɔˈsnɔvaɲɛ"},
{ "потковица", "pɔtˈkɔvit͡sa"},
{ "инјекција", "inˈjɛkt͡si(j)a"},
{ "отсјаите", "ɔtˈsjaitɛ"},
{ "подморница", "pɔdˈmɔrnit͡sa"},
{ "полудневниот", "pɔɫuˈdnɛvni(j)ɔt"},
{ "од играчка плачка", "ɔd ˈiɡrat͡ʃka ˈpɫat͡ʃka"},
{ "од немај-каде", "ɔd nɛˈmajkadɛ"},
{ "од почит кон", "ɔt ˈpɔt͡ʃit kɔn"},
{ "обновува", "ɔbˈnɔvuva"},
{ "облажува", "ɔˈbɫaʒuva"},
{ "чувствителност", "t͡ʃufˈstvitɛɫnɔst"},
{ "конфли́кт", "kɔɱˈflikt" },
{ "комфорен", "ˈkɔɱfɔɾɛn" },
{ "бара преку леб погача", "ˈbaɾa ˈprɛku ˈlɛp ˈpɔɡat͡ʃa" },
{ "сѐ или ништо", "ˈsɛ ili ˈniʃtɔ" },
{ "сѐ уште", "ˈsɛ uʃtɛ" },
{ "илјадити", "iˈʎaditi" },
{ "Унгарија", "uŋˈɡaɾi(j)a" },
{ "архиепископ", "arxiˈɛpiskɔp" },
{ "комба́јн", "kɔmˈbajn" },
{ "мјаука", "ˈmjauka" },
{ "скејтборд", "ˈskɛjdbɔrt" },
{ "жанр", "ˈʒanr̩" },
{ "подредува", "pɔdˈrɛduva"},
{ "разликува", "razˈlikuva"},
{ "растворени", "rasˈtvɔɾɛni"},
{ "потешкотија", "pɔtɛʃˈkɔti(j)a"},
{ "олеснување", "ɔlɛsˈnuvaɲɛ"},
{ "соткаено", "sɔˈtkaɛnɔ"},
}
--[[
Additions take this form –
{ "word with acutes", "IPA" },
{ "", "" },
Make sure to include the comma, or the module will return an error.
]]
self:iterate(list, "check_output")
end
return tests