From 7db4dcd4075756d7aaab01e4770ffb1e2485c2db Mon Sep 17 00:00:00 2001 From: Alexey Safronov Date: Sun, 24 Jul 2022 20:03:48 +0300 Subject: [PATCH] Web: Client: Added missing code --- packages/client/steps_file.js | 72 +++++++++++++++++++++++++++++++++-- 1 file changed, 69 insertions(+), 3 deletions(-) diff --git a/packages/client/steps_file.js b/packages/client/steps_file.js index 9fbfe9f1a4..a55a2befac 100644 --- a/packages/client/steps_file.js +++ b/packages/client/steps_file.js @@ -1,10 +1,76 @@ +const Endpoints = require("./tests/mocking/endpoints.js"); // in this file you can append custom step methods to 'I' object -module.exports = function() { +module.exports = function () { return actor({ - // Define custom steps here, use 'this' to access default methods of I. // It is recommended to place a general 'login' function here. + mockData: function () { + this.mockEndpoint(Endpoints.self, "self"); + this.mockEndpoint(Endpoints.settings, "settings"); + this.mockEndpoint(Endpoints.build, "build"); + this.mockEndpoint(Endpoints.info, "info"); + this.mockEndpoint(Endpoints.common, "common"); + this.mockEndpoint(Endpoints.cultures, "cultures"); + this.mockEndpoint(Endpoints.fileSettings, "default"); + this.mockEndpoint(Endpoints.capabilities, "capabilities"); + this.mockEndpoint(Endpoints.thirdparty, "thirdparty"); + this.mockEndpoint(Endpoints.thumbnails, "thumbnails"); + this.mockEndpoint(Endpoints.getFolder(1), "1"); + }, + + selectAuthor: function () { + // open author selector + this.click({ react: "SelectorAddButton" }); + + // open "All users" in author selector + this.forceClick({ name: "selector-row-option-1" }); + + // select user with display name 'Administrator' + this.forceClick({ name: "selector-row-option-1" }); + }, + + openArticle: function () { + this.seeElement({ + react: "styled.div", + props: { className: "not-selectable", visible: true }, + }); + this.click({ + react: "styled.div", + props: { className: "not-selectable", visible: true }, + }); + }, + + openProfileMenu: function () { + this.seeElement({ + react: "Avatar", + props: { className: "icon-profile-menu" }, + }); + this.click({ + react: "Avatar", + props: { className: "icon-profile-menu" }, + }); + }, + + openContextMenu: function () { + this.seeElement({ + react: "ContextMenuButton", + props: { className: "expandButton" }, + }); + this.click({ + react: "ContextMenuButton", + props: { className: "expandButton" }, + }); + }, + + switchView: function (type) { + this.click({ + react: "styled.div", + key: type, + props: { isChecked: false }, + }); + this.wait(2); + }, }); -} +};