Module:LearnsetsTestingData: Difference between revisions
Jump to navigation
Jump to search
Created page with "local p = {} local TARGET_URL = "https://wiki.pokemonrevolution.net/data/Learnsets.json" local function tryExternalDataJson() local ok, data, errors = pcall(function() return mw.ext.externalData.getExternalData{ url = TARGET_URL, format = "json" } end) if not ok then return { method = "ExternalData (format=json)", success = false, message = "Lua error: " .. tostring(data)..." |
No edit summary |
||
| Line 1: | Line 1: | ||
local p = {} | local p = {} | ||
local function testFileAccess() | |||
local function | |||
local ok, data, errors = pcall(function() | local ok, data, errors = pcall(function() | ||
return mw.ext.externalData. | return mw.ext.externalData.getFileData{ | ||
source = "data", | |||
format = "json" | ["file name"] = "Learnsets.json", | ||
format = "json", | |||
data = {all = "__json"} | |||
} | } | ||
end) | end) | ||
| Line 13: | Line 13: | ||
if not ok then | if not ok then | ||
return { | return { | ||
success = false, | success = false, | ||
message = "Lua error: " .. tostring(data) | message = "Lua error: " .. tostring(data) | ||
| Line 19: | Line 18: | ||
end | end | ||
if errors then | if errors and #errors > 0 then | ||
return { | return { | ||
success = false, | success = false, | ||
message = "ExternalData | message = "ExternalData error: " .. table.concat(errors, " | ") | ||
} | } | ||
end | end | ||
| Line 29: | Line 27: | ||
if data and data.__json then | if data and data.__json then | ||
return { | return { | ||
success = true, | success = true, | ||
message = " | message = "JSON successfully loaded via filesystem (source=data)" | ||
} | } | ||
end | end | ||
return { | return { | ||
success = false, | success = false, | ||
message = "No | message = "No JSON returned. File likely not present in the configured ExternalData source." | ||
} | } | ||
end | end | ||
function p.run() | |||
local | local result = testFileAccess() | ||
local out = {} | local out = {} | ||
table.insert(out, "== | table.insert(out, "== ExternalData Filesystem Test ==") | ||
table.insert(out, "") | table.insert(out, "") | ||
table.insert(out, " | table.insert(out, "* Source: data") | ||
table.insert(out, "* File: Learnsets.json") | |||
table.insert(out, "") | table.insert(out, "") | ||
table.insert(out, "* Success: " .. tostring(result.success)) | |||
table.insert(out, "* Message: " .. result.message) | |||
return table.concat(out, "\n") | return table.concat(out, "\n") | ||
end | end | ||
return p | return p | ||
Revision as of 13:51, 6 March 2026
Documentation for this module may be created at Module:LearnsetsTestingData/doc
local p = {}
local function testFileAccess()
local ok, data, errors = pcall(function()
return mw.ext.externalData.getFileData{
source = "data",
["file name"] = "Learnsets.json",
format = "json",
data = {all = "__json"}
}
end)
if not ok then
return {
success = false,
message = "Lua error: " .. tostring(data)
}
end
if errors and #errors > 0 then
return {
success = false,
message = "ExternalData error: " .. table.concat(errors, " | ")
}
end
if data and data.__json then
return {
success = true,
message = "JSON successfully loaded via filesystem (source=data)"
}
end
return {
success = false,
message = "No JSON returned. File likely not present in the configured ExternalData source."
}
end
function p.run()
local result = testFileAccess()
local out = {}
table.insert(out, "== ExternalData Filesystem Test ==")
table.insert(out, "")
table.insert(out, "* Source: data")
table.insert(out, "* File: Learnsets.json")
table.insert(out, "")
table.insert(out, "* Success: " .. tostring(result.success))
table.insert(out, "* Message: " .. result.message)
return table.concat(out, "\n")
end
return p