Jump to content

Module:Formatnum/testcases: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Fix result
Split up
Line 116: Line 116:
end
end



function p:test_wordify()
function p:test_wordify_India()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1|numsys=ind}}', '1')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2|numsys=ind}}', '1.00 lakh')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000|numsys=ind|simplify=yes}}', 'lakh')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000|numsys=ind}}', '10 lakh')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|10000000|numsys=ind|simplify=yes}}', 'crore')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000|numsys=ind}}', '100 crore')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|numsys=ind|simplify=yes}}', 'lakh crore')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|numsys=ind}}', '1 lakh crore')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000000000000|numsys=ind|simplify=yes}}', 'crore crore')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000000000000|numsys=ind}}', '1 crore crore')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1|lk=on|numsys=ind}}', '1')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000|lk=on|numsys=ind|simplify=yes}}', '[[lakh]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000|lk=on|numsys=ind}}', '1 [[lakh]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000|lk=on|numsys=ind}}', '10 [[lakh]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|10000000|lk=on|numsys=ind|simplify=yes}}', '[[crore]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000|lk=on|numsys=ind}}', '100 [[crore]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|lk=on|numsys=ind|simplify=yes}}', '[[lakh]] [[crore]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|lk=on|numsys=ind}}', '1 [[lakh]] [[crore]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000000000000|lk=on|numsys=ind|simplify=yes}}', '[[crore]] crore')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000000000000|lk=on|numsys=ind}}', '1 [[crore]] crore')
end

function p:test_wordify_default()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1}}', '1')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1}}', '1')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2}}', '100,000.99')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2}}', '100,000.99')
Line 134: Line 158:
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E39|lk=on}}', '1 [[en:Orders of magnitude (numbers)#1039|duodecillion]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E39|lk=on}}', '1 [[en:Orders of magnitude (numbers)#1039|duodecillion]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on}}', '1 [[en:Names of large numbers|tredecillion]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on}}', '1 [[en:Names of large numbers|tredecillion]]')
end

function p:test_wordify_USA()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1|numsys=usa}}', '1')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1|numsys=usa}}', '1')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2|numsys=usa}}', '100,000.99')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2|numsys=usa}}', '100,000.99')
Line 147: Line 174:
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E39|lk=on|numsys=usa}}', '1 [[en:Orders of magnitude (numbers)#1039|duodecillion]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E39|lk=on|numsys=usa}}', '1 [[en:Orders of magnitude (numbers)#1039|duodecillion]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=usa}}', '1 [[en:Names of large numbers|tredecillion]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=usa}}', '1 [[en:Names of large numbers|tredecillion]]')
end

function p:test_wordify_France()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1|numsys=fra}}', '1')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1|numsys=fra}}', '1')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2|numsys=fra}}', '100,000.99')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2|numsys=fra}}', '100,000.99')
Line 160: Line 190:
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000|lk=on|numsys=fra}}', '1 [[en:Orders of magnitude (numbers)#109|milliard]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000|lk=on|numsys=fra}}', '1 [[en:Orders of magnitude (numbers)#109|milliard]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|lk=on|numsys=fra}}', '1 [[en:Orders of magnitude (numbers)#1012|billion]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|lk=on|numsys=fra}}', '1 [[en:Orders of magnitude (numbers)#1012|billion]]')
end

function p:test_wordify_French()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E36|lk=on|numsys=fra|lang=fr}}', '1 [[fr:Ordres de grandeur de nombres#1036|sextillion]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E36|lk=on|numsys=fra|lang=fr}}', '1 [[fr:Ordres de grandeur de nombres#1036|sextillion]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E39|lk=on|numsys=fra|lang=fr}}', '1 [[fr:Noms des grands nombres|sextilliard]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E39|lk=on|numsys=fra|lang=fr}}', '1 [[fr:Noms des grands nombres|sextilliard]]')
Line 173: Line 206:
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000000|lk=on|numsys=fra|lang=fr}}', '2 [[fr:Ordres de grandeur de nombres#109|milliards]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000000|lk=on|numsys=fra|lang=fr}}', '2 [[fr:Ordres de grandeur de nombres#109|milliards]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000000000|lk=on|numsys=fra|lang=fr}}', '2 [[fr:Ordres de grandeur de nombres#1012|billions]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000000000|lk=on|numsys=fra|lang=fr}}', '2 [[fr:Ordres de grandeur de nombres#1012|billions]]')
end

function p:test_wordify_Portuguese()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1|lk=on|numsys=fra|lang=pt}}', '1')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1|lk=on|numsys=fra|lang=pt}}', '1')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2|lk=on|numsys=fra|lang=pt}}', '100.000,99')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2|lk=on|numsys=fra|lang=pt}}', '100.000,99')
Line 189: Line 225:
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000000|lk=on|numsys=fra|lang=pt}}', '2 [[en:Orders of magnitude (numbers)#109|mil milhões]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000000|lk=on|numsys=fra|lang=pt}}', '2 [[en:Orders of magnitude (numbers)#109|mil milhões]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000000000|lk=on|numsys=fra|lang=pt}}', '2 [[en:Orders of magnitude (numbers)#1012|biliões]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000000000|lk=on|numsys=fra|lang=pt}}', '2 [[en:Orders of magnitude (numbers)#1012|biliões]]')
end

function p:test_wordify_Spanish()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E9|lk=on|numsys=fra|lang=es}}', '1 [[en:Orders of magnitude (numbers)#109|millardo]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E9|lk=on|numsys=fra|lang=es}}', '1 [[en:Orders of magnitude (numbers)#109|millardo]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E9|lk=on|numsys=fra|lang=es}}', '2 [[en:Orders of magnitude (numbers)#109|millardos]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E9|lk=on|numsys=fra|lang=es}}', '2 [[en:Orders of magnitude (numbers)#109|millardos]]')
Line 195: Line 234:
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E45|lk=on|numsys=fra|lang=es}}', '[[en:Names of large numbers|mil septillones]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E45|lk=on|numsys=fra|lang=es}}', '[[en:Names of large numbers|mil septillones]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E45|lk=on|numsys=fra|lang=es}}', '2 [[en:Names of large numbers|mil septillones]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E45|lk=on|numsys=fra|lang=es}}', '2 [[en:Names of large numbers|mil septillones]]')
end

