Compare with Previous | Blame | View Log
--[[ Addon: util Author: TProg Taonnor Created by @Taonnor ]]-- -- Version Control local VERSION = 2 --[[ Class definition (Static class) ]]-- -- A table in hole lua workspace must be unique -- The ui helper is global util table, used in several of my addons -- The table is created as "static" class without constructor and static helper methods if (TaosZOSMockingHelper == nil or TaosZOSMockingHelper.Version == nil or TaosZOSMockingHelper.Version < VERSION) then TaosZOSMockingHelper = {} TaosZOSMockingHelper.__index = TaosZOSMockingHelper TaosZOSMockingHelper.Version = VERSION local _oldGetGroupUnitTagByIndex = nil local _oldGetUnitName = nil local _oldIsUnitDead = nil local _oldIsUnitGrouped = nil local _oldGetGroupSize = nil local _oldIsUnitInCombat = nil local _oldGetUnitPower = nil --[[ =============== PRIVATE METHODS =============== ]]-- --[[ Mocks GetGroupUnitTagByIndex, returns always "player" ]]-- local function GetGroupUnitTagByIndexMock(i) return "waypoint" .. i end --[[ Mocks GetUnitName, returns always playerTag if not "player" ]]-- local function GetUnitNameMock(playerTag) if (playerTag == "player") then return "waypoint1" elseif (playerTag == "") then return _oldGetUnitName("player") else return playerTag end end --[[ Mocks IsUnitDead, returns randomly unit death ]]-- local function IsUnitDeadMock(playerTag) return _oldIsUnitDead("player") end --[[ Mocks IsUnitGrouped, returns always player in group ]]-- local function IsUnitGroupedMock(playerTag) return true end --[[ Mocks GetGroupSize, returns always player in group with 6 players ]]-- local function GetGroupSizeMock() return 24 end --[[ Mocks IsUnitInCombatMock, returns always player status ]]-- local function IsUnitInCombatMock(playerTag) return _oldIsUnitInCombat("player") end --[[ Mocks GetUnitPowerMock, returns always player status ]]-- local function GetUnitPowerMock(playerTag, powerType) return _oldGetUnitPower("player", powerType) end --[[ ============== PUBLIC METHODS ============== ]]-- --[[ Mocks needed ZOS methods with mock methods ]]-- function MockZOSMethods() -- Mock GetGroupUnitTagByIndex _oldGetGroupUnitTagByIndex = GetGroupUnitTagByIndex GetGroupUnitTagByIndex = GetGroupUnitTagByIndexMock -- Mock GetUnitName _oldGetUnitName = GetUnitName GetUnitName = GetUnitNameMock -- Mock IsUnitDead _oldIsUnitDead = IsUnitDead IsUnitDead = IsUnitDeadMock -- Mock IsUnitGrouped _oldIsUnitGrouped = IsUnitGrouped IsUnitGrouped = IsUnitGroupedMock -- Mock GetGroupSize _oldGetGroupSize = GetGroupSize GetGroupSize = GetGroupSizeMock -- Mock IsUnitInCombat _oldIsUnitInCombat = IsUnitInCombat IsUnitInCombat = IsUnitInCombatMock -- Mock GetUnitPower _oldGetUnitPower = GetUnitPower GetUnitPower = GetUnitPowerMock end end