Module:Wb/sandbox/testcases

From OpenStreetMap Wiki
Jump to navigation Jump to search
-- Unit tests for [[Module:Wb]].

local wb = require('Module:Wb')
local ScribuntoUnit = require('Module:ScribuntoUnit')
local suite = ScribuntoUnit.new()

local Q104 = mw.wikibase.getEntity("Q104") -- bridge:movable
local Q105 = mw.wikibase.getEntity("Q105") -- bridge:name
local Q108 = mw.wikibase.getEntity("Q108") -- building

function suite:test_get_item()
    self:assertDeepEquals(nil, wb.get_item()) -- testcases has no data item
    
	mw.title.getCurrentTitle = function () return mw.title.new("DE:Key:page_does_not_exist") end
    self:assertDeepEquals(nil, wb.get_item())
	
	mw.title.getCurrentTitle = function () return mw.title.new("DE:Key:bridge:movable") end
    self:assertDeepEquals(Q104, wb.get_item())
    
	mw.title.getCurrentTitle = function () return mw.title.new("El:Key:building") end
    self:assertDeepEquals(Q108, wb.get_item())

	mw.title.getCurrentTitle = function () return mw.title.new("Key:bridge:movable") end
    self:assertDeepEquals(nil, wb.get_item()) -- testcases has no data item
    
	mw.wikibase.getEntity = function () return Q105 end
    self:assertDeepEquals(Q105, wb.get_item())
end

return suite