function p:test_wordify_Italian()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E30|lk=on|numsys=fra|lang=it}}', '1 [[it:Ordini di grandezza (numeri)#1030|quintilione]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E30|lk=on|numsys=fra|lang=it}}', '1 [[it:Ordini di grandezza (numeri)#1030|quintilione]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E30|lk=on|numsys=fra|lang=it}}', '2 [[it:Ordini di grandezza (numeri)#1030|quintilioni]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E30|lk=on|numsys=fra|lang=it}}', '2 [[it:Ordini di grandezza (numeri)#1030|quintilioni]]')
Line 202: Line 244:
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E39|lk=on|numsys=fra|lang=it}}', '1.000.000 [[it:Ordini di grandezza (numeri)#1033|quintiliardi]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E39|lk=on|numsys=fra|lang=it}}', '1.000.000 [[it:Ordini di grandezza (numeri)#1033|quintiliardi]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=it}}', '1.000.000.000 [[it:Ordini di grandezza (numeri)#1033|quintiliardi]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=it}}', '1.000.000.000 [[it:Ordini di grandezza (numeri)#1033|quintiliardi]]')
end

function p:test_wordify_Catalan()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=ca}}', '1 [[ca:Escales curta i llarga|septilió]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=ca}}', '1 [[ca:Escales curta i llarga|septilió]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=ca}}', '2 [[ca:Escales curta i llarga|septilions]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=ca}}', '2 [[ca:Escales curta i llarga|septilions]]')
Line 218: Line 263:
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E45|lk=on|numsys=fra|lang=ca}}', '7 [[ca:Escales curta i llarga|septiliards]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E45|lk=on|numsys=fra|lang=ca}}', '7 [[ca:Escales curta i llarga|septiliards]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E45|lk=on|numsys=fra|lang=ca|prec=1}}', '6,5 [[ca:Escales curta i llarga|septiliards]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E45|lk=on|numsys=fra|lang=ca|prec=1}}', '6,5 [[ca:Escales curta i llarga|septiliards]]')
end

function p:test_wordify_Danish()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=da}}', '1 [[da:Store tal|septillion]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=da}}', '1 [[da:Store tal|septillion]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=da}}', '2 [[da:Store tal|septillioner]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=da}}', '2 [[da:Store tal|septillioner]]')
Line 234: Line 282:
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E45|lk=on|numsys=fra|lang=da}}', '7 [[da:Store tal|septilliarder]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E45|lk=on|numsys=fra|lang=da}}', '7 [[da:Store tal|septilliarder]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E45|lk=on|numsys=fra|lang=da|prec=1}}', '6,5 [[da:Store tal|septilliarder]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E45|lk=on|numsys=fra|lang=da|prec=1}}', '6,5 [[da:Store tal|septilliarder]]')
end

