Initial version of the new search interface (#27301)
* Initial version of the new search interface * Fixing CI * style tweaks * tweaks to date picker in search * change search input to button * Addressing a lot of small problems * Addressing current search visualization * Fixing problem on filter autocompletion * Adding some more fixes * Tiny style ajustment * Removing unnecessary slice call * Adding search extensibility * Improving the extensibility * Fixing and refactoring a bit * On clear click, clear the current search * splitting components for simplicity * tweaks to file ext search * Addressing PR review comments and adding color to the extensions search icons * Improving a bit the extension search * Fixing CI * Fixing some bugs * Keep the focus on search input whenever we change the search type * Adding SearchHint tests * Adding search_box_type_selector tests * Adding tests for the SearchBox component * Adding tests for search box suggestions * Adding SearchBoxInput tests * Splitting extension suggestion component and provider * ExtensionSuggestion tests * Removing unneeded property * Adding SearchBoxhints tests * Adding tests for NewSearch component * Adding tests for the extension suggestion provider * Fixing linter errors * Fixing tests * Fixing linter errors * Fixing linter errors * Adding license check for plugins * Addressing PR review comments * Addressing PR review comments * Addressing PR review comments * Fixing tests * Fixing some cypress tests * More work around cypress tests for search * Some accessibility changes * more work on cypress tests * fixing more cypress tests * Fixing linter errors * Fixing tests * Fixing ctrl+f6 switching * Fixing scrolling on small windows wheneve you are searching * Improve editing in the middle of the search text * Addressing some PR review comments * Addressing some PR review comments * Addressing some PR review comments * Addressing some PR review comments * Fixing tests and linter errors * Fixingls tests and linter errors * Fix type checks * Clearer logic to render plugin or builtin suggestion * Addressing PR review changes * Addressing PR review changes * Using selectors for plugin components * Changing uppercase to lowercase on lists of components * Updating tests * Updating snapshots * minor css tweaks * minor css tweak * Adding the search type and the clear button * Fixing problem with the filetype selector * fixing linter errors * Some fixes * More linter fixes * Reverting prettier auto-formating * Fixing CI * Fixing CI * Fixing chrome problem * Fixing CI * Addressing PR review comments --------- Co-authored-by: Matthew Birtch <mattbirtch@gmail.com> Co-authored-by: Christopher Speller <crspeller@gmail.com> Co-authored-by: Mattermost Build <build@mattermost.com>
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
b7ccd745c8
Коммит
5f8bdba459
@@ -1,58 +0,0 @@
|
||||
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
|
||||
// See LICENSE.txt for license information.
|
||||
|
||||
// ***************************************************************
|
||||
// - [#] indicates a test step (e.g. # Go to a page)
|
||||
// - [*] indicates an assertion (e.g. * Check the title)
|
||||
// - Use element ID when selecting an element. Create one if none.
|
||||
// ***************************************************************
|
||||
|
||||
// Stage: @prod
|
||||
// Group: @channels @autocomplete @search
|
||||
|
||||
describe('Autocomplete in the search box - scrolling', () => {
|
||||
const usersCount = 15;
|
||||
const timestamp = Date.now();
|
||||
|
||||
before(() => {
|
||||
// # Create new team for tests
|
||||
cy.apiCreateTeam(`search-${timestamp}`, `search-${timestamp}`).then(({team}) => {
|
||||
// # Create pool of users for tests
|
||||
for (let i = 0; i < usersCount; i++) {
|
||||
cy.apiCreateUser().then(({user}) => {
|
||||
cy.apiAddUserToTeam(team.id, user.id);
|
||||
});
|
||||
}
|
||||
cy.visit(`/${team.name}/channels/off-topic`);
|
||||
|
||||
// # Post a new message to ensure page fully rendered before acting into the searchBox
|
||||
cy.postMessage('hello');
|
||||
});
|
||||
});
|
||||
|
||||
it('MM-T4084 correctly scrolls when the user navigates through options with the keyboard', () => {
|
||||
// # Type into the searchBox to show list of users
|
||||
cy.get('#searchBox').type('from:');
|
||||
|
||||
cy.get('#search-autocomplete__popover .suggestion-list__item').first().as('firstItem');
|
||||
cy.get('#search-autocomplete__popover .suggestion-list__item').last().as('lastItem');
|
||||
|
||||
// * Check that list is scrolled to top
|
||||
cy.get('@firstItem').should('be.visible');
|
||||
cy.get('@lastItem').should('not.be.visible');
|
||||
|
||||
// # Move to bottom of the list using keyboard
|
||||
cy.get('body').type('{downarrow}'.repeat(usersCount));
|
||||
|
||||
// * Check that list is scrolled to bottom
|
||||
cy.get('@firstItem').should('not.be.visible');
|
||||
cy.get('@lastItem').should('be.visible');
|
||||
|
||||
// # Move to top of the list using keyboard
|
||||
cy.get('body').type('{uparrow}'.repeat(usersCount));
|
||||
|
||||
// * Check that list is scrolled to top
|
||||
cy.get('@firstItem').should('be.visible');
|
||||
cy.get('@lastItem').should('not.be.visible');
|
||||
});
|
||||
});
|
||||
Ссылка в новой задаче
Block a user