Module:ky-Cyrl-Arab-translit/testcases

From Wiktionary, the free dictionary
Jump to navigation Jump to search

Creates the Arabic spelling of Kyrgyz lemmas. Based on the reformed Kyrgyz alphabet used in the USSR (before 1927), and today in china (at least based on this Chinese website using the Kyrgyz alphabet [1]).

Note: based on the Chinese website mentioned above, glottolog, and wikipedia, Kyrgyz does not require an initial alif. Kyrgyz does not utilize any diacritics (not even shadda) and geminated consonants and long vowels are just doubled. The Kyrgyz Arabic alphabet is not supported by google, and is difficult to find outside of Chinese (and some Russian) websites. Another website using the alphabet is this Russian website [2] translating the Bible into the Kyrgyz Arabic alphabet.

Test cases

[edit]

All tests passed. (refresh)

TextExpectedActualComments
test_translit_ky_Cyrl_Arab:
PassedБардык адамдар өз беделинде жана укуктарында эркин жана тең укуктуу болуп жаралат. Алардын аң-сезими менен абийири бар жана бири-бирине бир туугандык мамиле кылууга тийиш.باردىق ادامدار ۅز بەدەلىندە جانا ۇقۇقتارىندا ەركىن جانا تەڭ ۇقۇقتۇۇ بولۇپ جارالات. الاردىن اڭ-سەزىمى مەنەن ابئيىرى بار جانا بئرى-بئرىنە بئر تۇۇعاندىق مامئلە قىلۇۇعا تئيىش.باردىق ادامدار ۅز بەدەلىندە جانا ۇقۇقتارىندا ەركىن جانا تەڭ ۇقۇقتۇۇ بولۇپ جارالات. الاردىن اڭ-سەزىمى مەنەن ابئيىرى بار جانا بئرى-بئرىنە بئر تۇۇعاندىق مامئلە قىلۇۇعا تئيىش.

-- Unit tests for [[Module:ky-Cyrl-Arab-translit]]. Refresh page to run tests.
local tests = require('Module:UnitTests')
local m_translit = require('Module:ky-Cyrl-Arab-translit')

local full_link = require('Module:links').full_link
local tagged = require('Module:script utilities').tag_text
local ky = require('Module:languages').getByCode('ky')

local rlm = require("Module:string/char")(0x200F) -- right-to-left mark

local function link(word)
	return full_link{ term = word, lang = ky, tr = "-" }
end

local function nolink(word)
	return tagged(word, ky)
end

--TO DO
function tests:do_test_translit(cyrl, arab)
	self:equals(link(cyrl), link(m_translit.tr(cyrl, 'ky', 'Cyrl')), link(arab))
end

function tests:do_test_nolink(cyrl, arab)
	self:equals(nolink(cyrl), nolink(m_translit.tr(cyrl, 'ky', 'Cyrl')), nolink(arab))
end

local options = {show_difference = true }

function tests:test_translit_ky_Cyrl_Arab()
	local nolink = {
		{ "Бардык адамдар өз беделинде жана укуктарында эркин жана тең укуктуу болуп жаралат. Алардын аң-сезими менен абийири бар жана бири-бирине бир туугандык мамиле кылууга тийиш.", "باردىق ادامدار ۅز بەدەلىندە جانا ۇقۇقتارىندا ەركىن جانا تەڭ ۇقۇقتۇۇ بولۇپ جارالات. الاردىن اڭ-سەزىمى مەنەن ابئيىرى بار جانا بئرى-بئرىنە بئر تۇۇعاندىق مامئلە قىلۇۇعا تئيىش."},
	}
	self:iterate(nolink, "do_test_nolink")
	--self:iterate(examples, "do_test_translit")
end	

return tests