FIX: correctly hides admin settings in channel settings (#19384)

This would need even more test which are being created in a separate branch.
This commit is contained in:
Joffrey JAFFEUX 2022-12-08 22:48:29 +01:00 committed by GitHub
parent 44191dd850
commit c2fd9d5116
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 33 additions and 18 deletions

View File

@ -61,7 +61,7 @@ export default class ChatChannelSettingsView extends Component {
@computed("autoJoinAvailable", "togglingChannelWideMentionsAvailable")
get adminSectionAvailable() {
return (
this.chatGuardian.canEditChatChannel &&
this.chatGuardian.canEditChatChannel() &&
(this.autoJoinAvailable || this.togglingChannelWideMentionsAvailable)
);
}

View File

@ -119,7 +119,7 @@ module(
},
});
componentTest("allow channel wide mentions", {
componentTest("hide channel wide mentions", {
template: hbs`{{chat-channel-settings-view channel=channel}}`,
beforeEach() {
@ -127,23 +127,21 @@ module(
},
async test(assert) {
pretender.put(`/chat/api/chat_channels/${this.channel.id}.json`, () => {
return [
200,
{ "Content-Type": "application/json" },
{
allow_channel_wide_mentions: false,
},
];
});
assert
.dom(".channel-settings-view__channel-wide-mentions-selector")
.doesNotExist();
},
});
const sk = selectKit(
".channel-settings-view__channel-wide-mentions-selector"
);
await sk.expand();
await sk.selectRowByName("No");
componentTest("hide channel auto join", {
template: hbs`{{chat-channel-settings-view channel=channel}}`,
assert.equal(sk.header().value(), "false");
beforeEach() {
this.set("channel", fabricators.chatChannel());
},
async test(assert) {
assert.dom(".channel-settings-view__auto-join-selector").doesNotExist();
},
});
}
@ -253,7 +251,7 @@ module(
},
});
componentTest("allow channel wide mentions", {
componentTest("hide channel wide mentions", {
template: hbs`{{chat-channel-settings-view channel=channel}}`,
beforeEach() {
@ -271,5 +269,22 @@ module(
.doesNotExist();
},
});
componentTest("hide channel auto join", {
template: hbs`{{chat-channel-settings-view channel=channel}}`,
beforeEach() {
this.set(
"channel",
fabricators.chatChannel({
chatable_type: CHATABLE_TYPES.directMessageChannel,
})
);
},
async test(assert) {
assert.dom(".channel-settings-view__auto-join-selector").doesNotExist();
},
});
}
);