From 9170930ada308866806c95cc8d41091f72e6d567 Mon Sep 17 00:00:00 2001 From: Suneet Srivastava Date: Tue, 18 Jan 2022 23:27:32 +0530 Subject: [PATCH] [MM-39738] E2E test for Open Settings modal using keyboard shortcuts (#1947) --- e2e/specs/menu_bar/file_menu.test.js | 42 ++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 e2e/specs/menu_bar/file_menu.test.js diff --git a/e2e/specs/menu_bar/file_menu.test.js b/e2e/specs/menu_bar/file_menu.test.js new file mode 100644 index 00000000..ffa57366 --- /dev/null +++ b/e2e/specs/menu_bar/file_menu.test.js @@ -0,0 +1,42 @@ +// Copyright (c) 2016-present Mattermost, Inc. All Rights Reserved. +// See LICENSE.txt for license information. +'use strict'; + +const fs = require('fs'); + +const robot = require('robotjs'); + +const env = require('../../modules/environment'); +const {asyncSleep} = require('../../modules/utils'); + +describe('file_menu/dropdown', function desc() { + this.timeout(30000); + + const config = env.demoConfig; + + beforeEach(async () => { + env.createTestUserDataDir(); + env.cleanTestConfig(); + fs.writeFileSync(env.configFilePath, JSON.stringify(config)); + await asyncSleep(1000); + this.app = await env.getApp(); + }); + + afterEach(async () => { + if (this.app) { + await this.app.close(); + } + }); + + it('MM-T1313 Open Settings modal using keyboard shortcuts', async () => { + const mainWindow = this.app.windows().find((window) => window.url().includes('index')); + mainWindow.should.not.be.null; + if (process.platform === 'win32' || process.platform === 'linux') { + robot.keyTap(',', ['control']); + const settingsWindow = await this.app.waitForEvent('window', { + predicate: (window) => window.url().includes('settings'), + }); + settingsWindow.should.not.be.null; + } + }); +});