function p:test_wordify_Polish()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=pl}}', '1 [[pl:Liczebniki główne potęg tysiąca|septylion]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=pl}}', '1 [[pl:Liczebniki główne potęg tysiąca|septylion]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=pl}}', '2 [[pl:Liczebniki główne potęg tysiąca|septyliony]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=pl}}', '2 [[pl:Liczebniki główne potęg tysiąca|septyliony]]')
Line 242: Line 293:
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E42|lk=on|numsys=fra|lang=pl}}', '7 [[pl:Liczebniki główne potęg tysiąca|septylionów]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E42|lk=on|numsys=fra|lang=pl}}', '7 [[pl:Liczebniki główne potęg tysiąca|septylionów]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E42|lk=on|numsys=fra|lang=pl|prec=1}}', '6,5 [[pl:Liczebniki główne potęg tysiąca|septyliona]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E42|lk=on|numsys=fra|lang=pl|prec=1}}', '6,5 [[pl:Liczebniki główne potęg tysiąca|septyliona]]')
end

function p:test_wordify_Slovak()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=sk}}', '1 [[sk:Veľké čísla|septilión]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=sk}}', '1 [[sk:Veľké čísla|septilión]]')
end

function p:test_wordify_Slovene()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=sl}}', '1 [[sl:Imena velikih števil|septilijon]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=sl}}', '1 [[sl:Imena velikih števil|septilijon]]')
end

function p:test_wordify_German()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=de}}', '1 [[de:Zahlennamen|Septillion]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=de}}', '1 [[de:Zahlennamen|Septillion]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=de}}', '2 [[de:Zahlennamen|Septillionen]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=de}}', '2 [[de:Zahlennamen|Septillionen]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E45|lk=on|numsys=fra|lang=de}}', '1 [[de:Zahlennamen|Septilliarde]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E45|lk=on|numsys=fra|lang=de}}', '1 [[de:Zahlennamen|Septilliarde]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E45|lk=on|numsys=fra|lang=de}}', '2 [[de:Zahlennamen|Septilliarden]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E45|lk=on|numsys=fra|lang=de}}', '2 [[de:Zahlennamen|Septilliarden]]')
end

function p:test_wordify_Latin()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=la}}', '1 [[la:Nomina permagnorum numerorum|septillio]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=la}}', '1 [[la:Nomina permagnorum numerorum|septillio]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=la}}', '2 [[la:Nomina permagnorum numerorum|septillionibus]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=la}}', '2 [[la:Nomina permagnorum numerorum|septillionibus]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E45|lk=on|numsys=fra|lang=la}}', '1 [[la:Nomina permagnorum numerorum|septilliardum]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E45|lk=on|numsys=fra|lang=la}}', '1 [[la:Nomina permagnorum numerorum|septilliardum]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E45|lk=on|numsys=fra|lang=la}}', '2 [[la:Nomina permagnorum numerorum|septilliarda]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E45|lk=on|numsys=fra|lang=la}}', '2 [[la:Nomina permagnorum numerorum|septilliarda]]')
end

function p:test_wordify_Esperanto()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=eo}}', '1 [[eo:Vortoj por grandegaj nombroj|sepiliono]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=eo}}', '1 [[eo:Vortoj por grandegaj nombroj|sepiliono]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=eo}}', '2 [[eo:Vortoj por grandegaj nombroj|sepilionoj]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=eo}}', '2 [[eo:Vortoj por grandegaj nombroj|sepilionoj]]')
end

function p:test_wordify_Dutch()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=nl}}', '1 [[nl:Lijst van machten van tien|septiljoen]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=nl}}', '1 [[nl:Lijst van machten van tien|septiljoen]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=nl}}', '2 [[nl:Lijst van machten van tien|septiljoen]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=nl}}', '2 [[nl:Lijst van machten van tien|septiljoen]]')
end

function p:test_wordify_Norwegian()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=no}}', '1 [[no:Navn på store tall|septillion]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=no}}', '1 [[no:Navn på store tall|septillion]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=no}}', '2 [[no:Navn på store tall|septillioner]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=no}}', '2 [[no:Navn på store tall|septillioner]]')
end

function p:test_wordify_Swedish()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=sv}}', '1 [[sv:Namn på stora tal|septiljon]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=sv}}', '1 [[sv:Namn på stora tal|septiljon]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=sv}}', '2 [[sv:Namn på stora tal|septiljoner]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=sv}}', '2 [[sv:Namn på stora tal|septiljoner]]')
end
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1|numsys=ind}}', '1')

