* instantiate page in pw * update spec * fix storage key and require user when logging in via API --------- Co-authored-by: Mattermost Build <build@mattermost.com>
57 строки
1.8 KiB
TypeScript
57 строки
1.8 KiB
TypeScript
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
|
|
// See LICENSE.txt for license information.
|
|
|
|
import {expect, test} from '@e2e-support/test_fixture';
|
|
import {createRandomChannel} from '@e2e-support/server';
|
|
|
|
test('MM-T5424 Find channel search returns only 50 results when there are more than 50 channels with similar names', async ({
|
|
pw,
|
|
}) => {
|
|
const {adminClient, user, team} = await pw.initSetup();
|
|
|
|
const commonName = 'test_channel';
|
|
|
|
// # Create more than 50 channels with similar names
|
|
const channelsRes = [];
|
|
for (let i = 0; i < 100; i++) {
|
|
let suffix = i.toString();
|
|
if (i < 10) {
|
|
suffix = `0${i}`;
|
|
}
|
|
const channel = createRandomChannel({
|
|
teamId: team.id,
|
|
name: `${commonName}_${suffix}`,
|
|
displayName: `Test Channel ${suffix}`,
|
|
});
|
|
channelsRes.push(adminClient.createChannel(channel));
|
|
}
|
|
await Promise.all(channelsRes);
|
|
|
|
// # Log in a user in new browser context
|
|
const {channelsPage} = await pw.testBrowser.login(user);
|
|
|
|
// # Visit a default channel page
|
|
await channelsPage.goto();
|
|
await channelsPage.toBeVisible();
|
|
|
|
// # Click on "Find channel" and type "test_channel"
|
|
await channelsPage.sidebarLeft.findChannelButton.click();
|
|
|
|
await channelsPage.findChannelsModal.toBeVisible();
|
|
await channelsPage.findChannelsModal.input.fill(commonName);
|
|
|
|
const limitCount = 50;
|
|
|
|
// # Only 50 results for similar name should be displayed.
|
|
await expect(channelsPage.findChannelsModal.searchList).toHaveCount(limitCount);
|
|
|
|
for (let i = 0; i < limitCount; i++) {
|
|
let suffix = i.toString();
|
|
if (i < 10) {
|
|
suffix = `0${i}`;
|
|
}
|
|
|
|
await expect(channelsPage.findChannelsModal.container.getByTestId(`${commonName}_${suffix}`)).toBeVisible();
|
|
}
|
|
});
|