Module:qhv-pron/testcases

From Linguifex
Revision as of 19:46, 7 February 2021 by Sware (talk | contribs)
Jump to navigation Jump to search

13 of 12 tests failed. (refresh)

TextExpectedActual
test_antique:
Script error during testing: Module:qhv-pron/testcases:24: attempt to call field 'antique_crux' (a nil value)
stack traceback:
	[C]: in function 'antique_crux'
	Module:qhv-pron/testcases:24: in function 'func'
	Module:UnitTests:313: in function 'iterate'
	Module:qhv-pron/testcases:59: in function <Module:qhv-pron/testcases:48>
	(tail call): ?
	(tail call): ?
	[C]: in function 'xpcall'
	Module:fun/xpcall:37: in function 'xpcall'
	Module:UnitTests:389: in function <Module:UnitTests:350>
	(tail call): ?
	mw.lua:527: in function <mw.lua:507>
	[C]: ?
	[C]: in function 'expandTemplate'
	mw.lua:333: in function <mw.lua:307>
	(tail call): ?
	(tail call): ?
	Module:documentation:1128: in function 'chunk'
	mw.lua:527: in function <mw.lua:507>
	[C]: ?
TextExpectedActual
test_modern:
Faileddrakarysdra.ˈka.ɾysdraˈkarys
Failedvalonqarva.ˈloɴ.qarvaˈloɴqar
FailedThorosˈθo.ɾosˈθoros
Failedarakha.ˈɾaxˈarax
Failedēngosˈeːŋ.ɡosˈeːŋgos
Failedamīvindigona.miː.ˈvin.di.ɡonamiːˈvindigon
Failedojehiknono.je.ˈhik.nonoɟeˈhiknon
Failedpōjaˈpoː.jaˈpoːɟa
Failedriñaˈri.ɲaˈriɲa
Failedzirȳlazi.ˈɾyː.laziˈryːla
Failedipradisi.ˈpra.disiˈpradis
Failedrholagonr̥oˈlaɡonṛoˈlagon

local tests = require('Module:UnitTests')
local m_IPA = require('Module:qhv-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 linkup(text)
	return "[[Contionary:" .. text .. "#High Valyrian|" .. text .. "]]"
end

function tests:check_output(term, expected)
	return tests:equals(
		linkup(term),
		m_IPA.crux(term),
		expected,
		{ display = IPA_style }
	)
end

function tests:check_output2(term, expected)
	return tests:equals(
		linkup(term),
		m_IPA.antique_crux(term),
		expected,
		{ display = IPA_style }
	)
end

function tests:test_modern()
	local list = {
		{"drakarys", "dra.ˈka.ɾys"},
		{"valonqar", "va.ˈloɴ.qar"},
		{"Thoros", "ˈθo.ɾos"},
		{"arakh", "a.ˈɾax"},
		{"ēngos", "ˈeːŋ.ɡos"},
		{"amīvindigon", "a.miː.ˈvin.di.ɡon"},
		{"ojehiknon", "o.je.ˈhik.non"},
		{"pōja", "ˈpoː.ja"},
		{"riña", "ˈri.ɲa"},
		{"zirȳla", "zi.ˈɾyː.la"},
		{"ipradis", "i.ˈpra.dis"},
		{"rholagon", "r̥oˈlaɡon"},
	}
	self:iterate(list, "check_output")
end

function tests:test_antique()
	local list = {
		{"vējōñe", "veː.ˈjoː.ɲe"},
		{"vōljes", "ˈwoː.ʎes"},
		{"vumbiarzy", "ˈwum.bi͜ar.zy"},
		{"vȳs", "ˈɥyːs"},
		{"ȳgha", "ˈyː.ɣa"},
		{"vajie", "ˈɥa.ɟi͜e"},
		{"vūjigon", "ˈwuː.ɟi.ɡon"},
		{"qrillaodikio", "qril.ˈlao̯.di.ki͜o"},
	}
	self:iterate(list, "check_output2")
end

return tests