self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2|numsys=ind}}', '1.00 lakh')
function p:test_wordify_error()
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000|numsys=ind|simplify=yes}}', 'lakh')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000|numsys=ind}}', '10 lakh')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|10000000|numsys=ind|simplify=yes}}', 'crore')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000|numsys=ind}}', '100 crore')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|numsys=ind|simplify=yes}}', 'lakh crore')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|numsys=ind}}', '1 lakh crore')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000000000000|numsys=ind|simplify=yes}}', 'crore crore')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000000000000|numsys=ind}}', '1 crore crore')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1|lk=on|numsys=ind}}', '1')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000|lk=on|numsys=ind|simplify=yes}}', '[[lakh]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000|lk=on|numsys=ind}}', '1 [[lakh]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000|lk=on|numsys=ind}}', '10 [[lakh]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|10000000|lk=on|numsys=ind|simplify=yes}}', '[[crore]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000|lk=on|numsys=ind}}', '100 [[crore]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|lk=on|numsys=ind|simplify=yes}}', '[[lakh]] [[crore]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|lk=on|numsys=ind}}', '1 [[lakh]] [[crore]]')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000000000000|lk=on|numsys=ind|simplify=yes}}', '[[crore]] crore')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000000000000|lk=on|numsys=ind}}', '1 [[crore]] crore')
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|Bad}}', err("Not a number: Bad"))
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|Bad}}', err("Not a number: Bad"))
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1=<big><span style="color: red;">Bad</span></big>}}', err('Not a number: <big><span style="color: red;">Bad</span></big>'))
self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1=<big><span style="color: red;">Bad</span></big>}}', err('Not a number: <big><span style="color: red;">Bad</span></big>'))

Revision as of 15:46, 28 February 2021

-- Unit tests for [[Module:Formatnum]]. Click talk page to run tests.
local p = require('Module:UnitTests')

local function err(msg)
	-- Generates wikitext error messages.
	return mw.ustring.format('<strong class="error">Formatting error: %s</strong>', msg)
end

function p:test_1_English_basic()
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|0|en}}', '0')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|-123|en}}', '-123')
end

function p:test_2_unnecessary_signs()
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|-0|en}}', '0')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|+123|en}}', '123')
end

function p:test_3_non_numbers_preserved()
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|12:34:45|en}}', '12:34:45')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|12 h 34|fr}}', '12 h 34')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|12:34:45|th}}', '12:34:45')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|12:34:45.00|en}}', '12:34:45.00')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|12°34′45.00″|en}}', '12°34′45.00″')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|some words...|en}}', 'some words...')
end

function p:test_4_English_precision_rounding()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100|en|prec=1}}', '100.0')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100.0|en|prec=1}}', '100.0')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100.01|en|prec=2}}', '100.01')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100.01|en|prec=3}}', '100.010')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100.010|en|prec=2}}', '100.01')
end

function p:test_5_English_bad_parameters()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|.10,00|en}}', '.10,00')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|.10,00|en|sep=}}', '.10,00')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100,0.|en}}', '100,0.')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100,0.|en|sep=}}', '100,0.')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100.01|en|prec=-2}}', '100.01')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|200.1|en|prec=3.5}}', '200.100')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|200.1|en|prec=3,5}}', '200.1')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|200.1|en|prec=a}}', '200.1')
end

function p:test_6_decimal_separator()
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|.12345|en}}', '0.12345')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|.12345|fr}}', '0,12345')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|123.45|en}}', '123.45')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|123.45|fr}}', '123,45')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|123.|en}}', '123')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|123.|fr}}', '123')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|123.00|en}}', '123')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|123.00|fr}}', '123')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1001|de}}', '1.001')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1001|pl}}', '1001')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1001|en}}', '1,001')
end

function p:test_7_no_grouping_separators()
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100000|en|sep=1}}', '100000')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100000|fr|sep=1}}', '100000')
end

function p:test_8_HTML_entity_or_native_UTF8()
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|12345|en}}', '12,345')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|12345|fr}}', '12\194\160345') -- "\194\160" in Lua litterals is NBSP (U+00A0) encoded in UTF-8 (0xC2,0xA0)
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|12345|en}}', '12,345')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|12345|fr}}', '12\194\160345')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|12345|br}}', '12\194\160345')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|12345|co}}', '12\194\160345')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|12345|oc}}', '12\194\160345')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|12345|ty}}', '12\194\160345')
end

