UX: displays channel title in document title (#21242)

This commit is contained in:
Joffrey JAFFEUX 2023-04-26 09:09:07 +02:00 committed by GitHub
parent 26dde65bbf
commit 6ea4854c51
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 51 additions and 0 deletions

View File

@ -10,6 +10,18 @@ export default function withChatChannel(extendedClass) {
return this.chatChannelsManager.find(params.channelId);
}
titleToken() {
if (!this.currentModel) {
return;
}
if (this.currentModel.isDirectMessageChannel) {
return `${this.currentModel.title}`;
} else {
return `#${this.currentModel.title}`;
}
}
afterModel(model) {
this.controllerFor("chat-channel").set("targetMessageId", null);
this.chat.activeChannel = model;

View File

@ -0,0 +1,39 @@
# frozen_string_literal: true
RSpec.describe "Document title", type: :system, js: true do
fab!(:current_user) { Fabricate(:user) }
let(:chat_page) { PageObjects::Pages::Chat.new }
context "when visiting a public channel" do
fab!(:channel_1) { Fabricate(:category_channel) }
before do
chat_system_bootstrap
channel_1.add(current_user)
sign_in(current_user)
end
it "shows the channel name in the document title" do
chat_page.visit_channel(channel_1)
expect(page.title).to start_with("##{channel_1.title}")
end
end
context "when visiting a direct message channel" do
fab!(:channel_1) { Fabricate(:direct_message_channel, users: [current_user]) }
before do
chat_system_bootstrap
channel_1.add(current_user)
sign_in(current_user)
end
it "shows the channel name in the document title" do
chat_page.visit_channel(channel_1)
expect(page.title).to start_with("#{channel_1.title(current_user)}")
end
end
end