mirror of
https://github.com/discourse/discourse.git
synced 2025-05-25 09:13:39 +08:00
FEATURE: Add new plugin API to allow plugins to extend Site#categories
(#13773)
This commit is contained in:

committed by
GitHub

parent
8de8989576
commit
a1047f5ef4
@ -647,4 +647,25 @@ describe Plugin::Instance do
|
||||
}.to raise_error(RuntimeError)
|
||||
end
|
||||
end
|
||||
|
||||
describe '#register_site_categories_callback' do
|
||||
fab!(:category) { Fabricate(:category) }
|
||||
|
||||
it 'adds a callback to the Site#categories' do
|
||||
instance = Plugin::Instance.new
|
||||
|
||||
instance.register_site_categories_callback do |categories|
|
||||
categories.each do |category|
|
||||
category[:test_field] = "test"
|
||||
end
|
||||
end
|
||||
|
||||
site = Site.new(Guardian.new)
|
||||
|
||||
expect(site.categories.first[:test_field]).to eq("test")
|
||||
ensure
|
||||
Site.clear_cache
|
||||
Site.categories_callbacks.clear
|
||||
end
|
||||
end
|
||||
end
|
||||
|
Reference in New Issue
Block a user