function p:test_9_grouping_separators()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|en}}', '1,234,567,890')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|es}}', '1.234.567.890')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|pt}}', '1.234.567.890')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|ka}}', '1,234,567,890')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|mn}}', '᠑,᠒᠓᠔,᠕᠖᠗,᠘᠙᠐')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|ar}}', '۱,۲۳۴,۵۶۷,۸۹۰')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|fa}}', '۱,۲۳۴,۵۶۷,۸۹۰')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|ks}}', '۱,۲۳۴,۵۶۷,۸۹۰')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|hi}}', '१,२३,४५,६७,८९०')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|bn}}', '১,২৩,৪৫,৬৭,৮৯০')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|ta}}', '1,23,45,67,890')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|te}}', '౧,౨౩,౪౫,౬౭,౮౯౦')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|kn}}', '೧,೨೩,೪೫,೬೭,೮೯೦ ')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|or}}', '୧,୨୩,୪୫,୬୭,୮୯୦')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|gu}}', '1,23,45,67,890')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|pa}}', '1,23,45,67,890')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|bo}}',  '༡,༢༣༤,༥༦༧,༨༩༠')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|th}}', '๑,๒๓๔,๕๖๗,๘๙๐')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|km}}', '1,234,567,890')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|1234567890|lo}}', '໑,໒໓໔,໕໖໗,໘໙໐ ')
end

function p:test_Error_more_than_20_languages()
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100000|ab|sep=1}}', '100000')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100000|ace|sep=1}}', '100000')
end

function p:test_Unsupported_languages_using_user_default_language_instead_may_fail()
    -- these may fail depending on supported language of the user if it uses non-ASCII digits
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100000||sep=1}}', '100000') -- unspecified Wikimedia default
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100000|aa|sep=1}}', '100000') -- Afar
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100000|qq|sep=1}}', '100000') -- Private-use
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100000|qqa|sep=1}}', '100000') -- Private-use
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100000|mul|sep=1}}', '100000') -- Multilingual
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100000|und|sep=1}}', '100000') -- Undetermined
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100000|root|sep=1}}', '100000') -- CLDR default
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100000|user|sep=1}}', '100000')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|main|100000|invalid|sep=1}}', '100000')
end


function p:test_wordify_India()
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1|numsys=ind}}', '1')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2|numsys=ind}}', '1.00 lakh')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000|numsys=ind|simplify=yes}}', 'lakh')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000|numsys=ind}}', '10 lakh')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|10000000|numsys=ind|simplify=yes}}', 'crore')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000|numsys=ind}}', '100 crore')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|numsys=ind|simplify=yes}}', 'lakh crore')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|numsys=ind}}', '1 lakh crore')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000000000000|numsys=ind|simplify=yes}}', 'crore crore')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000000000000|numsys=ind}}', '1 crore crore')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1|lk=on|numsys=ind}}', '1')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000|lk=on|numsys=ind|simplify=yes}}', '[[lakh]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000|lk=on|numsys=ind}}', '1 [[lakh]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000|lk=on|numsys=ind}}', '10 [[lakh]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|10000000|lk=on|numsys=ind|simplify=yes}}', '[[crore]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000|lk=on|numsys=ind}}', '100 [[crore]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|lk=on|numsys=ind|simplify=yes}}', '[[lakh]] [[crore]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|lk=on|numsys=ind}}', '1 [[lakh]] [[crore]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000000000000|lk=on|numsys=ind|simplify=yes}}', '[[crore]] crore')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000000000000|lk=on|numsys=ind}}', '1 [[crore]] crore')
end

function p:test_wordify_default()
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1}}', '1')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2}}', '100,000.99')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|999999.999|prec=2}}', '1.00 million')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000|simplify=yes}}', 'million')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000}}', '1 million')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000}}', '1 billion')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000}}', '1 trillion')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E39}}', '1 duodecillion')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42}}', '1 tredecillion')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1|lk=on}}', '1')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2|lk=on}}', '100,000.99')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|999999.999|prec=2|lk=on}}', '1.00 [[en:Orders of magnitude (numbers)#106|million]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000|lk=on}}', '1 [[en:Orders of magnitude (numbers)#106|million]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000|lk=on}}', '1 [[en:Orders of magnitude (numbers)#109|billion]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|lk=on}}', '1 [[en:Orders of magnitude (numbers)#1012|trillion]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E39|lk=on}}', '1 [[en:Orders of magnitude (numbers)#1039|duodecillion]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on}}', '1 [[en:Names of large numbers|tredecillion]]')
end

