From d32a00bfa248bcb584daf4db400493f764d5a0d6 Mon Sep 17 00:00:00 2001 From: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com> Date: Fri, 27 Mar 2026 09:43:04 +0900 Subject: [PATCH 1/3] use i18n --- lua/wikis/commons/HiddenDataBox.lua | 19 +++++++++++++------ lua/wikis/commons/I18n/Data.lua | 4 ++++ 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/lua/wikis/commons/HiddenDataBox.lua b/lua/wikis/commons/HiddenDataBox.lua index ecfc265fa9e..63625d5f4f3 100644 --- a/lua/wikis/commons/HiddenDataBox.lua +++ b/lua/wikis/commons/HiddenDataBox.lua @@ -11,6 +11,7 @@ local Array = Lua.import('Module:Array') local Class = Lua.import('Module:Class') local Logic = Lua.import('Module:Logic') local Game = Lua.import('Module:Game') +local I18n = Lua.import('Module:I18n') local Info = Lua.import('Module:Info', {loadData = true}) local MatchTicker = Lua.import('Module:MatchTicker') local MatchTickerEntityDisplay = Lua.import('Module:MatchTicker/DisplayComponents/Entity') @@ -28,9 +29,6 @@ local WarningBoxGroup = Lua.import('Module:Widget/WarningBox/Group') local WidgetUtil = Lua.import('Module:Widget/Util') local HiddenDataBox = {} -local INVALID_TIER_WARNING = '${tierString} is not a known Liquipedia ' - .. '${tierMode}[[Category:Pages with invalid ${tierMode}]]' -local INVALID_PARENT = '${parent} is not a Liquipedia Tournament[[Category:Pages with invalid parent]]' local DEFAULT_TIER_TYPE = 'general' local Language = mw.getContentLanguage() @@ -59,7 +57,8 @@ function HiddenDataBox.run(args) })[1] or {} if Table.isEmpty(queryResult) and Namespace.isMain() then - table.insert(warnings, String.interpolate(INVALID_PARENT, {parent = parent})) + mw.ext.TeamLiquidIntegration.add_category('Pages with invalid parent') + table.insert(warnings, I18n.translate('hiddendatabox-invalid-parent-warning', {parent = parent})) else local date = HiddenDataBox.cleanDate(args.date, args.sdate) or queryResult.startdate or Variables.varDefault('tournament_startdate') or HiddenDataBox.cleanDate(args.edate) or @@ -214,11 +213,19 @@ function HiddenDataBox.validateTier(tier, tierType) local tierValue, tierTypeValue = Tier.toValue(tier, tierType) if tier and not tierValue then - table.insert(warnings, String.interpolate(INVALID_TIER_WARNING, {tierString = tier, tierMode = 'Tier'})) + mw.ext.TeamLiquidIntegration.add_category('Pages with invalid Tier') + table.insert( + warnings, + I18n.translate('hiddendatabox-invalid-tier-warning', {tierString = tier, tierMode = 'Tier'}) + ) end if tierType and tierType:lower() ~= DEFAULT_TIER_TYPE and not tierTypeValue then - table.insert(warnings, String.interpolate(INVALID_TIER_WARNING, {tierString = tierType, tierMode = 'Tiertype'})) + mw.ext.TeamLiquidIntegration.add_category('Pages with invalid Tiertype') + table.insert( + warnings, + I18n.translate('hiddendatabox-invalid-tier-warning', {tierString = tierType, tierMode = 'Tiertype'}) + ) end return tierValue, tierTypeValue, warnings diff --git a/lua/wikis/commons/I18n/Data.lua b/lua/wikis/commons/I18n/Data.lua index 1a85b9027a2..1f2b0e07b83 100644 --- a/lua/wikis/commons/I18n/Data.lua +++ b/lua/wikis/commons/I18n/Data.lua @@ -70,6 +70,10 @@ return { ['date-range-month-day--month-unknown_day'] = '${startMonth} ${startDate} – ${endMonth} TBA', ['date-range-month-day--month-day'] = '${startMonth} ${startDate} – ${endMonth} ${endDate}', + -- HiddenDataBox warnings + ['hiddendatabox-invalid-parent-warning'] = '${parent} is not a Liquipedia Tournament', + ['hiddendatabox-invalid-tier-warning'] = '${tierString} is not a known Liquipedia ${tierMode}', + -- Bracket Headers ['brkts-header-r1'] = 'Grand Final,Final,GF', ['brkts-header-r2'] = 'Semifinals,Semis,SF', From ed622c33d4cb59adb55785e4c31389fed121943d Mon Sep 17 00:00:00 2001 From: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com> Date: Fri, 27 Mar 2026 09:51:55 +0900 Subject: [PATCH 2/3] adjust tests --- lua/spec/hidden_data_box_spec.lua | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/lua/spec/hidden_data_box_spec.lua b/lua/spec/hidden_data_box_spec.lua index 191b7dad846..4877ee1c0f7 100644 --- a/lua/spec/hidden_data_box_spec.lua +++ b/lua/spec/hidden_data_box_spec.lua @@ -5,6 +5,12 @@ describe('hidden data box', function() local Variables = require('Module:Variables') local WarningBox = require('Module:Widget/WarningBox') + local AddCategorySpy + + before_each(function() + AddCategorySpy = spy.on(mw.ext.TeamLiquidIntegration, 'add_category') + end) + describe('tier parseing', function() it('empty tier return nil', function() assert.is_nil(Hdb.validateTier()) @@ -19,12 +25,14 @@ describe('hidden data box', function() it('unknown tier', function() local _, _, warnings = Hdb.validateTier('Qualifier') - assert.are_same({'Qualifier is not a known Liquipedia Tier[[Category:Pages with invalid Tier]]'}, warnings) + assert.are_same({'Qualifier is not a known Liquipedia Tier'}, warnings) + assert.stub(AddCategorySpy).was.called_with('Pages with invalid Tier') end) it('unknown tiertype', function() local _, _, warnings = Hdb.validateTier(nil, 'Abc') - assert.are_same({'Abc is not a known Liquipedia Tiertype[[Category:Pages with invalid Tiertype]]'}, warnings) + assert.are_same({'Abc is not a known Liquipedia Tiertype'}, warnings) + assert.stub(AddCategorySpy).was.called_with('Pages with invalid Tiertype') end) end) @@ -40,9 +48,10 @@ describe('hidden data box', function() it('has correct warning', function() assert.are_same( - tostring(WarningBox{text = 'DummyPage is not a Liquipedia Tournament[[Category:Pages with invalid parent]]'}), + tostring(WarningBox{text = 'DummyPage is not a Liquipedia Tournament'}), tostring(Hdb.run({parent = 'DummyPage'})) ) + assert.stub(AddCategorySpy).was.called_with('Pages with invalid parent') end) end) From bdab9eaf4e3fd881dca6bca42aca6188d406648a Mon Sep 17 00:00:00 2001 From: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com> Date: Fri, 27 Mar 2026 09:55:21 +0900 Subject: [PATCH 3/3] add after_each --- lua/spec/hidden_data_box_spec.lua | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lua/spec/hidden_data_box_spec.lua b/lua/spec/hidden_data_box_spec.lua index 4877ee1c0f7..aaace5c8aca 100644 --- a/lua/spec/hidden_data_box_spec.lua +++ b/lua/spec/hidden_data_box_spec.lua @@ -11,6 +11,10 @@ describe('hidden data box', function() AddCategorySpy = spy.on(mw.ext.TeamLiquidIntegration, 'add_category') end) + after_each(function() + AddCategorySpy:revert() + end) + describe('tier parseing', function() it('empty tier return nil', function() assert.is_nil(Hdb.validateTier())