Module:anui-pron/testcases

From Linguifex
Jump to navigation Jump to search

6 tests failed. (refresh)
Text Expected Actual
test_example:
Passed aa aː˧ aː˧
Passed ãː˥˦ ãː˥˦
Failed a̰a a̰ː˦ a̰̰ː˦
Failed a̰ã ã̰ː˧ ã̰̰ː˧
Failed a̰ʼa a̰ʔa˦ a̰̰ʔa˦
Failed a̰ʼã ã̰ʔã˥˦ ã̰̰ʔã˥˦
Failed ùu ṵː˨ ː˨
Passed um m̩ː˥˦ m̩ː˥˦
Passed ṵm m̰̍ː˧ m̰̍ː˧
Failed mʼm m̰̍ʔm˧ m̰̍ʔm̩˧
Passed oi ɔi˧ ɔi˧
Passed ɔ̃ĩ˥˦ ɔ̃ĩ˥˦

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),
		m_IPA.crux(term),
		expected,
		{ display = IPA_style, show_difference = true}
	)
end

function tests:test_example()
	local list = {
		{"aa", "aː˧"},
		{"aã", "ãː˥˦"},
		{"a̰a", "a̰ː˦"},
		{"a̰ã", "ã̰ː˧"},
		{"a̰ʼa", "a̰ʔa˦"},
		{"a̰ʼã", "ã̰ʔã˥˦"},
		{"ùu", "ṵː˨"},
		{"um", "m̩ː˥˦"},
		{"ṵm", "m̰̍ː˧"},
		{"mʼm", "m̰̍ʔm˧"},
		{"oi", "ɔi˧"},
		{"oĩ", "ɔ̃ĩ˥˦"},
	}
	self:iterate(list, "check_output")
end

return tests