<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://linguifex.com/w/index.php?action=history&amp;feed=atom&amp;title=Module%3Aar-translit%2Ftestcases</id>
	<title>Module:ar-translit/testcases - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://linguifex.com/w/index.php?action=history&amp;feed=atom&amp;title=Module%3Aar-translit%2Ftestcases"/>
	<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:ar-translit/testcases&amp;action=history"/>
	<updated>2026-05-18T23:17:56Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://linguifex.com/w/index.php?title=Module:ar-translit/testcases&amp;diff=495629&amp;oldid=prev</id>
		<title>Sware: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:ar-translit/testcases&amp;diff=495629&amp;oldid=prev"/>
		<updated>2026-04-21T12:44:26Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 12:44, 21 April 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Sware</name></author>
	</entry>
	<entry>
		<id>https://linguifex.com/w/index.php?title=Module:ar-translit/testcases&amp;diff=495628&amp;oldid=prev</id>
		<title>wikt&gt;Theknightwho: Use faster implementation of mw.ustring.char.</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:ar-translit/testcases&amp;diff=495628&amp;oldid=prev"/>
		<updated>2024-03-30T00:55:05Z</updated>

		<summary type="html">&lt;p&gt;Use faster implementation of mw.ustring.char.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;-- Unit tests for [[Module:ar-translit]]. Refresh page to run tests.&lt;br /&gt;