function p:test_wordify_USA()
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1|numsys=usa}}', '1')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2|numsys=usa}}', '100,000.99')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000|numsys=usa}}', '1 million')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000|numsys=usa}}', '1 billion')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|numsys=usa}}', '1 trillion')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1|lk=on|numsys=usa}}', '1')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2|lk=on|numsys=usa}}', '100,000.99')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|999999.999|prec=2|lk=on|numsys=usa}}', '1.00 [[en:Orders of magnitude (numbers)#106|million]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000|lk=on|numsys=usa}}', '1 [[en:Orders of magnitude (numbers)#106|million]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000|lk=on|numsys=usa}}', '1 [[en:Orders of magnitude (numbers)#109|billion]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|lk=on|numsys=usa}}', '1 [[en:Orders of magnitude (numbers)#1012|trillion]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E39|lk=on|numsys=usa}}', '1 [[en:Orders of magnitude (numbers)#1039|duodecillion]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=usa}}', '1 [[en:Names of large numbers|tredecillion]]')
end

function p:test_wordify_France()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1|numsys=fra}}', '1')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2|numsys=fra}}', '100,000.99')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|999999.999|prec=2|numsys=fra}}', '1.00 million')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000|numsys=fra|simplify=yes}}', 'million')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000|numsys=fra}}', '1 million')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000|numsys=fra}}', '1 milliard')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|numsys=fra}}', '1 billion')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1|lk=on|numsys=fra}}', '1')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2|lk=on|numsys=fra}}', '100,000.99')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|999999.999|prec=2|lk=on|numsys=fra}}', '1.00 [[en:Orders of magnitude (numbers)#106|million]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000|lk=on|numsys=fra}}', '1 [[en:Orders of magnitude (numbers)#106|million]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000|lk=on|numsys=fra}}', '1 [[en:Orders of magnitude (numbers)#109|milliard]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|lk=on|numsys=fra}}', '1 [[en:Orders of magnitude (numbers)#1012|billion]]')
end

