Modul:Formattal/testcases
Udseende
-- Enhedstests for [[Modul:Formattal]]. Klik på diskussionsside for at køre tests.
local p = require('Module:UnitTests')
function p:test_formattal()
-- 0 decimaler, ingen tusindadskiller
self:preprocess_equals("{{#invoke:Formattal|formattal|1}}", "1")
self:preprocess_equals("{{#invoke:Formattal|formattal|12}}", "12")
self:preprocess_equals("{{#invoke:Formattal|formattal|123}}", "123")
self:preprocess_equals("{{#invoke:Formattal|formattal|1234}}", "1.234")
self:preprocess_equals("{{#invoke:Formattal|formattal|12345}}", "12.345")
self:preprocess_equals("{{#invoke:Formattal|formattal|123456}}", "123.456")
-- 0 decimaler, komma som tusindadskiller
self:preprocess_equals("{{#invoke:Formattal|formattal|1}}", "1")
self:preprocess_equals("{{#invoke:Formattal|formattal|12}}", "12")
self:preprocess_equals("{{#invoke:Formattal|formattal|123}}", "123")
self:preprocess_equals("{{#invoke:Formattal|formattal|1,234}}", "1.234")
self:preprocess_equals("{{#invoke:Formattal|formattal|12,345}}", "12.345")
self:preprocess_equals("{{#invoke:Formattal|formattal|123,456}}", "123.456")
-- 0 decimaler, punktum som tusindadskiller
self:preprocess_equals("{{#invoke:Formattal|formattal|1}}", "1")
self:preprocess_equals("{{#invoke:Formattal|formattal|12}}", "12")
self:preprocess_equals("{{#invoke:Formattal|formattal|123}}", "123")
self:preprocess_equals("{{#invoke:Formattal|formattal|1.234}}", "1.234")
self:preprocess_equals("{{#invoke:Formattal|formattal|12.345}}", "12.345")
self:preprocess_equals("{{#invoke:Formattal|formattal|123.456}}", "123.456")
-- 1 decimal, decimaladskiller komma, punktum som tusindadskiller
self:preprocess_equals("{{#invoke:Formattal|formattal|1,0}}", "1,0")
self:preprocess_equals("{{#invoke:Formattal|formattal|12,0}}", "12,0")
self:preprocess_equals("{{#invoke:Formattal|formattal|123,0}}", "123,0")
self:preprocess_equals("{{#invoke:Formattal|formattal|1.234,0}}", "1.234,0")
self:preprocess_equals("{{#invoke:Formattal|formattal|12.345,0}}", "12.345,0")
self:preprocess_equals("{{#invoke:Formattal|formattal|123.456,0}}", "123.456,0")
-- 1 decimal, decimaladskiller punktum, komma som tusindadskiller
self:preprocess_equals("{{#invoke:Formattal|formattal|1.0}}", "1,0")
self:preprocess_equals("{{#invoke:Formattal|formattal|12.0}}", "12,0")
self:preprocess_equals("{{#invoke:Formattal|formattal|123.0}}", "123,0")
self:preprocess_equals("{{#invoke:Formattal|formattal|1,234.0}}", "1.234,0")
self:preprocess_equals("{{#invoke:Formattal|formattal|12,345.0}}", "12.345,0")
self:preprocess_equals("{{#invoke:Formattal|formattal|123,456.0}}", "123.456,0")
-- 2 decimaler, decimaladskiller punktum, tusindadskiller punktum
self:preprocess_equals("{{#invoke:Formattal|formattal|1.00}}", "1,00")
self:preprocess_equals("{{#invoke:Formattal|formattal|12.00}}", "12,00")
self:preprocess_equals("{{#invoke:Formattal|formattal|123.00}}", "123,00")
self:preprocess_equals("{{#invoke:Formattal|formattal|1.234.00}}", "1.234.00[[Kategori:Sider med tal hvis format ikke kendes af formattal]]")
self:preprocess_equals("{{#invoke:Formattal|formattal|12.345.00}}", "12.345.00[[Kategori:Sider med tal hvis format ikke kendes af formattal]]")
self:preprocess_equals("{{#invoke:Formattal|formattal|123.456.00}}", "123.456.00[[Kategori:Sider med tal hvis format ikke kendes af formattal]]")
-- 2 decimaler, decimaladskiller punktum, tusindadskiller komma
self:preprocess_equals("{{#invoke:Formattal|formattal|1.00}}", "1,00")
self:preprocess_equals("{{#invoke:Formattal|formattal|12.00}}", "12,00")
self:preprocess_equals("{{#invoke:Formattal|formattal|123.00}}", "123,00")
self:preprocess_equals("{{#invoke:Formattal|formattal|1,234.00}}", "1.234,00")
self:preprocess_equals("{{#invoke:Formattal|formattal|12,345.00}}", "12.345,00")
self:preprocess_equals("{{#invoke:Formattal|formattal|123,456.00}}", "123.456,00")
-- Negative tal er blevet gyldige pr. 2017-11-21.
self:preprocess_equals("{{#invoke:Formattal|formattal|-123}}", "-123")
-- Nonsens er ugyldigt
self:preprocess_equals("{{#invoke:Formattal|formattal|nonsens}}", "nonsens[[Kategori:Sider med tal hvis format ikke kendes af formattal]]")
if false then
-- 2017-10-25: Disse fejler p.t.
-- 3 eller flere decimaler, hvor tallet ikke kan fortolkes som et heltal.
self:preprocess_equals("{{#invoke:Formattal|formattal|.123}}", ".123[[Kategori:Sider med tal hvis format ikke kendes af formattal]]")
self:preprocess_equals("{{#invoke:Formattal|formattal|.1234}}", ".1234[[Kategori:Sider med tal hvis format ikke kendes af formattal]]")
self:preprocess_equals("{{#invoke:Formattal|formattal|0.1234}}", "0.1234[[Kategori:Sider med tal hvis format ikke kendes af formattal]]")
self:preprocess_equals("{{#invoke:Formattal|formattal|,123}}", ",123[[Kategori:Sider med tal hvis format ikke kendes af formattal]]")
self:preprocess_equals("{{#invoke:Formattal|formattal|0,1234}}", "0,1234[[Kategori:Sider med tal hvis format ikke kendes af formattal]]")
-- Tomt input er ugyldigt
self:preprocess_equals("{{#invoke:Formattal|formattal|}}", "[[Kategori:Sider med tal hvis format ikke kendes af formattal]]")
end
end
return p