local tests = require(&amp;#039;Module:UnitTests&amp;#039;)&lt;br /&gt;
local ar_translit = require(&amp;#039;Module:ar-translit&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
local full_link = require(&amp;#039;Module:links&amp;#039;).full_link&lt;br /&gt;
local ar = require(&amp;#039;Module:languages&amp;#039;).getByCode(&amp;#039;ar&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
local rlm = require(&amp;quot;Module:string/char&amp;quot;)(0x200F) -- right-to-left mark&lt;br /&gt;
&lt;br /&gt;
local function link(word)&lt;br /&gt;
	return full_link{ term = word, lang = ar, tr = &amp;quot;-&amp;quot; }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--TO DO&lt;br /&gt;
function tests:do_test_translit(arab, roman)&lt;br /&gt;
	self:equals(link(arab), ar_translit.tr(arab, &amp;#039;ar&amp;#039;, &amp;#039;Arab&amp;#039;), roman)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function tests:test_translit_arabic()&lt;br /&gt;
	local examples = {&lt;br /&gt;
		{ &amp;quot;اَلْعَرَبِيَّة&amp;quot; .. rlm, &amp;quot;al-ʕarabiyya&amp;quot; }, -- right-to-left mark is removed&lt;br /&gt;
		{ &amp;quot;اَلْعَرَبِيَّة.&amp;quot;, &amp;quot;al-ʕarabiyya.&amp;quot; },&lt;br /&gt;
		{ &amp;#039;لِلْكِتَاب&amp;#039;, &amp;#039;lilkitāb&amp;#039; }, -- ideally &amp;#039;li-l-kitāb&amp;#039;&lt;br /&gt;
		{ &amp;#039;لِلتَّأْكِيد&amp;#039;, nil }, -- ideally &amp;#039;li-t-taʔḵīd&amp;#039;&lt;br /&gt;
		{ &amp;#039;لِلَّبَنِ&amp;#039;, &amp;#039;lillabani&amp;#039; }, -- ideally &amp;#039;li-l-labani&amp;#039;; correct spelling&lt;br /&gt;
		{ &amp;#039;لِللَّبَنِ&amp;#039;, nil }, -- ideally &amp;#039;li-l-labani; spelling sometimes used&lt;br /&gt;
		{ &amp;#039;شْنِيتْزَل&amp;#039;, &amp;quot;šnītzal&amp;quot; },&lt;br /&gt;
		{ &amp;#039;عُظْمَى&amp;#039;, &amp;quot;ʕuẓmā&amp;quot; },&lt;br /&gt;
		{ &amp;#039;إِحْدَى&amp;#039;, &amp;quot;ʔiḥdā&amp;quot; },&lt;br /&gt;
		{ &amp;#039;خَطَإٍ&amp;#039;, &amp;quot;ḵaṭaʔin&amp;quot; },&lt;br /&gt;
		-- cases with bi- prefix plus definite article&lt;br /&gt;
		{ &amp;#039;بِٱلتَّأْكِيد&amp;#039;, &amp;quot;bi-t-taʔkīd&amp;quot; },&lt;br /&gt;
		{ &amp;#039;بِالتَّأْكِيد&amp;#039;, &amp;quot;bi-t-taʔkīd&amp;quot; },&lt;br /&gt;
		{ &amp;#039;بِالتَأْكِيد&amp;#039;, &amp;quot;bi-t-taʔkīd&amp;quot; },&lt;br /&gt;
		{ &amp;#039;بِالكِتَاب&amp;#039;, &amp;quot;bi-l-kitāb&amp;quot; },&lt;br /&gt;
		{ &amp;#039;بِالْكِتَاب&amp;#039;, &amp;quot;bi-l-kitāb&amp;quot; },&lt;br /&gt;
		-- check handling of ʔiʕrāb, hamzatu l-waṣl w/al-, al- w/sun and moon letters&lt;br /&gt;
		{ &amp;#039;اَللُّغَةُ ٱلْعَرَبِيَّةُ&amp;#039;, &amp;quot;al-luḡatu l-ʕarabiyyatu&amp;quot; },&lt;br /&gt;
		-- check elision of al- after a vowel&lt;br /&gt;
		{ &amp;#039;اَللُّغَةُ الْعَرَبِيَّةُ&amp;#039;, &amp;quot;al-luḡatu l-ʕarabiyyatu&amp;quot; },&lt;br /&gt;
	&lt;br /&gt;
		-- check two kinds of otiose alif in 3rd-masc-plural endings	&lt;br /&gt;
		{ &amp;#039;نَسُوا&amp;#039;, &amp;quot;nasū&amp;quot; },&lt;br /&gt;
		{ &amp;#039;رَمَوْا&amp;#039;, &amp;quot;ramaw&amp;quot; },&lt;br /&gt;
		{ &amp;#039;دَعَوُا اللّٰهَ&amp;#039;, &amp;quot;daʕawu llāha&amp;quot; },&lt;br /&gt;
		-- check otiose alif and alif maqṣūra after fatḥatan&lt;br /&gt;
		{ &amp;#039;عَصًا&amp;#039;, &amp;quot;ʕaṣan&amp;quot; },&lt;br /&gt;
		{ &amp;#039;هُدًى&amp;#039;, &amp;quot;hudan&amp;quot; },&lt;br /&gt;
		-- same where fatḥatan wrongly placed over alif or alif maqṣūra&lt;br /&gt;
		{ &amp;#039;عَصاً&amp;#039;, &amp;quot;ʕaṣan&amp;quot; },&lt;br /&gt;
		{ &amp;#039;هُدىً&amp;#039;, &amp;quot;hudan&amp;quot; },&lt;br /&gt;
		-- infer fatḥa on alif between consonants&lt;br /&gt;
		{ &amp;#039;كاتِب&amp;#039;, &amp;quot;kātib&amp;quot; },&lt;br /&gt;
		-- infer fatḥa on alif between consonants when first is marked with shadda&lt;br /&gt;
		{ &amp;#039;كُتّاب&amp;#039;, &amp;quot;kuttāb&amp;quot; },&lt;br /&gt;
		-- infer kasra after hamza-under-alif&lt;br /&gt;
		{ &amp;#039;إلاه&amp;#039;, &amp;quot;ʔilāh&amp;quot; },&lt;br /&gt;
		-- missing diacritic on t&lt;br /&gt;
		{ &amp;#039;كاتب&amp;#039;, nil },&lt;br /&gt;
		-- final shadda on unvocalized consonant&lt;br /&gt;
		{ &amp;#039;رَبّ&amp;#039;, &amp;quot;rabb&amp;quot; },&lt;br /&gt;
		-- tā&amp;#039; marbūṭa preceded by alif; don&amp;#039;t infer fatḥa&lt;br /&gt;
		{ &amp;#039;نَوَاةٌ&amp;#039;, &amp;quot;nawātun&amp;quot; },&lt;br /&gt;
		-- alif-lam w/unvocalized lam + shadda over sun letter; final tāʔ marbūṭa&lt;br /&gt;
		{ &amp;#039;اَلشَّدَّة&amp;#039;, &amp;quot;aš-šadda&amp;quot; },&lt;br /&gt;
		-- medial tāʔ marbūṭa&lt;br /&gt;
		{ &amp;#039;شَدَّة الشَكْل&amp;#039;, &amp;quot;šadda(t) aš-šakl&amp;quot; },&lt;br /&gt;
		-- alif + tāʔ marbūṭa --&amp;gt; āh&lt;br /&gt;
		{ &amp;#039;مُعَادَاة&amp;#039;, &amp;quot;muʕādāh&amp;quot; },&lt;br /&gt;
		-- alif madda + tāʔ marbūṭa --&amp;gt; āh&lt;br /&gt;
		{ &amp;#039;مِرْآة&amp;#039;, &amp;quot;mirʔāh&amp;quot; },&lt;br /&gt;
	    -- test of h for the constant&lt;br /&gt;
		{ &amp;#039;صلاح&amp;#039;, nil },&lt;br /&gt;
		-- initial unhamzated alif + ī&lt;br /&gt;
		{ &amp;#039;اِيبَ&amp;#039;, &amp;quot;ība&amp;quot; },&lt;br /&gt;
		-- iyū sequence&lt;br /&gt;
		{ &amp;#039;دِيُون&amp;#039;, &amp;quot;diyūn&amp;quot; },&lt;br /&gt;
		-- uwī sequence&lt;br /&gt;
		{ &amp;#039;دُوِين&amp;#039;, &amp;quot;duwīn&amp;quot; },&lt;br /&gt;
		-- allaḏī, with al + shadda&lt;br /&gt;
		{ &amp;#039;الَّذِي&amp;#039;, &amp;quot;allaḏī&amp;quot; },&lt;br /&gt;
		-- alif al-wasl&lt;br /&gt;
		{ &amp;#039;رَأَيْتُ ابْنَهُ&amp;#039;, &amp;quot;raʔaytu bnahu&amp;quot; },&lt;br /&gt;
		{ &amp;#039;رَأَيْتُ ٱبْنَهُ&amp;#039;, &amp;quot;raʔaytu bnahu&amp;quot; },&lt;br /&gt;
		-- &amp;quot;swash kaf&amp;quot;&lt;br /&gt;
		{ &amp;#039;ڪُفُوًا&amp;#039;, &amp;quot;kufuwan&amp;quot; },&lt;br /&gt;
		{ &amp;#039;أَحَدٌ ٱللّٰهُ ٱلصَّمَدُ&amp;#039;, &amp;quot;ʔaḥaduni llāhu ṣ-ṣamadu&amp;quot; },&lt;br /&gt;
		{ &amp;#039;حُووِلَ&amp;#039;, &amp;quot;ḥūwila&amp;quot; },&lt;br /&gt;
		{ &amp;#039;دُوَيْبَّة&amp;#039;, &amp;quot;duwaybba&amp;quot; },&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	self:iterate(examples, &amp;quot;do_test_translit&amp;quot;)&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
return tests&lt;/div&gt;</summary>
		<author><name>wikt&gt;Theknightwho</name></author>
	</entry>
</feed>