
* Move sendToRenderer to respective singletons * Move to using ViewManager call for getting view by webContentsId * Move show and create logic to main window, handle deep linking seperately * Move resizing logic and event handing to mainWindow * Move server switching logic to main/app * Move tab switching logic to main/app, rely on showById for most usage * Migrate remaining functions, remove windowManager objects, set up imports for self-contained singletons * Fix E2E tests * Update src/main/app/servers.ts Co-authored-by: Elias Nahum <nahumhbl@gmail.com> --------- Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
41 lines
1.3 KiB
JavaScript
41 lines
1.3 KiB
JavaScript
// Copyright (c) 2016-present Mattermost, Inc. All Rights Reserved.
|
|
// See LICENSE.txt for license information.
|
|
|
|
'use strict';
|
|
|
|
import ServerManager from 'common/servers/serverManager';
|
|
|
|
import {createTemplate} from './tray';
|
|
|
|
jest.mock('main/i18nManager', () => ({
|
|
localizeMessage: jest.fn(),
|
|
}));
|
|
|
|
jest.mock('common/servers/serverManager', () => ({
|
|
getOrderedServers: jest.fn(),
|
|
}));
|
|
jest.mock('main/app/servers', () => ({
|
|
switchServer: jest.fn(),
|
|
}));
|
|
jest.mock('main/windows/settingsWindow', () => ({}));
|
|
|
|
describe('main/menus/tray', () => {
|
|
it('should show the first 9 servers (using order)', () => {
|
|
const servers = [...Array(15).keys()].map((key) => ({
|
|
id: `server-${key}`,
|
|
name: `server-${key}`,
|
|
url: `http://server-${key}.com`,
|
|
}));
|
|
ServerManager.getOrderedServers.mockReturnValue(servers);
|
|
const menu = createTemplate();
|
|
for (let i = 0; i < 9; i++) {
|
|
const menuItem = menu.find((item) => item.label === `server-${i}`);
|
|
expect(menuItem).not.toBe(undefined);
|
|
}
|
|
for (let i = 9; i < 15; i++) {
|
|
const menuItem = menu.find((item) => item.label === `server-${i}`);
|
|
expect(menuItem).toBe(undefined);
|
|
}
|
|
});
|
|
});
|