function p:test_wordify_French()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E36|lk=on|numsys=fra|lang=fr}}', '1 [[fr:Ordres de grandeur de nombres#1036|sextillion]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E39|lk=on|numsys=fra|lang=fr}}', '1 [[fr:Noms des grands nombres|sextilliard]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=fr}}', '1 [[fr:Noms des grands nombres|septillion]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1999999.999|prec=2|lk=on|numsys=fra}}', '2.00 [[en:Orders of magnitude (numbers)#106|million]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2|lk=on|lang=fr}}', '100\194\160000,99')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2|lk=on|numsys=fra|lang=fr}}', '100\194\160000,99')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000|numsys=fra|lang=fr}}', '2 millions')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000000|numsys=fra|lang=fr}}', '2 milliards')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000000000|numsys=fra|lang=fr}}', '2 billions')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1999999.999|prec=2|lk=on|numsys=fra|lang=fr}}', '2.00 [[fr:Ordres de grandeur de nombres#106|millions]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000|lk=on|numsys=fra|lang=fr}}', '2 [[fr:Ordres de grandeur de nombres#106|millions]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000000|lk=on|numsys=fra|lang=fr}}', '2 [[fr:Ordres de grandeur de nombres#109|milliards]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000000000|lk=on|numsys=fra|lang=fr}}', '2 [[fr:Ordres de grandeur de nombres#1012|billions]]')
end

function p:test_wordify_Portuguese()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1|lk=on|numsys=fra|lang=pt}}', '1')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|100000.99|prec=2|lk=on|numsys=fra|lang=pt}}', '100.000,99')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000|numsys=fra|lang=pt}}', '1 milhão')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000|numsys=fra|lang=pt}}', 'mil milhões')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|numsys=fra|lang=pt}}', '1 bilião')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000|lk=on|numsys=fra|lang=pt}}', '1 [[en:Orders of magnitude (numbers)#106|milhão]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000|lk=on|numsys=fra|lang=pt}}', '[[en:Orders of magnitude (numbers)#109|mil milhões]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1000000000000|lk=on|numsys=fra|lang=pt}}', '1 [[en:Orders of magnitude (numbers)#1012|bilião]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E39|lk=on|numsys=fra|lang=pt}}', '[[en:Orders of magnitude (numbers)#1039|mil sextiliões]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=pt}}', '1 [[en:Names of large numbers|septilião]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000|numsys=fra|lang=pt}}', '2 milhões')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000000|numsys=fra|lang=pt}}', '2 mil milhões')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000000000|numsys=fra|lang=pt}}', '2 biliões')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000|lk=on|numsys=fra|lang=pt}}', '2 [[en:Orders of magnitude (numbers)#106|milhões]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000000|lk=on|numsys=fra|lang=pt}}', '2 [[en:Orders of magnitude (numbers)#109|mil milhões]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2000000000000|lk=on|numsys=fra|lang=pt}}', '2 [[en:Orders of magnitude (numbers)#1012|biliões]]')
end

function p:test_wordify_Spanish()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E9|lk=on|numsys=fra|lang=es}}', '1 [[en:Orders of magnitude (numbers)#109|millardo]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E9|lk=on|numsys=fra|lang=es}}', '2 [[en:Orders of magnitude (numbers)#109|millardos]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=es}}', '1 [[en:Names of large numbers|septillón]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=es}}', '2 [[en:Names of large numbers|septillones]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E45|lk=on|numsys=fra|lang=es}}', '[[en:Names of large numbers|mil septillones]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E45|lk=on|numsys=fra|lang=es}}', '2 [[en:Names of large numbers|mil septillones]]')
end

function p:test_wordify_Italian()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E30|lk=on|numsys=fra|lang=it}}', '1 [[it:Ordini di grandezza (numeri)#1030|quintilione]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E30|lk=on|numsys=fra|lang=it}}', '2 [[it:Ordini di grandezza (numeri)#1030|quintilioni]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E33|lk=on|numsys=fra|lang=it}}', '1 [[it:Ordini di grandezza (numeri)#1033|quintiliardo]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E33|lk=on|numsys=fra|lang=it}}', '2 [[it:Ordini di grandezza (numeri)#1033|quintiliardi]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E36|lk=on|numsys=fra|lang=it}}', '1.000 [[it:Ordini di grandezza (numeri)#1033|quintiliardi]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E39|lk=on|numsys=fra|lang=it}}', '1.000.000 [[it:Ordini di grandezza (numeri)#1033|quintiliardi]]')
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=it}}', '1.000.000.000 [[it:Ordini di grandezza (numeri)#1033|quintiliardi]]')
end

function p:test_wordify_Catalan()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=ca}}', '1 [[ca:Escales curta i llarga|septilió]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=ca}}', '2 [[ca:Escales curta i llarga|septilions]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|3E42|lk=on|numsys=fra|lang=ca}}', '3 [[ca:Escales curta i llarga|septilions]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|4E42|lk=on|numsys=fra|lang=ca}}', '4 [[ca:Escales curta i llarga|septilions]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|5E42|lk=on|numsys=fra|lang=ca}}', '5 [[ca:Escales curta i llarga|septilions]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6E42|lk=on|numsys=fra|lang=ca}}', '6 [[ca:Escales curta i llarga|septilions]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E42|lk=on|numsys=fra|lang=ca}}', '7 [[ca:Escales curta i llarga|septilions]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E42|lk=on|numsys=fra|lang=ca|prec=1}}', '6,5 [[ca:Escales curta i llarga|septilions]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E45|lk=on|numsys=fra|lang=ca}}', '1 [[ca:Escales curta i llarga|septiliard]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E45|lk=on|numsys=fra|lang=ca}}', '2 [[ca:Escales curta i llarga|septiliards]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|3E45|lk=on|numsys=fra|lang=ca}}', '3 [[ca:Escales curta i llarga|septiliards]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|4E45|lk=on|numsys=fra|lang=ca}}', '4 [[ca:Escales curta i llarga|septiliards]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|5E45|lk=on|numsys=fra|lang=ca}}', '5 [[ca:Escales curta i llarga|septiliards]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6E45|lk=on|numsys=fra|lang=ca}}', '6 [[ca:Escales curta i llarga|septiliards]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E45|lk=on|numsys=fra|lang=ca}}', '7 [[ca:Escales curta i llarga|septiliards]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E45|lk=on|numsys=fra|lang=ca|prec=1}}', '6,5 [[ca:Escales curta i llarga|septiliards]]')
end

