MM-59854 Fully allow at mentions in message attachment field values and add E2E tests (#28018)

* Add descriptions to test cases for getNeededAtMentionedUsernames

* MM-59854 Load users who are at-mentioned in message attachment fields

* MM-59854 Add server support for at-mentioning users in message attachment fields

* Migrate support/external_commands from JS to TS

* MM-59584 Ensure that at-mentions never show in other message attachment fields

* MM-59584 Add E2E tests for how we load users based on at mentions

* Use new E2E test helpers in other places

* Update snapshots
Этот коммит содержится в:
Harrison Healey
2024-09-24 09:41:03 -04:00
коммит произвёл GitHub
родитель 3e84d20dbe
Коммит 46cad5c552
22 изменённых файлов: 503 добавлений и 198 удалений

Просмотреть файл

@@ -10,11 +10,7 @@
// Stage: @prod
// Group: @channels @channel
import {getAdminAccount} from '../../../support/env';
describe('View Members modal', () => {
const sysadmin = getAdminAccount();
it('MM-20164 - Going from a Member to an Admin should update the modal', () => {
cy.apiInitSetup().then(({team, user}) => {
cy.apiCreateUser().then(({user: user1}) => {
@@ -24,27 +20,19 @@ describe('View Members modal', () => {
// # Promote user as a system admin
// # Visit default channel and verify members modal
cy.apiLogin(user);
promoteToSysAdmin(user, sysadmin);
cy.externalUpdateUserRoles(user.id, 'system_user system_admin');
cy.visit(`/${team.name}/channels/town-square`);
verifyMemberDropdownAction(true);
// # Make user a regular member
// # Reload and verify members modal
demoteToMember(user, sysadmin);
cy.externalUpdateUserRoles(user.id, 'system_user');
cy.reload();
verifyMemberDropdownAction(false);
});
});
});
const demoteToMember = (user, sysadmin) => {
cy.externalRequest({user: sysadmin, method: 'put', path: `users/${user.id}/roles`, data: {roles: 'system_user'}});
};
const promoteToSysAdmin = (user, sysadmin) => {
cy.externalRequest({user: sysadmin, method: 'put', path: `users/${user.id}/roles`, data: {roles: 'system_user system_admin'}});
};
function verifyMemberDropdownAction(hasActionItem) {
// # Click member count to open member rhs
cy.get('#member_rhs').click();

Просмотреть файл

@@ -11,10 +11,6 @@
import {getAdminAccount} from '../../../support/env';
const demoteToMember = (user, admin) => {
cy.externalRequest({user: admin, method: 'put', path: `users/${user.id}/roles`, data: {roles: 'system_user'}});
};
const demoteToChannelMember = (user, channelId, admin) => {
cy.externalRequest({
user: admin,
@@ -70,7 +66,7 @@ describe('Change Roles', () => {
cy.visit(`/${team.name}/channels/${channel.name}`);
// # Make user a regular member for channel and system
demoteToMember(testUser, admin);
cy.externalUpdateUserRoles(user.id, 'system_user');
demoteToChannelMember(testUser, testChannelId, admin);
// # Reload page to ensure no cache or saved information