mirror of
https://github.com/discourse/discourse.git
synced 2025-02-25 18:55:32 -06:00
FIX: Update sidebar to be navigation menu (#22101)
Communities can use sidebar or header dropdown, therefore navigation menu is a better name settings in 2 places: - Old user sidebar preferences; - Site setting about default tags and categories.
This commit is contained in:
committed by
GitHub
parent
be7d82d2b0
commit
2effcaa0f9
@@ -22,7 +22,7 @@ RSpec.describe "Editing sidebar categories navigation", type: :system do
|
||||
|
||||
before do
|
||||
SiteSetting.new_edit_sidebar_categories_tags_interface_groups = group.name
|
||||
SiteSetting.default_sidebar_categories = "#{category.id}|#{category2.id}"
|
||||
SiteSetting.default_navigation_menu_categories = "#{category.id}|#{category2.id}"
|
||||
sign_in(user)
|
||||
end
|
||||
|
||||
|
||||
@@ -2,26 +2,26 @@
|
||||
|
||||
module PageObjects
|
||||
module Pages
|
||||
class UserPreferencesSidebar < PageObjects::Pages::Base
|
||||
class UserPreferencesNavigationMenu < PageObjects::Pages::Base
|
||||
def visit(user)
|
||||
page.visit("/u/#{user.username}/preferences/sidebar")
|
||||
page.visit("/u/#{user.username}/preferences/navigation-menu")
|
||||
self
|
||||
end
|
||||
|
||||
def has_sidebar_categories_preference?(*categories)
|
||||
def has_navigation_menu_categories_preference?(*categories)
|
||||
category_selector_header = page.find(".category-selector .select-kit-header-wrapper")
|
||||
category_selector_header.has_content?(categories.map(&:name).join(", "))
|
||||
end
|
||||
|
||||
def has_sidebar_tags_preference?(*tags)
|
||||
def has_navigation_menu_tags_preference?(*tags)
|
||||
tag_selector_header = page.find(".tag-chooser .select-kit-header-wrapper")
|
||||
tag_selector_header.has_content?(tags.map(&:name).join(", "))
|
||||
end
|
||||
|
||||
def has_sidebar_list_destination_preference?(type)
|
||||
def has_navigation_menu_list_destination_preference?(type)
|
||||
list_selector_header =
|
||||
page.find(
|
||||
".preferences-sidebar-navigation__list-destination-selector .select-kit-header-wrapper",
|
||||
".preferences-navigation-menu-navigation__list-destination-selector .select-kit-header-wrapper",
|
||||
)
|
||||
list_selector_header.has_content?(
|
||||
I18n.t("js.user.experimental_sidebar.list_destination_#{type}"),
|
||||
@@ -1,7 +1,9 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
describe "Viewing sidebar preferences", type: :system do
|
||||
let(:user_preferences_sidebar_page) { PageObjects::Pages::UserPreferencesSidebar.new }
|
||||
let(:user_preferences_navigation_menu_page) do
|
||||
PageObjects::Pages::UserPreferencesNavigationMenu.new
|
||||
end
|
||||
|
||||
before { SiteSetting.navigation_menu = "sidebar" }
|
||||
|
||||
@@ -27,19 +29,22 @@ describe "Viewing sidebar preferences", type: :system do
|
||||
|
||||
before { sign_in(admin) }
|
||||
|
||||
it "should be able to view sidebar preferences of another user" do
|
||||
it "should be able to view navigation menu preferences of another user" do
|
||||
user.user_option.update!(sidebar_list_destination: "unread_new")
|
||||
|
||||
user_preferences_sidebar_page.visit(user)
|
||||
user_preferences_navigation_menu_page.visit(user)
|
||||
|
||||
expect(user_preferences_sidebar_page).to have_sidebar_categories_preference(
|
||||
expect(user_preferences_navigation_menu_page).to have_navigation_menu_categories_preference(
|
||||
category,
|
||||
category2,
|
||||
)
|
||||
expect(user_preferences_sidebar_page).to have_sidebar_tags_preference(tag, tag2)
|
||||
expect(user_preferences_sidebar_page).to have_sidebar_list_destination_preference(
|
||||
"unread_new",
|
||||
expect(user_preferences_navigation_menu_page).to have_navigation_menu_tags_preference(
|
||||
tag,
|
||||
tag2,
|
||||
)
|
||||
expect(
|
||||
user_preferences_navigation_menu_page,
|
||||
).to have_navigation_menu_list_destination_preference("unread_new")
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user