function p:test_wordify_Danish()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=da}}', '1 [[da:Store tal|septillion]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=da}}', '2 [[da:Store tal|septillioner]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|3E42|lk=on|numsys=fra|lang=da}}', '3 [[da:Store tal|septillioner]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|4E42|lk=on|numsys=fra|lang=da}}', '4 [[da:Store tal|septillioner]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|5E42|lk=on|numsys=fra|lang=da}}', '5 [[da:Store tal|septillioner]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6E42|lk=on|numsys=fra|lang=da}}', '6 [[da:Store tal|septillioner]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E42|lk=on|numsys=fra|lang=da}}', '7 [[da:Store tal|septillioner]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E42|lk=on|numsys=fra|lang=da|prec=1}}', '6,5 [[da:Store tal|septillioner]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E45|lk=on|numsys=fra|lang=da}}', '1 [[da:Store tal|septilliard]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E45|lk=on|numsys=fra|lang=da}}', '2 [[da:Store tal|septilliarder]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|3E45|lk=on|numsys=fra|lang=da}}', '3 [[da:Store tal|septilliarder]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|4E45|lk=on|numsys=fra|lang=da}}', '4 [[da:Store tal|septilliarder]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|5E45|lk=on|numsys=fra|lang=da}}', '5 [[da:Store tal|septilliarder]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6E45|lk=on|numsys=fra|lang=da}}', '6 [[da:Store tal|septilliarder]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E45|lk=on|numsys=fra|lang=da}}', '7 [[da:Store tal|septilliarder]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E45|lk=on|numsys=fra|lang=da|prec=1}}', '6,5 [[da:Store tal|septilliarder]]')
end

function p:test_wordify_Polish()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=pl}}', '1 [[pl:Liczebniki główne potęg tysiąca|septylion]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=pl}}', '2 [[pl:Liczebniki główne potęg tysiąca|septyliony]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|3E42|lk=on|numsys=fra|lang=pl}}', '3 [[pl:Liczebniki główne potęg tysiąca|septyliony]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|4E42|lk=on|numsys=fra|lang=pl}}', '4 [[pl:Liczebniki główne potęg tysiąca|septyliony]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|5E42|lk=on|numsys=fra|lang=pl}}', '5 [[pl:Liczebniki główne potęg tysiąca|septylionów]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6E42|lk=on|numsys=fra|lang=pl}}', '6 [[pl:Liczebniki główne potęg tysiąca|septylionów]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E42|lk=on|numsys=fra|lang=pl}}', '7 [[pl:Liczebniki główne potęg tysiąca|septylionów]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|6.5E42|lk=on|numsys=fra|lang=pl|prec=1}}', '6,5 [[pl:Liczebniki główne potęg tysiąca|septyliona]]')
end

function p:test_wordify_Slovak()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=sk}}', '1 [[sk:Veľké čísla|septilión]]')
end

function p:test_wordify_Slovene()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=sl}}', '1 [[sl:Imena velikih števil|septilijon]]')
end

function p:test_wordify_German()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=de}}', '1 [[de:Zahlennamen|Septillion]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=de}}', '2 [[de:Zahlennamen|Septillionen]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E45|lk=on|numsys=fra|lang=de}}', '1 [[de:Zahlennamen|Septilliarde]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E45|lk=on|numsys=fra|lang=de}}', '2 [[de:Zahlennamen|Septilliarden]]')
end

function p:test_wordify_Latin()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=la}}', '1 [[la:Nomina permagnorum numerorum|septillio]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=la}}', '2 [[la:Nomina permagnorum numerorum|septillionibus]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E45|lk=on|numsys=fra|lang=la}}', '1 [[la:Nomina permagnorum numerorum|septilliardum]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E45|lk=on|numsys=fra|lang=la}}', '2 [[la:Nomina permagnorum numerorum|septilliarda]]')
end

function p:test_wordify_Esperanto()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=eo}}', '1 [[eo:Vortoj por grandegaj nombroj|sepiliono]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=eo}}', '2 [[eo:Vortoj por grandegaj nombroj|sepilionoj]]')
end

function p:test_wordify_Dutch()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=nl}}', '1 [[nl:Lijst van machten van tien|septiljoen]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=nl}}', '2 [[nl:Lijst van machten van tien|septiljoen]]')
end

function p:test_wordify_Norwegian()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=no}}', '1 [[no:Navn på store tall|septillion]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=no}}', '2 [[no:Navn på store tall|septillioner]]')
end

function p:test_wordify_Swedish()
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1E42|lk=on|numsys=fra|lang=sv}}', '1 [[sv:Namn på stora tal|septiljon]]')
	self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|2E42|lk=on|numsys=fra|lang=sv}}', '2 [[sv:Namn på stora tal|septiljoner]]')
end

function p:test_wordify_error()
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|Bad}}', err("Not a number: Bad"))
    self:preprocess_equals('{{#invoke:Formatnum/sandbox|wordify|1=<big><span style="color: red;">Bad</span></big>}}', err('Not a number: <big><span style="color: red;">Bad</span></big>'))
end
return p