Skip to content

Commit 75b58b2

Browse files
committed
DEV: Add tests for about page extra group ordering
1 parent ec6239b commit 75b58b2

File tree

1 file changed

+43
-7
lines changed

1 file changed

+43
-7
lines changed

spec/system/about_page_spec.rb

Lines changed: 43 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -375,25 +375,61 @@
375375
end
376376

377377
describe "extra groups" do
378-
let!(:extra_group) { Fabricate(:group, name: "illuminati") }
378+
let!(:extra_groups) do
379+
[
380+
Fabricate(:group, name: "bananas", created_at: 1.day.ago),
381+
Fabricate(:group, name: "apples", created_at: 3.days.ago),
382+
Fabricate(:group, name: "oranges", created_at: 2.days.ago),
383+
]
384+
end
385+
let(:order) { "alphabetically" }
379386

380387
before do
381388
SiteSetting.about_banner_image = nil
382389
SiteSetting.show_additional_about_groups = true
383390
SiteSetting.about_page_extra_groups = extra_groups_setting
391+
SiteSetting.about_page_extra_groups_order = order
384392

385-
extra_group.users << Fabricate(:user)
393+
extra_groups.each { |extra_group| extra_group.users << Fabricate(:user) }
386394
end
387395

388396
context "when extra groups are configured" do
389-
let(:extra_groups_setting) { extra_group.id.to_s }
397+
let(:extra_groups_setting) { extra_groups.map(&:id).join("|") }
390398

391-
it "shows the extra groups" do
392-
sign_in(admin)
399+
context "when groups are set to order alphabetically" do
400+
let(:order) { "alphabetically" }
393401

394-
about_page.visit
402+
it "shows the extra groups in alphabetical order" do
403+
sign_in(admin)
404+
405+
about_page.visit
406+
407+
expect(about_page).to have_css(".about__apples + .about__bananas + .about__oranges")
408+
end
409+
end
410+
411+
context "when groups are set to order by creation" do
412+
let(:order) { "order of creation" }
413+
414+
it "shows the extra groups in order of creation" do
415+
sign_in(admin)
395416

396-
expect(about_page).to have_group_with_name("Illuminati")
417+
about_page.visit
418+
419+
expect(about_page).to have_css(".about__bananas + .about__apples + .about__oranges")
420+
end
421+
end
422+
423+
context "when groups are set to order by setting selection" do
424+
let(:order) { "order of theme setting" }
425+
426+
it "shows the extra groups in order of selection" do
427+
sign_in(admin)
428+
429+
about_page.visit
430+
431+
expect(about_page).to have_css(".about__bananas + .about__apples + .about__oranges")
432+
end
397433
end
398434
end
399435

0 commit comments

Comments
 (0)