fix: sync native objective POIs with Questie icons
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
local function read(path)
|
||||
local f = assert(io.open(path, "r"), "cannot open " .. path)
|
||||
local content = f:read("*a")
|
||||
f:close()
|
||||
return content
|
||||
end
|
||||
|
||||
local function has(content, needle)
|
||||
return content:find(needle, 1, true) ~= nil
|
||||
end
|
||||
|
||||
describe("Blizzard objective POI sync", function()
|
||||
local compat = read("Compat/Compat.lua")
|
||||
local init = read("Modules/QuestieInit.lua")
|
||||
local iconOptions = read("Modules/Options/IconsTab/QuestieOptionsIcons.lua")
|
||||
local questieMenu = read("Modules/QuestieMenu/QuestieMenu.lua")
|
||||
|
||||
it("disables native quest POIs when Questie objective icons are enabled", function()
|
||||
local helperStart = assert(compat:find("function QuestieCompat.SyncBlizzardObjectivePOIs", 1, true))
|
||||
local helperEnd = assert(compat:find("-- https://wowpedia.fandom.com/wiki/API_GetQuestLink", helperStart, true))
|
||||
local helper = compat:sub(helperStart, helperEnd)
|
||||
|
||||
assert.is_true(has(helper, "SetCVar(\"questPOI\", useQuestieObjectives and \"0\" or \"1\")"))
|
||||
assert.is_true(has(helper, "WorldMapQuestShowObjectives:SetChecked(not useQuestieObjectives)"))
|
||||
end)
|
||||
|
||||
it("syncs native POIs on startup and objective ownership changes", function()
|
||||
assert.is_true(has(init, "QuestieCompat.SyncBlizzardObjectivePOIs(Questie.db.profile.enableObjectives)"))
|
||||
assert.is_true(has(iconOptions, "QuestieCompat.SyncBlizzardObjectivePOIs(value)"))
|
||||
assert.is_true(has(iconOptions, "QuestieCompat.SyncBlizzardObjectivePOIs(true)"))
|
||||
assert.is_true(has(iconOptions, "QuestieCompat.SyncBlizzardObjectivePOIs(false)"))
|
||||
assert.is_true(has(questieMenu, "QuestieCompat.SyncBlizzardObjectivePOIs(value)"))
|
||||
end)
|
||||
end)
|
||||
Reference in New Issue
Block a user