discourse/spec/services/problem_check/admin_sidebar_deprecation_spec.rb
Martin Brennan 32c6d3be06
FIX: Admin sidebar problem check missing -1 check (#30916)
When we initially turned on admin sidebar for new sites,
existing sites had the value set to -1. We need to show
the problem check to these sites too, but currently it only
checks if `admin_sidebar_enabled_groups` is empty.
2025-01-22 10:21:30 +10:00

36 lines
1.4 KiB
Ruby

# frozen_string_literal: true
RSpec.describe ProblemCheck::AdminSidebarDeprecation do
subject(:check) { described_class.new }
describe ".call" do
before { SiteSetting.stubs(admin_sidebar_enabled_groups: configured) }
context "when sidebar is enabled for some group" do
let(:configured) { "1" }
it { expect(check).to be_chill_about_it }
end
context "when sidebar is not enabled for any group" do
let(:configured) { "" }
it do
expect(check).to have_a_problem.with_priority("low").with_message(
"The old admin layout is deprecated in favour of the new <a href='https://meta.discourse.org/t/-/289281'>sidebar layout</a> and will be removed in the next release. You can <a href='/admin/config/navigation?filter=admin%20sidebar'>configure</a> the new sidebar layout now to opt in before that.",
)
end
end
context "when sidebar is set to -1 from the initial migration" do
let(:configured) { "-1" }
it do
expect(check).to have_a_problem.with_priority("low").with_message(
"The old admin layout is deprecated in favour of the new <a href='https://meta.discourse.org/t/-/289281'>sidebar layout</a> and will be removed in the next release. You can <a href='/admin/config/navigation?filter=admin%20sidebar'>configure</a> the new sidebar layout now to opt in before that.",
)
end
end
end
end