Add common mocks.

master
whats_his_face 2022-05-04 20:44:49 -05:00
parent 5c79dbfd1c
commit b9e1247d6b
4 changed files with 81 additions and 1 deletions

30
test/mocks/inventory.lua Normal file
View File

@ -0,0 +1,30 @@
-- inventory mock
InventoryMock = {}
InventoryMock.__index = InventoryMock
function InventoryMock:new()
inventory = {}
inventory.lists = {}
inventory.sizes = {}
inventory.lists.main = {}
inventory.sizes.main = 32
setmetatable(inventory, self)
return inventory
end
function InventoryMock:get_list(name)
return self.lists[name]
end
function InventoryMock:set_list(name, list)
self.lists[name] = list
end
function InventoryMock:get_size(name)
return self.sizes[name]
end
function InventoryMock:set_size(name, new_size)
self.sizes[name] = new_size
end

25
test/mocks/player.lua Normal file
View File

@ -0,0 +1,25 @@
-- player mock
PlayerMock = {}
PlayerMock.__index = PlayerMock
function PlayerMock:new(pl_name)
player = {}
player.name = pl_name
player.meta = SettingsMock:new()
player.inventory = InventoryMock:new()
setmetatable(player, self)
return player
end
function PlayerMock:get_player_name()
return self.name
end
function PlayerMock:get_meta()
return self.meta
end
function PlayerMock:get_inventory()
return self.inventory
end

23
test/mocks/settings.lua Normal file
View File

@ -0,0 +1,23 @@
-- settings mock
SettingsMock = {}
SettingsMock.__index = SettingsMock
function SettingsMock:new()
settings = {}
setmetatable(settings, self)
return settings
end
function SettingsMock:get_bool(key)
-- TODO: add basic type checks
return self[key]
end
function SettingsMock:get_string(key)
return self[key]
end
function SettingsMock:set_string(key, value)
self[key] = value
end

View File

@ -1,6 +1,8 @@
mtmock = {}
mtmock.settings = {}
dofile('mtmock.conf')
dofile('mocks/settings.lua')
mtmock.settings = SettingsMock:new()
-- bind minetest and core aliases and
-- work with minetest alias from here on