Modul:Valuta/testtilfeller
Utseende
-- Unit tests for [[Module:Valuta]]. Click talk page to run tests.
local Tests = require('Module:UnitTests')
local Valuta = require('Module:Valuta')
function Tests:test_create()
local valuta = Valuta.create( 'NOK', 42 )
self:equals( 'valuta:getLabel("nb")', valuta:getLabel("nb"),
'norsk krone' )
self:equals( 'valuta:getSitelink("nowiki")', valuta:getLabel("nowiki"),
'norsk krone' )
self:equals( 'valuta:getValue()', valuta:getValue(),
42 )
self:equals_deep( 'valuta:getCodes()', valuta:getCodes(),
{ 'NOK' } )
self:equals_deep( 'valuta:getSymbols()', valuta:getSymbols(),
{ 'kr' } )
self:equals( 'valuta:formatTitlestring("nb")', valuta:formatTitlestring( "nb" ),
'norsk krone (kr): 42' )
self:equals( 'valuta:formatWikitext("nowiki")', valuta:formatWikitext( "nowiki" ),
'[[Norsk krone|NOK]] 42' )
self:equals( 'valuta:format("nowiki","nb")', tostring( valuta:format( "nowiki","nb" ) ),
'<span class="note nowrap" title="norsk krone (kr): 42">[[Norsk krone|NOK]] 42</span>' )
end
function Tests:test_parse()
self:equals( 'Valuta.parse("NOK 42")', tostring( Valuta.parse( "NOK 42" ) ),
'<span class="note nowrap" title="norsk krone (kr): 42">[[Norsk krone|NOK]] 42</span>' )
self:equals( 'Valuta.parse("NOK 42000")', tostring( Valuta.parse( "NOK 42000" ) ),
'<span class="note nowrap" title="norsk krone (kr): 42 000">[[Norsk krone|NOK]] 42 000</span>' )
self:equals( 'Valuta.parse("NOK 3.14156")', tostring( Valuta.parse( "NOK 3.14156" ) ),
'<span class="note nowrap" title="norsk krone (kr): 3,14156">[[Norsk krone|NOK]] 3,14156</span>' )
self:equals( 'Valuta.parse("NOK 3,14156")', tostring( Valuta.parse( "NOK 3,14156" ) ),
'<span class="note nowrap" title="norsk krone (kr): 3,14156">[[Norsk krone|NOK]] 3,14156</span>' )
self:equals( 'Valuta.parse("foo NOK 42 bar")', tostring( Valuta.parse( "foo NOK 42 bar" ) ),
'foo '
..'<span class="note nowrap" title="norsk krone (kr): 42">[[Norsk krone|NOK]] 42</span>'
..' bar' )
self:equals( 'Valuta.parse("foo NOK 42 bar SEK 3.14156 baz")', tostring( Valuta.parse( "foo NOK 42 bar SEK 3.14156 baz" ) ),
'foo '
..'<span class="note nowrap" title="norsk krone (kr): 42">[[Norsk krone|NOK]] 42</span>'
..' bar '
..'<span class="note nowrap" title="svensk krone (kr): 3,14156">[[Svensk krone|SEK]] 3,14156</span>'
..' baz' )
end
function Tests:test_query()
self:preprocess_equals( '{{#invoke:Valuta|query|NOK 42}}',
'<span class="note nowrap" title="norsk krone (kr): 42">[[Norsk krone|NOK]] 42</span>' )
self:preprocess_equals( '{{#invoke:Valuta|query|NOK 3.14156}}',
'<span class="note nowrap" title="norsk krone (kr): 3,14156">[[Norsk krone|NOK]] 3,14156</span>' )
self:preprocess_equals( '{{#invoke:Valuta|query|foo NOK 42 bar}}',
'foo '
..'<span class="note nowrap" title="norsk krone (kr): 42">[[Norsk krone|NOK]] 42</span>'
..' bar' )
self:preprocess_equals( '{{#invoke:Valuta|query|foo NOK 42 bar SEK 3.14156 baz}}',
'foo '
..'<span class="note nowrap" title="norsk krone (kr): 42">[[Norsk krone|NOK]] 42</span>'
..' bar '
..'<span class="note nowrap" title="svensk krone (kr): 3,14156">[[Svensk krone|SEK]] 3,14156</span>'
..' baz' )
end
function Tests:test_template()
self:preprocess_equals( '{{Valuta|NOK 42}}',
'<span class="note nowrap" title="norsk krone (kr): 42">[[Norsk krone|NOK]] 42</span>' )
end
return Tests