3 /* global browser, Promise */
5 const cmds = require('wdio-screen-commands')
7 /* eslint-disable jsdoc/valid-types */
8 /** @type WebdriverIO.HookFunctionExtension */
11 // Add browser commands:
12 browser.addCommand('saveScreenshotByName', cmds.saveScreenshotByName)
13 browser.addCommand('saveAndDiffScreenshot', cmds.saveAndDiffScreenshot)
14 // Add element commands:
15 browser.addCommand('saveScreenshotByName', cmds.saveScreenshotByName, true)
17 'saveAndDiffScreenshot',
18 cmds.saveAndDiffScreenshot,
21 if (browser.config.appium)
22 await browser.updateSettings(browser.config.appium)
23 if (browser.config.maximizeWindow) await browser.maximizeWindow()
25 beforeTest: async test => {
26 await cmds.startScreenRecording(test)
28 afterTest: async (test, context, result) => {
30 cmds.stopScreenRecording(test, result),
31 cmds.saveScreenshotByTest(test, result)
36 module.exports = config