Module:PermissionTicket/testcases

From Wikimedia Commons, the free media repository
Jump to navigation Jump to search
Lua

CodeDiscussionEditHistoryLinksLink count Subpages:DocumentationTestsResultsSandboxLive code All modules

✓[OK] All tests passed.

Name Expected Actual
✓[OK] test_PermissionTicket
✓[OK] test_comparison

Code

local compare_ids   = require('Module:PermissionTicket').compare_ids-- the module to be tested
local ScribuntoUnit = require('Module:ScribuntoUnit')
local suite = ScribuntoUnit:new()

function suite:test_comparison()
	self:assertEquals( 'matching', compare_ids('A', {'A'}))
	self:assertEquals( 'matching', compare_ids('A', {'A', 'B'}))
	self:assertEquals( 'mismatch', compare_ids('A', {'C', 'B'}))
	self:assertEquals( 'missing',  compare_ids('A', {}))
end

function suite:test_PermissionTicket()
	local frame = mw.getCurrentFrame()
	local actual = frame:preprocess('{{#invoke:PermissionTicket|PermissionTicket|id=2022011910011071}}')
	self:assertNotStringContains( 'invalid', actual)
	self:assertNotStringContains( 'missing', actual)
	
	actual = frame:preprocess('{{#invoke:PermissionTicket|PermissionTicket|id=202201191001107}}')
	self:assertStringContains( 'invalid', actual)
	
	actual = frame:preprocess('{{#invoke:PermissionTicket|PermissionTicket}}')
	self:assertStringContains( 'missing', actual)

end

return suite