LocalFile.ProcessBuilderListView#set-up
  • Running IsTestName with locator1 with value1
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
    • Running isTestName with parameters
  • Running WaitForSPARefresh
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
  • Running Open with locator1http://localhost:8080/web/guest/home
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parametershttp://localhost:8080/web/guest/home
    • Running assertLiferayErrors
    • Running selectWindow with parameters
    • Running selectFrame with parametersrelative=top
    • Running open with parametershttp://localhost:8080/web/guest/home
    • Running runScript with parameters if (typeof Liferay != "undefined") { const TRACKED_EVENTS = [ 'addPortlet', 'allPortletsReady', 'allUploadsComplete', 'beforeNavigate', 'beforeScreenFlip', 'closePortlet', 'dataLayoutConfigReady', 'destroyPortlet', 'editorAPIReady', 'endNavigate', 'form:registered', 'formNavigator:reveal', 'dropdownShow', 'entitySelectionRemoved', 'exitNavigation', 'hideNavigationMenu', 'initLayout', 'inputLocalized:localeChanged', 'modalIframeLoaded', 'noticeShow', 'noticeHide', 'popupReady', 'portletDragStart', 'portletMoved', 'portletReady', 'ratings:vote', 'screenActivate', 'screenDeactivate', 'screenFlip', 'screenLoad', 'search-container:registered', 'sessionExpired', 'showNavigationMenu', 'spaRequestTimeout', 'startNavigate', 'submitForm', 'tempFileRemoved', 'toggleControls', 'updatedLayout', ]; let __LFR_TRACKED_EVENTS__ = {}; Liferay.on(TRACKED_EVENTS, function(event){ { const eventLog = __LFR_TRACKED_EVENTS__[event.type] ? __LFR_TRACKED_EVENTS__[event.type].concat(event) : [event]; __LFR_TRACKED_EVENTS__[event.type] = eventLog }; }); function getLastEvent(eventName) { return __LFR_TRACKED_EVENTS__[eventName] ? __LFR_TRACKED_EVENTS__[eventName][ __LFR_TRACKED_EVENTS__[eventName].length - 1 ] : {}; }; function getLastEventDetails(eventName){ return getLastEvent(eventName).details[0]; }; window.LFR_JS_EVENTS_LOG = { getLastEvent:getLastEvent, getLastEventDetails:getLastEventDetails, }; }
    • Running assertJavaScriptErrors with parametershttp://localhost:8080/web/guest/home
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parametershttp://localhost:8080/web/guest/home
    • Running assertLiferayErrors
  • Running IsElementNotPresent with locator1//span[contains(@class,'sign-in')]/a/span
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//span[contains(@class,'sign-in')]/a/span
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//span[contains(@class,'sign-in')]/a/span
    • Running isNotVisible with parameters//span[contains(@class,'sign-in')]/a/span
  • Running post with parametersArg: ${curl}Return: {"agreedToTermsOfUse":true,"comments":"","companyId":"20097","contactId":"20127","createDate":1670610535626,"ctCollectionId":"0","defaultUser":false,"emailAddress":"test@liferay.com","emailAddressVerified":true,"externalReferenceCode":"10e7a0e2-5ed8-5a47-6912-5b5617850c9e","facebookId":"0","failedLoginAttempts":0,"firstName":"Test","googleUserId":"","graceLoginCount":0,"greeting":"Welcome Test Test!","jobTitle":"","languageId":"en_US","lastFailedLoginDate":null,"lastLoginDate":1670611441068,"lastLoginIP":"127.0.0.1","lastName":"Test","ldapServerId":"-1","lockout":false,"lockoutDate":null,"loginDate":1670611932600,"loginIP":"127.0.0.1","middleName":"","modifiedDate":1670615019568,"mvccVersion":"12","openId":"","portraitId":"0","reminderQueryAnswer":"test","reminderQueryQuestion":"what-is-your-father's-middle-name","screenName":"test","status":0,"timeZoneId":"UTC","userId":"20125","uuid":"10e7a0e2-5ed8-5a47-6912-5b5617850c9e"}Finished executing commands.
  • Running post with parametersArg: ${curl}Return: {"agreedToTermsOfUse":true,"comments":"","companyId":"20097","contactId":"20127","createDate":1670610535626,"ctCollectionId":"0","defaultUser":false,"emailAddress":"test@liferay.com","emailAddressVerified":true,"externalReferenceCode":"10e7a0e2-5ed8-5a47-6912-5b5617850c9e","facebookId":"0","failedLoginAttempts":0,"firstName":"Test","googleUserId":"","graceLoginCount":0,"greeting":"Welcome Test Test!","jobTitle":"","languageId":"en_US","lastFailedLoginDate":null,"lastLoginDate":1670611441068,"lastLoginIP":"127.0.0.1","lastName":"Test","ldapServerId":"-1","lockout":false,"lockoutDate":null,"loginDate":1670611932600,"loginIP":"127.0.0.1","middleName":"","modifiedDate":1670615020389,"mvccVersion":"13","openId":"","portraitId":"0","reminderQueryAnswer":"test","reminderQueryQuestion":"what-is-your-father's-middle-name","screenName":"test","status":0,"timeZoneId":"UTC","userId":"20125","uuid":"10e7a0e2-5ed8-5a47-6912-5b5617850c9e"}Finished executing commands.
  • Running Open with locator1http://localhost:8080/web/guest?SM_USER=test@liferay.com
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parametershttp://localhost:8080/web/guest?SM_USER=test@liferay.com
    • Running assertLiferayErrors
    • Running selectWindow with parameters
    • Running selectFrame with parametersrelative=top
    • Running open with parametershttp://localhost:8080/web/guest?SM_USER=test@liferay.com
    • Running runScript with parameters if (typeof Liferay != "undefined") { const TRACKED_EVENTS = [ 'addPortlet', 'allPortletsReady', 'allUploadsComplete', 'beforeNavigate', 'beforeScreenFlip', 'closePortlet', 'dataLayoutConfigReady', 'destroyPortlet', 'editorAPIReady', 'endNavigate', 'form:registered', 'formNavigator:reveal', 'dropdownShow', 'entitySelectionRemoved', 'exitNavigation', 'hideNavigationMenu', 'initLayout', 'inputLocalized:localeChanged', 'modalIframeLoaded', 'noticeShow', 'noticeHide', 'popupReady', 'portletDragStart', 'portletMoved', 'portletReady', 'ratings:vote', 'screenActivate', 'screenDeactivate', 'screenFlip', 'screenLoad', 'search-container:registered', 'sessionExpired', 'showNavigationMenu', 'spaRequestTimeout', 'startNavigate', 'submitForm', 'tempFileRemoved', 'toggleControls', 'updatedLayout', ]; let __LFR_TRACKED_EVENTS__ = {}; Liferay.on(TRACKED_EVENTS, function(event){ { const eventLog = __LFR_TRACKED_EVENTS__[event.type] ? __LFR_TRACKED_EVENTS__[event.type].concat(event) : [event]; __LFR_TRACKED_EVENTS__[event.type] = eventLog }; }); function getLastEvent(eventName) { return __LFR_TRACKED_EVENTS__[eventName] ? __LFR_TRACKED_EVENTS__[eventName][ __LFR_TRACKED_EVENTS__[eventName].length - 1 ] : {}; }; function getLastEventDetails(eventName){ return getLastEvent(eventName).details[0]; }; window.LFR_JS_EVENTS_LOG = { getLastEvent:getLastEvent, getLastEventDetails:getLastEventDetails, }; }
    • Running assertJavaScriptErrors with parametershttp://localhost:8080/web/guest?SM_USER=test@liferay.com
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parametershttp://localhost:8080/web/guest?SM_USER=test@liferay.com
    • Running assertLiferayErrors
  • Running IsElementPresent with locator1//h1[contains(.,'Your connection is not private')]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//h1[contains(.,'Your connection is not private')]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//h1[contains(.,'Your connection is not private')]
  • Running IsElementPresent#pauseIsElementPresent with locator1//div[label[contains(.,'Password') and not(contains(.,'One-Time Password'))]]/input | //div[label[contains(.,"parola d'ordine")]]/input | //div[label[contains(.,'Contraseña')]]/input | //div[label[contains(.,'パスワード')]]/input | //div[label[contains(.,'密码')]]/input | //div[contains(.,'Kennwort')]//input[@type='password']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[label[contains(.,'Password') and not(contains(.,'One-Time Password'))]]/input | //div[label[contains(.,"parola d'ordine")]]/input | //div[label[contains(.,'Contraseña')]]/input | //div[label[contains(.,'パスワード')]]/input | //div[label[contains(.,'密码')]]/input | //div[contains(.,'Kennwort')]//input[@type='password']
    • Running assertLiferayErrors
    • Running pause with parameters1000
    • Running isElementPresent with parameters//div[label[contains(.,'Password') and not(contains(.,'One-Time Password'))]]/input | //div[label[contains(.,"parola d'ordine")]]/input | //div[label[contains(.,'Contraseña')]]/input | //div[label[contains(.,'パスワード')]]/input | //div[label[contains(.,'密码')]]/input | //div[contains(.,'Kennwort')]//input[@type='password']
  • Running IsElementPresent#pauseIsElementPresent with locator1//input[contains(@id,'reminderQueryAnswer')]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//input[contains(@id,'reminderQueryAnswer')]
    • Running assertLiferayErrors
    • Running pause with parameters1000
    • Running isElementPresent with parameters//input[contains(@id,'reminderQueryAnswer')]
  • Running IsElementNotPresent with locator1//span[@class='user-avatar-link']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//span[@class='user-avatar-link']
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//span[@class='user-avatar-link']
    • Running isNotVisible with parameters//span[@class='user-avatar-link']
  • Running WaitForLiferayEvent#initializeLiferayEventLog
    • Running runScript with parameters if (typeof Liferay != "undefined") { const TRACKED_EVENTS = [ 'addPortlet', 'allPortletsReady', 'allUploadsComplete', 'beforeNavigate', 'beforeScreenFlip', 'closePortlet', 'dataLayoutConfigReady', 'destroyPortlet', 'editorAPIReady', 'endNavigate', 'form:registered', 'formNavigator:reveal', 'dropdownShow', 'entitySelectionRemoved', 'exitNavigation', 'hideNavigationMenu', 'initLayout', 'inputLocalized:localeChanged', 'modalIframeLoaded', 'noticeShow', 'noticeHide', 'popupReady', 'portletDragStart', 'portletMoved', 'portletReady', 'ratings:vote', 'screenActivate', 'screenDeactivate', 'screenFlip', 'screenLoad', 'search-container:registered', 'sessionExpired', 'showNavigationMenu', 'spaRequestTimeout', 'startNavigate', 'submitForm', 'tempFileRemoved', 'toggleControls', 'updatedLayout', ]; let __LFR_TRACKED_EVENTS__ = {}; Liferay.on(TRACKED_EVENTS, function(event){ { const eventLog = __LFR_TRACKED_EVENTS__[event.type] ? __LFR_TRACKED_EVENTS__[event.type].concat(event) : [event]; __LFR_TRACKED_EVENTS__[event.type] = eventLog }; }); function getLastEvent(eventName) { return __LFR_TRACKED_EVENTS__[eventName] ? __LFR_TRACKED_EVENTS__[eventName][ __LFR_TRACKED_EVENTS__[eventName].length - 1 ] : {}; }; function getLastEventDetails(eventName){ return getLastEvent(eventName).details[0]; }; window.LFR_JS_EVENTS_LOG = { getLastEvent:getLastEvent, getLastEventDetails:getLastEventDetails, }; }
  • LocalFile.ProcessBuilderListView#RedirectToNewWorkflowPage
  • Verify that the users are able to click on the + button and be directed to the New Workflow page
  • Running IsElementNotPresent with locator1//div[contains(@class,'applications-menu-modal')]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'applications-menu-modal')]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[contains(@class,'applications-menu-modal')]
    • Running isElementNotPresent with parameters//div[contains(@class,'applications-menu-modal')]
  • Running Click with locator1//button[@data-qa-id='applicationsMenu']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//button[@data-qa-id='applicationsMenu']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//button[@data-qa-id='applicationsMenu']
    • Running mouseOver with parameters//button[@data-qa-id='applicationsMenu']
    • Running click with parameters//button[@data-qa-id='applicationsMenu']
    • Running assertJavaScriptErrors with parameters//button[@data-qa-id='applicationsMenu']
    • Running assertLiferayErrors
  • Running WaitForElementPresent with locator1//div[contains(@class,'applications-menu-modal')]
    • Running waitForElementPresent with parameters//div[contains(@class,'applications-menu-modal')]
  • Running Click with locator1//li[contains(@id,'ApplicationsMenuPortlet')]/button[contains(@class,'nav-link') and normalize-space()='Applications']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//li[contains(@id,'ApplicationsMenuPortlet')]/button[contains(@class,'nav-link') and normalize-space()='Applications']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//li[contains(@id,'ApplicationsMenuPortlet')]/button[contains(@class,'nav-link') and normalize-space()='Applications']
    • Running mouseOver with parameters//li[contains(@id,'ApplicationsMenuPortlet')]/button[contains(@class,'nav-link') and normalize-space()='Applications']
    • Running click with parameters//li[contains(@id,'ApplicationsMenuPortlet')]/button[contains(@class,'nav-link') and normalize-space()='Applications']
    • Running assertJavaScriptErrors with parameters//li[contains(@id,'ApplicationsMenuPortlet')]/button[contains(@class,'nav-link') and normalize-space()='Applications']
    • Running assertLiferayErrors
  • Running AssertElementPresent with locator1//li[contains(@id,'ApplicationsMenuPortlet')]/button[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Applications']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//li[contains(@id,'ApplicationsMenuPortlet')]/button[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Applications']
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//li[contains(@id,'ApplicationsMenuPortlet')]/button[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Applications']
    • Running assertElementPresent with parameters//li[contains(@id,'ApplicationsMenuPortlet')]/button[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Applications']
    • Running assertJavaScriptErrors with parameters//li[contains(@id,'ApplicationsMenuPortlet')]/button[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Applications']
    • Running assertLiferayErrors
  • Running WaitForLiferayEvent#initializeLiferayEventLog
    • Running runScript with parameters if (typeof Liferay != "undefined") { const TRACKED_EVENTS = [ 'addPortlet', 'allPortletsReady', 'allUploadsComplete', 'beforeNavigate', 'beforeScreenFlip', 'closePortlet', 'dataLayoutConfigReady', 'destroyPortlet', 'editorAPIReady', 'endNavigate', 'form:registered', 'formNavigator:reveal', 'dropdownShow', 'entitySelectionRemoved', 'exitNavigation', 'hideNavigationMenu', 'initLayout', 'inputLocalized:localeChanged', 'modalIframeLoaded', 'noticeShow', 'noticeHide', 'popupReady', 'portletDragStart', 'portletMoved', 'portletReady', 'ratings:vote', 'screenActivate', 'screenDeactivate', 'screenFlip', 'screenLoad', 'search-container:registered', 'sessionExpired', 'showNavigationMenu', 'spaRequestTimeout', 'startNavigate', 'submitForm', 'tempFileRemoved', 'toggleControls', 'updatedLayout', ]; let __LFR_TRACKED_EVENTS__ = {}; Liferay.on(TRACKED_EVENTS, function(event){ { const eventLog = __LFR_TRACKED_EVENTS__[event.type] ? __LFR_TRACKED_EVENTS__[event.type].concat(event) : [event]; __LFR_TRACKED_EVENTS__[event.type] = eventLog }; }); function getLastEvent(eventName) { return __LFR_TRACKED_EVENTS__[eventName] ? __LFR_TRACKED_EVENTS__[eventName][ __LFR_TRACKED_EVENTS__[eventName].length - 1 ] : {}; }; function getLastEventDetails(eventName){ return getLastEvent(eventName).details[0]; }; window.LFR_JS_EVENTS_LOG = { getLastEvent:getLastEvent, getLastEventDetails:getLastEventDetails, }; }
  • Running Click with locator1//div[contains(@role,'tabpanel') and contains(@class,'active')]//div[contains(@class,'applications-menu-nav-columns')]//li[contains(.,'Workflow')]/following-sibling::li//span[normalize-space(text())='Process Builder']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@role,'tabpanel') and contains(@class,'active')]//div[contains(@class,'applications-menu-nav-columns')]//li[contains(.,'Workflow')]/following-sibling::li//span[normalize-space(text())='Process Builder']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@role,'tabpanel') and contains(@class,'active')]//div[contains(@class,'applications-menu-nav-columns')]//li[contains(.,'Workflow')]/following-sibling::li//span[normalize-space(text())='Process Builder']
    • Running mouseOver with parameters//div[contains(@role,'tabpanel') and contains(@class,'active')]//div[contains(@class,'applications-menu-nav-columns')]//li[contains(.,'Workflow')]/following-sibling::li//span[normalize-space(text())='Process Builder']
    • Running click with parameters//div[contains(@role,'tabpanel') and contains(@class,'active')]//div[contains(@class,'applications-menu-nav-columns')]//li[contains(.,'Workflow')]/following-sibling::li//span[normalize-space(text())='Process Builder']
    • Running assertJavaScriptErrors with parameters//div[contains(@role,'tabpanel') and contains(@class,'active')]//div[contains(@class,'applications-menu-nav-columns')]//li[contains(.,'Workflow')]/following-sibling::li//span[normalize-space(text())='Process Builder']
    • Running assertLiferayErrors
  • Running Click with locator1//a[contains(@class,'btn')][contains(@href,'new') or contains(@href,'redirect') or contains(@href,'mvc') or contains(@href,'javascript')][.//*[name()='svg'][contains(@class,'icon-plus')]][not(contains(@class,'borderless'))] | //button[not(contains(@class,'borderless'))][*[contains(@class,'icon-plus')]]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//a[contains(@class,'btn')][contains(@href,'new') or contains(@href,'redirect') or contains(@href,'mvc') or contains(@href,'javascript')][.//*[name()='svg'][contains(@class,'icon-plus')]][not(contains(@class,'borderless'))] | //button[not(contains(@class,'borderless'))][*[contains(@class,'icon-plus')]]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//a[contains(@class,'btn')][contains(@href,'new') or contains(@href,'redirect') or contains(@href,'mvc') or contains(@href,'javascript')][.//*[name()='svg'][contains(@class,'icon-plus')]][not(contains(@class,'borderless'))] | //button[not(contains(@class,'borderless'))][*[contains(@class,'icon-plus')]]
    • Running mouseOver with parameters//a[contains(@class,'btn')][contains(@href,'new') or contains(@href,'redirect') or contains(@href,'mvc') or contains(@href,'javascript')][.//*[name()='svg'][contains(@class,'icon-plus')]][not(contains(@class,'borderless'))] | //button[not(contains(@class,'borderless'))][*[contains(@class,'icon-plus')]]
    • Running click with parameters//a[contains(@class,'btn')][contains(@href,'new') or contains(@href,'redirect') or contains(@href,'mvc') or contains(@href,'javascript')][.//*[name()='svg'][contains(@class,'icon-plus')]][not(contains(@class,'borderless'))] | //button[not(contains(@class,'borderless'))][*[contains(@class,'icon-plus')]]
    • Running assertJavaScriptErrors with parameters//a[contains(@class,'btn')][contains(@href,'new') or contains(@href,'redirect') or contains(@href,'mvc') or contains(@href,'javascript')][.//*[name()='svg'][contains(@class,'icon-plus')]][not(contains(@class,'borderless'))] | //button[not(contains(@class,'borderless'))][*[contains(@class,'icon-plus')]]
    • Running assertLiferayErrors
  • Running AssertTextEquals with locator1//input[contains(@id,'title')] with value1New Workflow
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]New Workflow
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]New Workflow
    • Running assertJavaScriptErrors with parameters//input[contains(@id,'title')]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]New Workflow
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]New Workflow
    • Running assertJavaScriptErrors with parameters//input[contains(@id,'title')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//input[contains(@id,'title')]New Workflow
    • Running waitForValue with parameters//input[contains(@id,'title')]New Workflow
    • Running assertValue with parameters//input[contains(@id,'title')]New Workflow
    • Running assertJavaScriptErrors with parameters//input[contains(@id,'title')]
    • Running assertLiferayErrors
  • LocalFile.ProcessBuilderListView#tear-down
  • Running WaitForSPARefresh
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
  • Running Open with locator1http://localhost:8080/web/guest/home
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parametershttp://localhost:8080/web/guest/home
    • Running assertLiferayErrors
    • Running selectWindow with parameters
    • Running selectFrame with parametersrelative=top
    • Running open with parametershttp://localhost:8080/web/guest/home
    • Running runScript with parameters if (typeof Liferay != "undefined") { const TRACKED_EVENTS = [ 'addPortlet', 'allPortletsReady', 'allUploadsComplete', 'beforeNavigate', 'beforeScreenFlip', 'closePortlet', 'dataLayoutConfigReady', 'destroyPortlet', 'editorAPIReady', 'endNavigate', 'form:registered', 'formNavigator:reveal', 'dropdownShow', 'entitySelectionRemoved', 'exitNavigation', 'hideNavigationMenu', 'initLayout', 'inputLocalized:localeChanged', 'modalIframeLoaded', 'noticeShow', 'noticeHide', 'popupReady', 'portletDragStart', 'portletMoved', 'portletReady', 'ratings:vote', 'screenActivate', 'screenDeactivate', 'screenFlip', 'screenLoad', 'search-container:registered', 'sessionExpired', 'showNavigationMenu', 'spaRequestTimeout', 'startNavigate', 'submitForm', 'tempFileRemoved', 'toggleControls', 'updatedLayout', ]; let __LFR_TRACKED_EVENTS__ = {}; Liferay.on(TRACKED_EVENTS, function(event){ { const eventLog = __LFR_TRACKED_EVENTS__[event.type] ? __LFR_TRACKED_EVENTS__[event.type].concat(event) : [event]; __LFR_TRACKED_EVENTS__[event.type] = eventLog }; }); function getLastEvent(eventName) { return __LFR_TRACKED_EVENTS__[eventName] ? __LFR_TRACKED_EVENTS__[eventName][ __LFR_TRACKED_EVENTS__[eventName].length - 1 ] : {}; }; function getLastEventDetails(eventName){ return getLastEvent(eventName).details[0]; }; window.LFR_JS_EVENTS_LOG = { getLastEvent:getLastEvent, getLastEventDetails:getLastEventDetails, }; }
    • Running assertJavaScriptErrors with parametershttp://localhost:8080/web/guest/home
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parametershttp://localhost:8080/web/guest/home
    • Running assertLiferayErrors
  • Running IsElementNotPresent with locator1//*[@data-qa-id='productMenu']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='productMenu']
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//*[@data-qa-id='productMenu']
    • Running isNotVisible with parameters//*[@data-qa-id='productMenu']
  • Running IsElementNotPresent with locator1//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running isNotVisible with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
  • Running AssertElementPresent with locator1//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertElementPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertLiferayErrors
  • Running AssertElementNotPresent with locator1//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running assertElementNotPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running assertLiferayErrors
  • Running IsElementPresent with locator1//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
  • Running AssertVisible with locator1//*[@data-qa-id='productMenuBody']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='productMenuBody']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//*[@data-qa-id='productMenuBody']
    • Running assertVisible with parameters//*[@data-qa-id='productMenuBody']
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='productMenuBody']
    • Running assertLiferayErrors
  • Running IsElementPresent with locator1//a[@aria-expanded='false' and @data-qa-id='appGroup'][normalize-space(text())='Content & Data']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//a[@aria-expanded='false' and @data-qa-id='appGroup'][normalize-space(text())='Content & Data']
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//a[@aria-expanded='false' and @data-qa-id='appGroup'][normalize-space(text())='Content & Data']
  • Running Click with locator1//a[@aria-expanded='false' and @data-qa-id='appGroup'][normalize-space(text())='Content & Data']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//a[@aria-expanded='false' and @data-qa-id='appGroup'][normalize-space(text())='Content & Data']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//a[@aria-expanded='false' and @data-qa-id='appGroup'][normalize-space(text())='Content & Data']
    • Running mouseOver with parameters//a[@aria-expanded='false' and @data-qa-id='appGroup'][normalize-space(text())='Content & Data']
    • Running click with parameters//a[@aria-expanded='false' and @data-qa-id='appGroup'][normalize-space(text())='Content & Data']
    • Running assertJavaScriptErrors with parameters//a[@aria-expanded='false' and @data-qa-id='appGroup'][normalize-space(text())='Content & Data']
    • Running assertLiferayErrors
  • Running AssertElementPresent with locator1//a[@aria-expanded='true' and @data-qa-id='appGroup'][normalize-space(text())='Content & Data']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//a[@aria-expanded='true' and @data-qa-id='appGroup'][normalize-space(text())='Content & Data']
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//a[@aria-expanded='true' and @data-qa-id='appGroup'][normalize-space(text())='Content & Data']
    • Running assertElementPresent with parameters//a[@aria-expanded='true' and @data-qa-id='appGroup'][normalize-space(text())='Content & Data']
    • Running assertJavaScriptErrors with parameters//a[@aria-expanded='true' and @data-qa-id='appGroup'][normalize-space(text())='Content & Data']
    • Running assertLiferayErrors
  • Running AssertClick#assertPartialTextClickAt with locator1//div[a[@aria-expanded='true']]//a[contains(@id,'Portlet') and @data-title='Blogs'] with value1Blogs
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Blogs
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]Blogs
    • Running assertJavaScriptErrors with parameters//div[a[@aria-expanded='true']]//a[contains(@id,'Portlet') and @data-title='Blogs']
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Blogs
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]Blogs
    • Running assertJavaScriptErrors with parameters//div[a[@aria-expanded='true']]//a[contains(@id,'Portlet') and @data-title='Blogs']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[a[@aria-expanded='true']]//a[contains(@id,'Portlet') and @data-title='Blogs']Blogs
    • Running waitForPartialTextCaseInsensitive with parameters//div[a[@aria-expanded='true']]//a[contains(@id,'Portlet') and @data-title='Blogs']Blogs

    Cause:

    Element is not present at "//div[a[@aria-expanded='true']]//a[contains(@id,'Portlet') and @data-title='Blogs']"

    Steps:

    • BlogsEntry#tearDownCP --> FAILED
      • WaitForSPARefresh#waitForSPARefresh --> PASSED
      • Open browser to 'http://localhost:8080/web/guest/home' --> PASSED
      • Assert that 'PRODUCT_MENU_OPENED' is available --> PASSED
      • Assert that 'PRODUCT_MENU_CLOSED' is not available --> PASSED
      • AssertVisible#assertVisible --> PASSED
      • Click on 'CATEGORY_COLLAPSED' --> PASSED
      • Assert that 'CATEGORY_EXPANDED' is available --> PASSED
      • Click on 'PORTLET' that should have a value of 'Blogs' --> FAILED
    before0Before
    after0After
  • LocalFile.ProcessBuilderListView#RedirectToNewWorkflowPage

    • 8
      setUp {
      • 9
        TestCase.setUpPortalInstance();
        • 165
          var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
        • 166
          var testPortalInstance = PropsUtil.get("test.portal.instance");
        • 168
          if (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}"))) {
          • 169
            HeadlessPortalInstanceAPI.cleanAllPortalInstances(authenticationMethod = "${authenticationMethod}");
            • 106
              var portalInstanceJson = HeadlessPortalInstanceAPI._getPortalInstances(authenticationMethod = "${authenticationMethod}");
              • 5
                var portalURL = JSONCompany.getDefaultPortalURL();
                • 97
                  var portalURL = PropsUtil.get("default.portal.url");
                • 99
                  if (!(contains("${portalURL}", "http"))) {
                  • 100
                    var portalURL = "http://${portalURL}";
                  }
                • 103
                  return "${portalURL}";
              • 7
                if ("${authenticationMethod}" == "By Screen Name") {
                • 8
                  var userName = "test";
                }
              • 10
                else {
                • 11
                  var userName = "test@liferay.com";
                }
              • 14
                var curl = ''' ${portalURL}/o/headless-portal-instances/v1.0/portal-instances \ -u ${userName}:test \ -H Content-Type: application/json ''';
              • 20
                var json = JSONCurlUtil.get("${curl}");
              • 22
                return "${json}";
            • 108
              var portalInstanceIds = JSONUtil.getWithJSONPath("${portalInstanceJson}", "$.items..portalInstanceId");
            • 110
              for (var portalInstanceId : list "${portalInstanceIds}") {
              • 111
                if ("${portalInstanceId}" != "liferay.com") {
                • 112
                  HeadlessPortalInstanceAPI.deletePortalInstance( authenticationMethod = "${authenticationMethod}", portalInstanceId = "${portalInstanceId}");
                  • 121
                    Variables.assertDefined(parameterList = "${portalInstanceId}");
                    • 5
                      if (!(isSet(parameterList))) {
                      • 6
                        fail("Please define a parameter list in 'parameterList'");
                      }
                    • 9
                      for (var parameter : list "${parameterList}") {
                      • 13
                        var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                      • 17
                        if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                        • 18
                          fail("Please set '${parameter}'");
                        }
                      }
                  • 123
                    var portalURL = JSONCompany.getDefaultPortalURL();
                    • 97
                      var portalURL = PropsUtil.get("default.portal.url");
                    • 99
                      if (!(contains("${portalURL}", "http"))) {
                      • 100
                        var portalURL = "http://${portalURL}";
                      }
                    • 103
                      return "${portalURL}";
                  • 124
                    var portalInstanceId = StringUtil.replace("${portalInstanceId}", " ", "%20");
                  • 126
                    if ("${authenticationMethod}" == "By Screen Name") {
                    • 127
                      var userName = "test";
                    }
                  • 129
                    else {
                    • 130
                      var userName = "test@liferay.com";
                    }
                  • 133
                    var curl = ''' ${portalURL}/o/headless-portal-instances/v1.0/portal-instances/${portalInstanceId} \ -u ${userName}:test \ -H Content-Type: application/json ''';
                  • 139
                    JSONCurlUtil.delete("${curl}");
                }
              }
          • 171
            if ("${testPortalInstance}" == "true") {
            • 172
              SignIn.signInPortalInstanceSetUp();
              • 3
                var userEmailAddress = "test@liferay.com";
              • 4
                var userPassword = "test";
              • 5
                var userPasswordReminderAnswer = "test";
              • 62
                var portalURL = PropsUtil.get("portal.url");
              • 64
                var portalURL = StringUtil.replace("${portalURL}", "http://", "");
              • 66
                var portalURL = StringUtil.replace("${portalURL}", ":8080", "");
              • 68
                HeadlessPortalInstanceAPI.addPortalInstance( authenticationMethod = "${authenticationMethod}", domain = "liferay.com", portalInstanceId = "${portalURL}", virtualHost = "${portalURL}");
                • 27
                  Variables.assertDefined(parameterList = "${domain},${virtualHost},${portalInstanceId}");
                  • 5
                    if (!(isSet(parameterList))) {
                    • 6
                      fail("Please define a parameter list in 'parameterList'");
                    }
                  • 9
                    for (var parameter : list "${parameterList}") {
                    • 13
                      var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                    • 17
                      if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                      • 18
                        fail("Please set '${parameter}'");
                      }
                    }
                • 29
                  var portalURL = JSONCompany.getDefaultPortalURL();
                  • 97
                    var portalURL = PropsUtil.get("default.portal.url");
                  • 99
                    if (!(contains("${portalURL}", "http"))) {
                    • 100
                      var portalURL = "http://${portalURL}";
                    }
                  • 103
                    return "${portalURL}";
                • 30
                  var parameters = JSONUtil2._addJSONObject( json = "{}", key = "domain", value = "\"${domain}\"");
                  • 67
                    if (!(isSet(json)) || !(isSet(key)) || !(isSet(value))) {
                    • 68
                      fail("Error, 'JSON', 'key', and 'value' must all be set");
                    }
                  • 71
                    var bool = JSONUtil2._isJSONObjectPresent( json = "${json}", key = "${key}");
                    • 133
                      var temp = RegexUtil.replace("${json}", "\"(${key})\"\s*:\s*", "1");
                    • 135
                      if ("${temp}" == "${key}") {
                      • 136
                        return "TRUE";
                      }
                    • 138
                      else {
                      • 139
                        return "FALSE";
                      }
                  • 75
                    if ("${bool}" == "TRUE") {
                    • 76
                      fail("Error, '${key}' already exists in the JSON");
                    }
                  • 79
                    if ("${json}" == "{}") {
                    • 80
                      var json = '''{"${key}" : ${value}}''';
                    }
                  • 82
                    else {
                    • 83
                      var json = StringUtil.regexReplaceFirst("${json}", "(.*)\}", "$1, \"${key}\": ${value}}");
                    }
                  • 86
                    return "${json}";
                • 35
                  var parameters = JSONUtil2._addJSONObject( json = "${parameters}", key = "virtualHost", value = "\"${virtualHost}\"");
                  • 67
                    if (!(isSet(json)) || !(isSet(key)) || !(isSet(value))) {
                    • 68
                      fail("Error, 'JSON', 'key', and 'value' must all be set");
                    }
                  • 71
                    var bool = JSONUtil2._isJSONObjectPresent( json = "${json}", key = "${key}");
                    • 133
                      var temp = RegexUtil.replace("${json}", "\"(${key})\"\s*:\s*", "1");
                    • 135
                      if ("${temp}" == "${key}") {
                      • 136
                        return "TRUE";
                      }
                    • 138
                      else {
                      • 139
                        return "FALSE";
                      }
                  • 75
                    if ("${bool}" == "TRUE") {
                    • 76
                      fail("Error, '${key}' already exists in the JSON");
                    }
                  • 79
                    if ("${json}" == "{}") {
                    • 80
                      var json = '''{"${key}" : ${value}}''';
                    }
                  • 82
                    else {
                    • 83
                      var json = StringUtil.regexReplaceFirst("${json}", "(.*)\}", "$1, \"${key}\": ${value}}");
                    }
                  • 86
                    return "${json}";
                • 40
                  var parameters = JSONUtil2._addJSONObject( json = "${parameters}", key = "portalInstanceId", value = "\"${portalInstanceId}\"");
                  • 67
                    if (!(isSet(json)) || !(isSet(key)) || !(isSet(value))) {
                    • 68
                      fail("Error, 'JSON', 'key', and 'value' must all be set");
                    }
                  • 71
                    var bool = JSONUtil2._isJSONObjectPresent( json = "${json}", key = "${key}");
                    • 133
                      var temp = RegexUtil.replace("${json}", "\"(${key})\"\s*:\s*", "1");
                    • 135
                      if ("${temp}" == "${key}") {
                      • 136
                        return "TRUE";
                      }
                    • 138
                      else {
                      • 139
                        return "FALSE";
                      }
                  • 75
                    if ("${bool}" == "TRUE") {
                    • 76
                      fail("Error, '${key}' already exists in the JSON");
                    }
                  • 79
                    if ("${json}" == "{}") {
                    • 80
                      var json = '''{"${key}" : ${value}}''';
                    }
                  • 82
                    else {
                    • 83
                      var json = StringUtil.regexReplaceFirst("${json}", "(.*)\}", "$1, \"${key}\": ${value}}");
                    }
                  • 86
                    return "${json}";
                • 45
                  if ("${authenticationMethod}" == "By Screen Name") {
                  • 46
                    var userName = "test";
                  }
                • 48
                  else {
                  • 49
                    var userName = "test@liferay.com";
                  }
                • 52
                  var curl = ''' ${portalURL}/o/headless-portal-instances/v1.0/portal-instances \ -u ${userName}:test \ -d ${parameters} \ -H Content-Type: application/json ''';
                • 59
                  JSONCurlUtil.post("${curl}");
            }
          }
      • 11
        User.firstLoginPG();
        • 3
          var password = "test";
        • 4
          var userEmailAddress = "test@liferay.com";
        • 1817
          var appServerType = PropsUtil.get("app.server.type");
        • 1819
          if ("${appServerType}" == "weblogic") {
          • 1823
            Pause(locator1 = "2000");
          }
        • 1826
          if (isSet(virtualHostsURL)) {
          • 1827
            Navigator.openSpecificURL( domain = "${domain}", url = "${virtualHostsURL}");
            • 316
              Open(locator1 = "${url}");
            • 318
              Alert.confirmSecurity(domain = "${domain}");
              • 16
                if (IsElementPresent(key_title = "Your connection is not private", locator1 = "Header#H1_TITLE")) {
                • 17
                  Click(locator1 = "Button#ADVANCED");
                • 19
                  if (isSet(domain)) {
                  • 20
                    AssertElementPresent( key_text = "Proceed to ${domain}", locator1 = "Link#ANY");
                  • 24
                    Click( key_text = "Proceed to ${domain} (unsafe)", locator1 = "Link#ANY");
                  }
                • 28
                  else {
                  • 29
                    AssertElementPresent( key_text = "Proceed to localhost", locator1 = "Link#ANY");
                  • 33
                    Click( key_text = "Proceed to localhost (unsafe)", locator1 = "Link#ANY");
                  }
                }
          }
        • 1831
          else {
          • 1832
            Navigator.openURL();
            • 372
              WaitForSPARefresh();
            • 374
              var baseURL = "${baseURL}";
            • 376
              if (!(isSet(baseURL))) {
              • 377
                var baseURL = PropsUtil.get("portal.url");
              }
            • 380
              Open(locator1 = "${baseURL}/web/guest/home");
          }
        • 1835
          UserBar.signOut();
          • 34
            if (IsElementNotPresent(locator1 = "UserBar#USER_SIGN_IN")) {
            • 35
              UserBar.gotoDropdown();
              • 4
                if (IsElementPresent(locator1 = "UserBar#USER_AVATAR_PORTRAIT")) {
                • 5
                  Click.waitForPersonalMenuJSClick(locator1 = "UserBar#USER_AVATAR_PORTRAIT");
                }
              • 7
                else if (IsElementPresent(locator1 = "UserBar#USER_AVATAR_TOGGLE")) {
                • 8
                  Click.waitForMenuToggleJSClick(locator1 = "UserBar#USER_AVATAR_TOGGLE");
                }
              • 10
                else {
                • 11
                  Click.waitForPersonalMenuJSClick(locator1 = "UserBar#USER_AVATAR_ICON");
                }
              • 14
                AssertVisible(locator1 = "UserBar#USER_AVATAR_DROPDOWN_PORTAL_OPEN");
            • 37
              ScrollWebElementIntoView(locator1 = "UserBar#USER_AVATAR_DROPDOWN_SIGNOUT");
            • 39
              Click(locator1 = "UserBar#USER_AVATAR_DROPDOWN_SIGNOUT");
            }
        • 1837
          JSONUser.agreeToTermsAndAnswerReminderQuery( portalURL = "${virtualHostsURL}", userEmailAddress = "${userEmailAddress}");
          • 185
            Variables.assertDefined(parameterList = "${userEmailAddress}");
            • 5
              if (!(isSet(parameterList))) {
              • 6
                fail("Please define a parameter list in 'parameterList'");
              }
            • 9
              for (var parameter : list "${parameterList}") {
              • 13
                var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
              • 17
                if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                • 18
                  fail("Please set '${parameter}'");
                }
              }
          • 187
            var portalInstanceName = JSONUserSetter.setPortalInstanceName(portalURL = "${portalURL}");
            • 38
              if (isSet(portalURL)) {
              • 39
                var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                • 144
                  Variables.assertDefined(parameterList = "${portalURL}");
                  • 5
                    if (!(isSet(parameterList))) {
                    • 6
                      fail("Please define a parameter list in 'parameterList'");
                    }
                  • 9
                    for (var parameter : list "${parameterList}") {
                    • 13
                      var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                    • 17
                      if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                      • 18
                        fail("Please set '${parameter}'");
                      }
                    }
                • 146
                  var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                • 148
                  var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                • 150
                  return "${portalInstanceName}";
              }
            • 42
              return "${portalInstanceName}";
          • 189
            var userId = JSONUserSetter.setUserId( creatorEmailAddress = "${creatorEmailAddress}", creatorPassword = "${creatorPassword}", portalInstanceName = "${portalInstanceName}", specificURL = "${portalURL}", userEmailAddress = "${userEmailAddress}");
            • 93
              Variables.assertDefined(parameterList = "${userEmailAddress}");
              • 5
                if (!(isSet(parameterList))) {
                • 6
                  fail("Please define a parameter list in 'parameterList'");
                }
              • 9
                for (var parameter : list "${parameterList}") {
                • 13
                  var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                • 17
                  if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                  • 18
                    fail("Please set '${parameter}'");
                  }
                }
            • 95
              var userId = JSONUserAPI._getUserIdByEmailAddress( creatorEmailAddress = "${creatorEmailAddress}", creatorPassword = "${creatorPassword}", portalInstanceName = "${portalInstanceName}", specificURL = "${specificURL}", userEmailAddress = "${userEmailAddress}");
              • 222
                Variables.assertDefined(parameterList = "${userEmailAddress}");
                • 5
                  if (!(isSet(parameterList))) {
                  • 6
                    fail("Please define a parameter list in 'parameterList'");
                  }
                • 9
                  for (var parameter : list "${parameterList}") {
                  • 13
                    var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                  • 17
                    if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                    • 18
                      fail("Please set '${parameter}'");
                    }
                  }
              • 224
                var companyId = JSONCompany.getCompanyId( creatorEmailAddress = "${creatorEmailAddress}", creatorPassword = "${creatorPassword}", portalInstanceName = "${portalInstanceName}");
                • 23
                  if (!(isSet(portalInstanceName)) || ("${portalInstanceName}" == "liferay.com")) {
                  • 24
                    var portalInstanceName = JSONCompany.getPortalInstanceName();
                    • 107
                      var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                    • 108
                      var testPortalInstance = PropsUtil.get("test.portal.instance");
                    • 110
                      if (("${testPortalInstance}" == "true") && !(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}"))) {
                      • 111
                        var portalURL = JSONCompany.getPortalURL();
                        • 138
                          var portalURL = PropsUtil.get("portal.url");
                        • 140
                          return "${portalURL}";
                      • 113
                        var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                        • 144
                          Variables.assertDefined(parameterList = "${portalURL}");
                          • 5
                            if (!(isSet(parameterList))) {
                            • 6
                              fail("Please define a parameter list in 'parameterList'");
                            }
                          • 9
                            for (var parameter : list "${parameterList}") {
                            • 13
                              var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                            • 17
                              if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                              • 18
                                fail("Please set '${parameter}'");
                              }
                            }
                        • 146
                          var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                        • 148
                          var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                        • 150
                          return "${portalInstanceName}";
                      • 115
                        return "${portalInstanceName}";
                      }
                    • 117
                      else {
                      • 118
                        return "localhost";
                      }
                  }
                • 27
                  if (!(isSet(portalURL))) {
                  • 28
                    var portalURL = JSONCompany.getPortalURL();
                    • 138
                      var portalURL = PropsUtil.get("portal.url");
                    • 140
                      return "${portalURL}";
                  }
                • 31
                  if (!(isSet(creatorEmailAddress))) {
                  • 32
                    if ("${authenticationMethod}" == "By Screen Name") {
                    • 33
                      if (!(isSet(userScreenName))) {
                      • 34
                        var creatorEmailAddress = "test";
                      }
                    • 36
                      else {
                      • 37
                        var creatorEmailAddress = "${userScreenName}";
                      }
                    }
                  • 40
                    else {
                    • 41
                      var creatorEmailAddress = "test@liferay.com";
                    }
                  }
                • 45
                  if (!(isSet(creatorPassword))) {
                  • 46
                    var creatorPassword = "test";
                  }
                • 49
                  var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                • 54
                  var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                • 56
                  return "${companyId}";
              • 229
                if (isSet(specificURL)) {
                • 230
                  var portalURL = "${specificURL}";
                }
              • 232
                else {
                • 233
                  var portalURL = JSONCompany.getPortalURL();
                  • 138
                    var portalURL = PropsUtil.get("portal.url");
                  • 140
                    return "${portalURL}";
                }
              • 236
                if (!(isSet(creatorEmailAddress))) {
                • 237
                  if (isSet(specificURL)) {
                  • 238
                    var creatorEmailAddress = "${userEmailAddress}";
                  }
                • 240
                  else {
                  • 241
                    var creatorEmailAddress = "test@liferay.com";
                  }
                }
              • 245
                if (!(isSet(creatorPassword))) {
                • 246
                  var creatorPassword = "test";
                }
              • 249
                var curl = ''' ${portalURL}/api/jsonws/user/get-user-by-email-address/company-id/${companyId}/email-address/${userEmailAddress} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
              • 254
                var userId = JSONCurlUtil.get("${curl}", "$['userId']");
              • 256
                return "${userId}";
            • 102
              return "${userId}";
          • 196
            JSONUserAPI._agreeToTermsAndAnswerReminderQuery( creatorEmailAddress = "${creatorEmailAddress}", creatorPassword = "${creatorPassword}", portalInstanceName = "${portalInstanceName}", specificURL = "${portalURL}", userEmailAddress = "${userEmailAddress}", userId = "${userId}");
            • 89
              Variables.assertDefined(parameterList = "${userId}");
              • 5
                if (!(isSet(parameterList))) {
                • 6
                  fail("Please define a parameter list in 'parameterList'");
                }
              • 9
                for (var parameter : list "${parameterList}") {
                • 13
                  var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                • 17
                  if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                  • 18
                    fail("Please set '${parameter}'");
                  }
                }
            • 91
              if (isSet(specificURL)) {
              • 92
                var portalURL = "${specificURL}";
              }
            • 94
              else {
              • 95
                var portalURL = JSONCompany.getPortalURL();
                • 138
                  var portalURL = PropsUtil.get("portal.url");
                • 140
                  return "${portalURL}";
              }
            • 98
              if (!(isSet(creatorEmailAddress))) {
              • 99
                if (isSet(specificURL)) {
                • 100
                  var creatorEmailAddress = "${userEmailAddress}";
                }
              • 102
                else {
                • 103
                  var creatorEmailAddress = "test@liferay.com";
                }
              }
            • 107
              if (!(isSet(creatorPassword))) {
              • 108
                var creatorPassword = "test";
              }
            • 111
              var curl = ''' ${portalURL}/api/jsonws/user/update-agreed-to-terms-of-use/user-id/${userId}/agreed-to-terms-of-use/true \ -u ${creatorEmailAddress}:${creatorPassword} ''';
            • 116
              com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
            • 118
              var curl = ''' ${portalURL}/api/jsonws/user/update-reminder-query/user-id/${userId}/question/what-is-your-father%27s-middle-name/answer/test \ -u ${creatorEmailAddress}:${creatorPassword} ''';
            • 123
              com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
        • 1841
          if (isSet(virtualHostsURL)) {
          • 1842
            Navigator.openSpecificURL(url = "${virtualHostsURL}/web/guest?SM_USER=${userEmailAddress}");
            • 316
              Open(locator1 = "${url}");
            • 318
              Alert.confirmSecurity(domain = "${domain}");
              • 16
                if (IsElementPresent(key_title = "Your connection is not private", locator1 = "Header#H1_TITLE")) {
                • 17
                  Click(locator1 = "Button#ADVANCED");
                • 19
                  if (isSet(domain)) {
                  • 20
                    AssertElementPresent( key_text = "Proceed to ${domain}", locator1 = "Link#ANY");
                  • 24
                    Click( key_text = "Proceed to ${domain} (unsafe)", locator1 = "Link#ANY");
                  }
                • 28
                  else {
                  • 29
                    AssertElementPresent( key_text = "Proceed to localhost", locator1 = "Link#ANY");
                  • 33
                    Click( key_text = "Proceed to localhost (unsafe)", locator1 = "Link#ANY");
                  }
                }
          }
        • 1844
          else {
          • 1845
            var baseURL = PropsUtil.get("portal.url");
          • 1847
            Navigator.openSpecificURL(url = "${baseURL}/web/guest?SM_USER=${userEmailAddress}");
            • 316
              Open(locator1 = "${url}");
            • 318
              Alert.confirmSecurity(domain = "${domain}");
              • 16
                if (IsElementPresent(key_title = "Your connection is not private", locator1 = "Header#H1_TITLE")) {
                • 17
                  Click(locator1 = "Button#ADVANCED");
                • 19
                  if (isSet(domain)) {
                  • 20
                    AssertElementPresent( key_text = "Proceed to ${domain}", locator1 = "Link#ANY");
                  • 24
                    Click( key_text = "Proceed to ${domain} (unsafe)", locator1 = "Link#ANY");
                  }
                • 28
                  else {
                  • 29
                    AssertElementPresent( key_text = "Proceed to localhost", locator1 = "Link#ANY");
                  • 33
                    Click( key_text = "Proceed to localhost (unsafe)", locator1 = "Link#ANY");
                  }
                }
          }
        • 1852
          User.resetPassword(newPassword = "${newPassword}");
          • 3
            var password = "test";
          • 4
            var userEmailAddress = "test@liferay.com";
          • 2285
            if (IsElementPresent.pauseIsElementPresent(locator1 = "TextInput#PASSWORD")) {
            • 2286
              if (isSet(newPassword)) {
              • 2287
                Type( locator1 = "TextInput#PASSWORD_1", value1 = "${newPassword}");
              • 2291
                Type( locator1 = "TextInput#PASSWORD_2", value1 = "${newPassword}");
              }
            • 2295
              else {
              • 2296
                Type( locator1 = "TextInput#PASSWORD_1", value1 = "test");
              • 2300
                Type( locator1 = "TextInput#PASSWORD_2", value1 = "test");
              }
            • 2305
              if (isSet(localizedSaveButton)) {
              • 2306
                Button.click(button = "${localizedSaveButton}");
                • 4
                  Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
              }
            • 2308
              else {
              • 2309
                Button.clickSubmitButton();
                • 130
                  Click(locator1 = "Button#SUBMIT");
                • 132
                  SelectFrameTop();
              • 2311
                AssertElementNotPresent(locator1 = "TextInput#ENTER_AGAIN");
              }
            }
        • 1854
          User.answerPasswordReminder();
          • 3
            var password = "test";
          • 4
            var userEmailAddress = "test@liferay.com";
          • 757
            if (IsElementPresent.pauseIsElementPresent(locator1 = "TextInput#REMINDER_QUERY")) {
            • 758
              Type( locator1 = "TextInput#REMINDER_QUERY", value1 = "test");
            • 762
              Click(locator1 = "Button#SUBMIT");
            }
        • 1856
          if (IsElementNotPresent(locator1 = "UserBar#USER_AVATAR_IMAGE")) {
          • 1857
            takeScreenshot();
          • 1859
            echo("URL login failed, falling back to UI login.");
          • 1861
            User.firstLoginUI( idpName = "${idpName}", password = "${password}", rememberMeChecked = "${rememberMeChecked}", specificURL = "${virtualHostsURL}", userEmailAddress = "${userEmailAddress}", userScreenName = "${userScreenName}");
            • 3
              var password = "test";
            • 4
              var userEmailAddress = "test@liferay.com";
            • 1876
              if (isSet(specificURL)) {
              • 1877
                Navigator.openSpecificURL( domain = "${domain}", url = "${specificURL}");
                • 316
                  Open(locator1 = "${url}");
                • 318
                  Alert.confirmSecurity(domain = "${domain}");
                  • 16
                    if (IsElementPresent(key_title = "Your connection is not private", locator1 = "Header#H1_TITLE")) {
                    • 17
                      Click(locator1 = "Button#ADVANCED");
                    • 19
                      if (isSet(domain)) {
                      • 20
                        AssertElementPresent( key_text = "Proceed to ${domain}", locator1 = "Link#ANY");
                      • 24
                        Click( key_text = "Proceed to ${domain} (unsafe)", locator1 = "Link#ANY");
                      }
                    • 28
                      else {
                      • 29
                        AssertElementPresent( key_text = "Proceed to localhost", locator1 = "Link#ANY");
                      • 33
                        Click( key_text = "Proceed to localhost (unsafe)", locator1 = "Link#ANY");
                      }
                    }
              }
            • 1881
              else {
              • 1882
                Navigator.openURL();
                • 372
                  WaitForSPARefresh();
                • 374
                  var baseURL = "${baseURL}";
                • 376
                  if (!(isSet(baseURL))) {
                  • 377
                    var baseURL = PropsUtil.get("portal.url");
                  }
                • 380
                  Open(locator1 = "${baseURL}/web/guest/home");
              }
            • 1885
              User._clickSignInLink( idpName = "${idpName}", localization = "${localization}", samlMultiIdPs = "${samlMultiIdPs}");
              • 3
                var password = "test";
              • 4
                var userEmailAddress = "test@liferay.com";
              • 13
                var localizedSignIn = User._getSignInText(localization = "${localization}");
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "test@liferay.com";
                • 42
                  if ("${localization}" == "JA") {
                  • 43
                    var localizedSignIn = "ログイン";
                  }
                • 45
                  else if ("${localization}" == "ZH") {
                  • 46
                    var localizedSignIn = "登录";
                  }
                • 48
                  else if ("${localization}" == "IT") {
                  • 49
                    var localizedSignIn = "Accedi";
                  }
                • 51
                  else if ("${localization}" == "ES") {
                  • 52
                    var localizedSignIn = "Acceder";
                  }
                • 54
                  else {
                  • 55
                    var localizedSignIn = "Sign In";
                  }
                • 58
                  return "${localizedSignIn}";
              • 15
                if (IsElementNotPresent(locator1 = "TextInput#EMAIL_ADDRESS")) {
                • 16
                  if (isSet(localization)) {
                  • 17
                    AssertClick( locator1 = "UserBar#USER_SIGN_IN", value1 = "${localizedSignIn}");
                  }
                • 21
                  else if (IsElementPresent(locator1 = "UserBar#USER_SIGN_IN")) {
                  • 22
                    AssertClick( locator1 = "UserBar#USER_SIGN_IN", value1 = "Sign In");
                  • 26
                    if ("${samlMultiIdPs}" == "true") {
                    • 27
                      Select( key_fieldLabel = "Identity Provider", locator1 = "Select#GENERIC_SELECT_FIELD", value1 = "${idpName}");
                    • 32
                      Button.click(button = "Sign In");
                      • 4
                        Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
                    }
                  }
                • 35
                  else if (IsElementPresent(key_text = "Sign In", locator1 = "Button#ANY")) {
                  • 36
                    Button.click(button = "Sign In");
                    • 4
                      Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
                  }
                }
            • 1890
              if ("${authenticationMethod}" == "By Screen Name") {
              • 1891
                Type( locator1 = "TextInput#SCREEN_NAME", value1 = "${userScreenName}");
              }
            • 1895
              else if ("${authenticationMethod}" == "By User ID") {
              • 1896
                Type.typePause( key_text = "ID", locator1 = "TextInput#ANY", value1 = "${userId}");
              }
            • 1901
              else {
              • 1902
                Type.typePause( locator1 = "TextInput#EMAIL_ADDRESS", value1 = "${userEmailAddress}");
              }
            • 1907
              Type.typePause( locator1 = "TextInput#PASSWORD", value1 = "${password}");
            • 1911
              if (isSet(rememberMeChecked) && ("${rememberMeChecked}" == "true")) {
              • 1912
                Check(locator1 = "Checkbox#REMEMBER_ME");
              }
            • 1915
              User._clickSignInButton(localization = "${localization}");
              • 3
                var password = "test";
              • 4
                var userEmailAddress = "test@liferay.com";
              • 7
                var localizedSignIn = User._getSignInText(localization = "${localization}");
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "test@liferay.com";
                • 42
                  if ("${localization}" == "JA") {
                  • 43
                    var localizedSignIn = "ログイン";
                  }
                • 45
                  else if ("${localization}" == "ZH") {
                  • 46
                    var localizedSignIn = "登录";
                  }
                • 48
                  else if ("${localization}" == "IT") {
                  • 49
                    var localizedSignIn = "Accedi";
                  }
                • 51
                  else if ("${localization}" == "ES") {
                  • 52
                    var localizedSignIn = "Acceder";
                  }
                • 54
                  else {
                  • 55
                    var localizedSignIn = "Sign In";
                  }
                • 58
                  return "${localizedSignIn}";
              • 9
                Button.click(button = "${localizedSignIn}");
                • 4
                  Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
            • 1917
              if (isSet(localizedAgree)) {
              • 1918
                User.acceptEndUserLicenseAgreementLocalized(localizedAgree = "${localizedAgree}");
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "test@liferay.com";
                • 78
                  var key_localizedAgree = "${localizedAgree}";
                • 80
                  if (IsElementPresent(locator1 = "Button#I_AGREE_LOCALIZED")) {
                  • 81
                    AssertClick( locator1 = "Button#I_AGREE_LOCALIZED", value1 = "${localizedAgree}");
                  • 85
                    AssertElementNotPresent(locator1 = "Button#I_AGREE_LOCALIZED");
                  }
              }
            • 1920
              else if (IsElementPresent(locator1 = "Button#I_AGREE")) {
              • 1921
                SignIn.agreeToTermsOfUse();
                • 3
                  var userEmailAddress = "test@liferay.com";
                • 4
                  var userPassword = "test";
                • 5
                  var userPasswordReminderAnswer = "test";
                • 38
                  AssertClick( locator1 = "Button#I_AGREE", value1 = "I Agree");
                • 42
                  AssertElementNotPresent(locator1 = "Button#I_AGREE");
              }
            • 1924
              if (IsElementPresent(locator1 = "TextInput#PASSWORD_2")) {
              • 1925
                User.resetPassword( localizedSaveButton = "${localizedSaveButton}", newPassword = "${newPassword}");
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "test@liferay.com";
                • 2285
                  if (IsElementPresent.pauseIsElementPresent(locator1 = "TextInput#PASSWORD")) {
                  • 2286
                    if (isSet(newPassword)) {
                    • 2287
                      Type( locator1 = "TextInput#PASSWORD_1", value1 = "${newPassword}");
                    • 2291
                      Type( locator1 = "TextInput#PASSWORD_2", value1 = "${newPassword}");
                    }
                  • 2295
                    else {
                    • 2296
                      Type( locator1 = "TextInput#PASSWORD_1", value1 = "test");
                    • 2300
                      Type( locator1 = "TextInput#PASSWORD_2", value1 = "test");
                    }
                  • 2305
                    if (isSet(localizedSaveButton)) {
                    • 2306
                      Button.click(button = "${localizedSaveButton}");
                      • 4
                        Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
                    }
                  • 2308
                    else {
                    • 2309
                      Button.clickSubmitButton();
                      • 130
                        Click(locator1 = "Button#SUBMIT");
                      • 132
                        SelectFrameTop();
                    • 2311
                      AssertElementNotPresent(locator1 = "TextInput#ENTER_AGAIN");
                    }
                  }
              }
            • 1930
              if (isSet(localizedAnswer)) {
              • 1931
                User.answerPasswordReminderLocalized( localizedAnswer = "${localizedAnswer}", localizedSaveButton = "${localizedSaveButton}");
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "test@liferay.com";
                • 767
                  var key_localizedAnswer = "${localizedAnswer}";
                • 769
                  if (IsElementPresent.pauseIsElementPresent(locator1 = "TextInput#ANSWER_LOCALIZED")) {
                  • 770
                    Type( locator1 = "TextInput#ANSWER_LOCALIZED", value1 = "test");
                  • 774
                    Button.click(button = "${localizedSaveButton}");
                    • 4
                      Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
                  • 776
                    Button.viewNotPresent(button = "${localizedSaveButton}");
                    • 160
                      AssertElementNotPresent( key_text = "${button}", locator1 = "Button#ANY");
                  }
              }
            • 1935
              else if (IsElementPresent(locator1 = "Select#QUESTION")) {
              • 1936
                SignIn.setPasswordReminder();
                • 3
                  var userEmailAddress = "test@liferay.com";
                • 4
                  var userPassword = "test";
                • 5
                  var userPasswordReminderAnswer = "test";
                • 47
                  Type( locator1 = "TextInput#ANSWER", value1 = "${userPasswordReminderAnswer}");
                • 51
                  Button.clickSave();
                  • 110
                    Button.click(button = "Save");
                    • 4
                      Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
                  • 112
                    WaitForLiferayEvent.initializeLiferayEventLog();
              }
            • 1939
              WaitForLiferayEvent.initializeLiferayEventLog();
          }
        • 1869
          else {
          • 1870
            WaitForLiferayEvent.initializeLiferayEventLog();
          }
      }
    • 580
      test RedirectToNewWorkflowPage {
      • 578
        @description = "Verify that the users are able to click on the + button and be directed to the New Workflow page"
      • 583
        ApplicationsMenu.gotoPortlet( category = "Workflow", panel = "Applications", portlet = "Process Builder");
        • 28
          ApplicationsMenuHelper.openApplicationsMenu();
          • 23
            if (IsElementNotPresent(locator1 = "ApplicationsMenu#APPLICATIONS_MENU")) {
            • 24
              Click(locator1 = "ApplicationsMenu#TOGGLE");
            }
          • 27
            WaitForElementPresent(locator1 = "ApplicationsMenu#APPLICATIONS_MENU");
        • 30
          ApplicationsMenu.gotoPanel(panel = "${panel}");
          • 17
            var key_panel = "${panel}";
          • 19
            Click(locator1 = "ApplicationsMenu#PANEL");
          • 21
            AssertElementPresent(locator1 = "ApplicationsMenu#ACTIVE_PANEL");
          • 23
            WaitForLiferayEvent.initializeLiferayEventLog();
        • 32
          ApplicationsMenuHelper.gotoPortlet( category = "${category}", portlet = "${portlet}");
          • 16
            Click( key_category = "${category}", key_portlet = "${portlet}", locator1 = "ApplicationsMenu#PORTLET");
      • 588
        Click(locator1 = "Button#PLUS");
      • 590
        AssertTextEquals( locator1 = "TextInput#TITLE", value1 = "New Workflow");
      }
    • 14
      tearDown {
      • 15
        var testPortalInstance = PropsUtil.get("test.portal.instance");
      • 17
        if ("${testPortalInstance}" == "true") {
        • 18
          PortalInstances.tearDownCP();
          • 110
            JSONUser.tearDownNonAdminUsers(authenticationMethod = "${authenticationMethod}");
            • 284
              var userIds = JSONUserAPI._getUserIds(authenticationMethod = "${authenticationMethod}");
              • 294
                var companyId = JSONCompany.getCompanyId(authenticationMethod = "${authenticationMethod}");
                • 23
                  if (!(isSet(portalInstanceName)) || ("${portalInstanceName}" == "liferay.com")) {
                  • 24
                    var portalInstanceName = JSONCompany.getPortalInstanceName();
                    • 107
                      var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                    • 108
                      var testPortalInstance = PropsUtil.get("test.portal.instance");
                    • 110
                      if (("${testPortalInstance}" == "true") && !(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}"))) {
                      • 111
                        var portalURL = JSONCompany.getPortalURL();
                        • 138
                          var portalURL = PropsUtil.get("portal.url");
                        • 140
                          return "${portalURL}";
                      • 113
                        var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                        • 144
                          Variables.assertDefined(parameterList = "${portalURL}");
                          • 5
                            if (!(isSet(parameterList))) {
                            • 6
                              fail("Please define a parameter list in 'parameterList'");
                            }
                          • 9
                            for (var parameter : list "${parameterList}") {
                            • 13
                              var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                            • 17
                              if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                              • 18
                                fail("Please set '${parameter}'");
                              }
                            }
                        • 146
                          var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                        • 148
                          var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                        • 150
                          return "${portalInstanceName}";
                      • 115
                        return "${portalInstanceName}";
                      }
                    • 117
                      else {
                      • 118
                        return "localhost";
                      }
                  }
                • 27
                  if (!(isSet(portalURL))) {
                  • 28
                    var portalURL = JSONCompany.getPortalURL();
                    • 138
                      var portalURL = PropsUtil.get("portal.url");
                    • 140
                      return "${portalURL}";
                  }
                • 31
                  if (!(isSet(creatorEmailAddress))) {
                  • 32
                    if ("${authenticationMethod}" == "By Screen Name") {
                    • 33
                      if (!(isSet(userScreenName))) {
                      • 34
                        var creatorEmailAddress = "test";
                      }
                    • 36
                      else {
                      • 37
                        var creatorEmailAddress = "${userScreenName}";
                      }
                    }
                  • 40
                    else {
                    • 41
                      var creatorEmailAddress = "test@liferay.com";
                    }
                  }
                • 45
                  if (!(isSet(creatorPassword))) {
                  • 46
                    var creatorPassword = "test";
                  }
                • 49
                  var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                • 54
                  var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                • 56
                  return "${companyId}";
              • 296
                if (isSet(specificURL)) {
                • 297
                  var portalURL = "${specificURL}";
                }
              • 299
                else {
                • 300
                  var portalURL = JSONCompany.getPortalURL();
                  • 138
                    var portalURL = PropsUtil.get("portal.url");
                  • 140
                    return "${portalURL}";
                }
              • 303
                if ("${authenticationMethod}" == "By Screen Name") {
                • 304
                  var userName = "test";
                }
              • 306
                else {
                • 307
                  var userName = "test@liferay.com";
                }
              • 310
                var curl = ''' ${portalURL}/api/jsonws/user/get-company-users \ -u ${userName}:test \ -d companyId=${companyId} \ -d \ -d ''';
              • 318
                var userIds = JSONCurlUtil.post("${curl}", "$..['userId']");
              • 320
                return "${userIds}";
            • 286
              for (var userId : list "${userIds}") {
              • 287
                var currentEmailAddress = JSONUserGetter.getEmailAddress( authenticationMethod = "${authenticationMethod}", userId = "${userId}");
                • 25
                  Variables.assertDefined(parameterList = "${userId}");
                  • 5
                    if (!(isSet(parameterList))) {
                    • 6
                      fail("Please define a parameter list in 'parameterList'");
                    }
                  • 9
                    for (var parameter : list "${parameterList}") {
                    • 13
                      var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                    • 17
                      if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                      • 18
                        fail("Please set '${parameter}'");
                      }
                    }
                • 27
                  var curl = JSONUserGetter._getUserByIdCurl( authenticationMethod = "${authenticationMethod}", userId = "${userId}");
                  • 4
                    Variables.assertDefined(parameterList = "${userId}");
                    • 5
                      if (!(isSet(parameterList))) {
                      • 6
                        fail("Please define a parameter list in 'parameterList'");
                      }
                    • 9
                      for (var parameter : list "${parameterList}") {
                      • 13
                        var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                      • 17
                        if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                        • 18
                          fail("Please set '${parameter}'");
                        }
                      }
                  • 6
                    var companyId = JSONCompany.getCompanyId(authenticationMethod = "${authenticationMethod}");
                    • 23
                      if (!(isSet(portalInstanceName)) || ("${portalInstanceName}" == "liferay.com")) {
                      • 24
                        var portalInstanceName = JSONCompany.getPortalInstanceName();
                        • 107
                          var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                        • 108
                          var testPortalInstance = PropsUtil.get("test.portal.instance");
                        • 110
                          if (("${testPortalInstance}" == "true") && !(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}"))) {
                          • 111
                            var portalURL = JSONCompany.getPortalURL();
                            • 138
                              var portalURL = PropsUtil.get("portal.url");
                            • 140
                              return "${portalURL}";
                          • 113
                            var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                            • 144
                              Variables.assertDefined(parameterList = "${portalURL}");
                              • 5
                                if (!(isSet(parameterList))) {
                                • 6
                                  fail("Please define a parameter list in 'parameterList'");
                                }
                              • 9
                                for (var parameter : list "${parameterList}") {
                                • 13
                                  var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                                • 17
                                  if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                                  • 18
                                    fail("Please set '${parameter}'");
                                  }
                                }
                            • 146
                              var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                            • 148
                              var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                            • 150
                              return "${portalInstanceName}";
                          • 115
                            return "${portalInstanceName}";
                          }
                        • 117
                          else {
                          • 118
                            return "localhost";
                          }
                      }
                    • 27
                      if (!(isSet(portalURL))) {
                      • 28
                        var portalURL = JSONCompany.getPortalURL();
                        • 138
                          var portalURL = PropsUtil.get("portal.url");
                        • 140
                          return "${portalURL}";
                      }
                    • 31
                      if (!(isSet(creatorEmailAddress))) {
                      • 32
                        if ("${authenticationMethod}" == "By Screen Name") {
                        • 33
                          if (!(isSet(userScreenName))) {
                          • 34
                            var creatorEmailAddress = "test";
                          }
                        • 36
                          else {
                          • 37
                            var creatorEmailAddress = "${userScreenName}";
                          }
                        }
                      • 40
                        else {
                        • 41
                          var creatorEmailAddress = "test@liferay.com";
                        }
                      }
                    • 45
                      if (!(isSet(creatorPassword))) {
                      • 46
                        var creatorPassword = "test";
                      }
                    • 49
                      var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                    • 54
                      var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                    • 56
                      return "${companyId}";
                  • 7
                    var portalURL = JSONCompany.getPortalURL();
                    • 138
                      var portalURL = PropsUtil.get("portal.url");
                    • 140
                      return "${portalURL}";
                  • 9
                    if ("${authenticationMethod}" == "By Screen Name") {
                    • 10
                      var userName = "test";
                    }
                  • 12
                    else {
                    • 13
                      var userName = "test@liferay.com";
                    }
                  • 16
                    var curl = ''' ${portalURL}/api/jsonws/user/get-user-by-id/user-id/${userId} \ -u ${userName}:test \ ''';
                  • 21
                    return "${curl}";
                • 31
                  var userEmailAddress = JSONCurlUtil.get("${curl}", "$['emailAddress']");
                • 33
                  return "${userEmailAddress}";
              • 291
                if ("${currentEmailAddress}" != "test@liferay.com") {
                • 292
                  JSONUser.deleteUserByUserId( authenticationMethod = "${authenticationMethod}", userId = "${userId}");
                  • 227
                    Variables.assertDefined(parameterList = "${userId}");
                    • 5
                      if (!(isSet(parameterList))) {
                      • 6
                        fail("Please define a parameter list in 'parameterList'");
                      }
                    • 9
                      for (var parameter : list "${parameterList}") {
                      • 13
                        var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                      • 17
                        if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                        • 18
                          fail("Please set '${parameter}'");
                        }
                      }
                  • 229
                    JSONUserAPI._deleteUser( authenticationMethod = "${authenticationMethod}", userId = "${userId}");
                    • 152
                      Variables.assertDefined(parameterList = "${userId}");
                      • 5
                        if (!(isSet(parameterList))) {
                        • 6
                          fail("Please define a parameter list in 'parameterList'");
                        }
                      • 9
                        for (var parameter : list "${parameterList}") {
                        • 13
                          var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                        • 17
                          if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                          • 18
                            fail("Please set '${parameter}'");
                          }
                        }
                    • 154
                      if (isSet(specificURL)) {
                      • 155
                        var portalURL = "${specificURL}";
                      }
                    • 157
                      else {
                      • 158
                        var portalURL = JSONCompany.getPortalURL();
                        • 138
                          var portalURL = PropsUtil.get("portal.url");
                        • 140
                          return "${portalURL}";
                      }
                    • 161
                      if ("${authenticationMethod}" == "By Screen Name") {
                      • 162
                        var userName = "test";
                      }
                    • 164
                      else {
                      • 165
                        var userName = "test@liferay.com";
                      }
                    • 168
                      var curl = ''' ${portalURL}/api/jsonws/user/delete-user \ -u ${userName}:test \ -d userId=${userId} ''';
                    • 174
                      com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
                }
              }
          • 112
            HeadlessPortalInstanceAPI.cleanAllPortalInstances(authenticationMethod = "${authenticationMethod}");
            • 106
              var portalInstanceJson = HeadlessPortalInstanceAPI._getPortalInstances(authenticationMethod = "${authenticationMethod}");
              • 5
                var portalURL = JSONCompany.getDefaultPortalURL();
                • 97
                  var portalURL = PropsUtil.get("default.portal.url");
                • 99
                  if (!(contains("${portalURL}", "http"))) {
                  • 100
                    var portalURL = "http://${portalURL}";
                  }
                • 103
                  return "${portalURL}";
              • 7
                if ("${authenticationMethod}" == "By Screen Name") {
                • 8
                  var userName = "test";
                }
              • 10
                else {
                • 11
                  var userName = "test@liferay.com";
                }
              • 14
                var curl = ''' ${portalURL}/o/headless-portal-instances/v1.0/portal-instances \ -u ${userName}:test \ -H Content-Type: application/json ''';
              • 20
                var json = JSONCurlUtil.get("${curl}");
              • 22
                return "${json}";
            • 108
              var portalInstanceIds = JSONUtil.getWithJSONPath("${portalInstanceJson}", "$.items..portalInstanceId");
            • 110
              for (var portalInstanceId : list "${portalInstanceIds}") {
              • 111
                if ("${portalInstanceId}" != "liferay.com") {
                • 112
                  HeadlessPortalInstanceAPI.deletePortalInstance( authenticationMethod = "${authenticationMethod}", portalInstanceId = "${portalInstanceId}");
                  • 121
                    Variables.assertDefined(parameterList = "${portalInstanceId}");
                    • 5
                      if (!(isSet(parameterList))) {
                      • 6
                        fail("Please define a parameter list in 'parameterList'");
                      }
                    • 9
                      for (var parameter : list "${parameterList}") {
                      • 13
                        var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                      • 17
                        if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                        • 18
                          fail("Please set '${parameter}'");
                        }
                      }
                  • 123
                    var portalURL = JSONCompany.getDefaultPortalURL();
                    • 97
                      var portalURL = PropsUtil.get("default.portal.url");
                    • 99
                      if (!(contains("${portalURL}", "http"))) {
                      • 100
                        var portalURL = "http://${portalURL}";
                      }
                    • 103
                      return "${portalURL}";
                  • 124
                    var portalInstanceId = StringUtil.replace("${portalInstanceId}", " ", "%20");
                  • 126
                    if ("${authenticationMethod}" == "By Screen Name") {
                    • 127
                      var userName = "test";
                    }
                  • 129
                    else {
                    • 130
                      var userName = "test@liferay.com";
                    }
                  • 133
                    var curl = ''' ${portalURL}/o/headless-portal-instances/v1.0/portal-instances/${portalInstanceId} \ -u ${userName}:test \ -H Content-Type: application/json ''';
                  • 139
                    JSONCurlUtil.delete("${curl}");
                }
              }
        }
      • 20
        else {
        • 21
          BlogsEntry.tearDownCP();
          • 3
            var entryAuthorFullName = "Test Test";
          • 919
            Navigator.openURL();
            • 372
              WaitForSPARefresh();
            • 374
              var baseURL = "${baseURL}";
            • 376
              if (!(isSet(baseURL))) {
              • 377
                var baseURL = PropsUtil.get("portal.url");
              }
            • 380
              Open(locator1 = "${baseURL}/web/guest/home");
          • 921
            ProductMenu.gotoPortlet( category = "Content & Data", portlet = "Blogs");
            • 85
              if (IsElementNotPresent(locator1 = "ProductMenu#TOGGLE")) {
              • 86
                ApplicationsMenu.gotoSite(site = "${site}");
                • 39
                  ApplicationsMenuHelper.openApplicationsMenu();
                  • 23
                    if (IsElementNotPresent(locator1 = "ApplicationsMenu#APPLICATIONS_MENU")) {
                    • 24
                      Click(locator1 = "ApplicationsMenu#TOGGLE");
                    }
                  • 27
                    WaitForElementPresent(locator1 = "ApplicationsMenu#APPLICATIONS_MENU");
                • 41
                  Click( key_site = "${site}", locator1 = "ApplicationsMenu#SITE_LINK");
              }
            • 89
              ProductMenuHelper.openProductMenu();
              • 47
                if ((IsElementNotPresent(locator1 = "ProductMenu#PRODUCT_MENU_OPENED")) && (IsElementPresent(locator1 = "ProductMenu#PRODUCT_MENU_CLOSED"))) {
                • 48
                  Click(locator1 = "ProductMenu#TOGGLE");
                }
              • 51
                AssertElementPresent(locator1 = "ProductMenu#PRODUCT_MENU_OPENED");
              • 53
                AssertElementNotPresent(locator1 = "ProductMenu#PRODUCT_MENU_CLOSED");
              • 55
                if (IsElementPresent(key_text = "Back to Menu", locator1 = "Button#ANY")) {
                • 56
                  Click( key_text = "Back to Menu", locator1 = "Button#ANY");
                }
              • 61
                AssertVisible(locator1 = "ProductMenu#PRODUCT_MENU_BODY");
            • 91
              ProductMenuHelper.expandCategory(category = "${category}");
              • 12
                var key_category = "${category}";
              • 14
                if (IsElementPresent(locator1 = "ProductMenu#CATEGORY_COLLAPSED")) {
                • 15
                  Click(locator1 = "ProductMenu#CATEGORY_COLLAPSED");
                }
              • 18
                AssertElementPresent(locator1 = "ProductMenu#CATEGORY_EXPANDED");
            • 93
              ProductMenuHelper.gotoPortlet(portlet = "${portlet}");
              • 40
                AssertClick.assertPartialTextClickAt( key_portlet = "${portlet}", locator1 = "ProductMenu#PORTLET", value1 = "${portlet}");
          • 925
            if (IsVisible(locator1 = "Message#EMPTY_INFO", value1 = "No entries were found.")) {
            • 926
              Blogs.viewNoEntryCP();
              • 743
                AssertTextEquals( locator1 = "Message#EMPTY_INFO", value1 = "No entries were found.");
            }
          • 928
            else {
            • 929
              PortletEntry.selectAll();
              • 175
                if (IsNotChecked.isNotCheckedNotVisible(locator1 = "Checkbox#LEXICON_SELECT_ALL_INPUT")) {
                • 176
                  Click(locator1 = "Checkbox#LEXICON_SELECT_ALL_CONTAINER");
                }
              • 178
                else if (IsNotChecked(locator1 = "Checkbox#SELECT_ALL")) {
                • 179
                  Click(locator1 = "Checkbox#SELECT_ALL");
                }
              • 182
                AssertChecked.assertCheckedNotVisible(locator1 = "Checkbox#LEXICON_SELECT_ALL_INPUT");
            • 931
              Click(locator1 = "Icon#MOVE_TO_RECYCLE_BIN");
            • 933
              VerifyElementPresent(locator1 = "Message#SUCCESS");
            }
          • 936
            JSONRecycleBin.emptyRecycleBin();
            • 5
              var portalURL = JSONCompany.getPortalURL();
              • 138
                var portalURL = PropsUtil.get("portal.url");
              • 140
                return "${portalURL}";
            • 7
              if (!(isSet(groupName))) {
              • 8
                var groupName = "Guest";
              }
            • 11
              if (!(isSet(site))) {
              • 12
                var site = "true";
              }
            • 15
              if (!(isSet(userEmailAddress))) {
              • 16
                var userEmailAddress = "test@liferay.com";
              }
            • 19
              if (!(isSet(userPassword))) {
              • 20
                var userPassword = "test";
              }
            • 23
              var groupId = JSONGroupAPI._getGroupIdByName( grandParentGroupName = "${grandParentGroupName}", groupName = "${groupName}", parentGroupName = "${parentGroupName}", site = "${site}");
              • 245
                Variables.assertDefined(parameterList = "${groupName},${site}");
                • 5
                  if (!(isSet(parameterList))) {
                  • 6
                    fail("Please define a parameter list in 'parameterList'");
                  }
                • 9
                  for (var parameter : list "${parameterList}") {
                  • 13
                    var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                  • 17
                    if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                    • 18
                      fail("Please set '${parameter}'");
                    }
                  }
              • 247
                if (!(isSet(portalURL))) {
                • 248
                  var portalURL = JSONCompany.getPortalURL();
                  • 138
                    var portalURL = PropsUtil.get("portal.url");
                  • 140
                    return "${portalURL}";
                }
              • 251
                var companyId = JSONCompany.getCompanyId(portalURL = "${portalURL}");
                • 23
                  if (!(isSet(portalInstanceName)) || ("${portalInstanceName}" == "liferay.com")) {
                  • 24
                    var portalInstanceName = JSONCompany.getPortalInstanceName();
                    • 107
                      var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                    • 108
                      var testPortalInstance = PropsUtil.get("test.portal.instance");
                    • 110
                      if (("${testPortalInstance}" == "true") && !(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}"))) {
                      • 111
                        var portalURL = JSONCompany.getPortalURL();
                        • 138
                          var portalURL = PropsUtil.get("portal.url");
                        • 140
                          return "${portalURL}";
                      • 113
                        var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                        • 144
                          Variables.assertDefined(parameterList = "${portalURL}");
                          • 5
                            if (!(isSet(parameterList))) {
                            • 6
                              fail("Please define a parameter list in 'parameterList'");
                            }
                          • 9
                            for (var parameter : list "${parameterList}") {
                            • 13
                              var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                            • 17
                              if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                              • 18
                                fail("Please set '${parameter}'");
                              }
                            }
                        • 146
                          var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                        • 148
                          var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                        • 150
                          return "${portalInstanceName}";
                      • 115
                        return "${portalInstanceName}";
                      }
                    • 117
                      else {
                      • 118
                        return "localhost";
                      }
                  }
                • 27
                  if (!(isSet(portalURL))) {
                  • 28
                    var portalURL = JSONCompany.getPortalURL();
                    • 138
                      var portalURL = PropsUtil.get("portal.url");
                    • 140
                      return "${portalURL}";
                  }
                • 31
                  if (!(isSet(creatorEmailAddress))) {
                  • 32
                    if ("${authenticationMethod}" == "By Screen Name") {
                    • 33
                      if (!(isSet(userScreenName))) {
                      • 34
                        var creatorEmailAddress = "test";
                      }
                    • 36
                      else {
                      • 37
                        var creatorEmailAddress = "${userScreenName}";
                      }
                    }
                  • 40
                    else {
                    • 41
                      var creatorEmailAddress = "test@liferay.com";
                    }
                  }
                • 45
                  if (!(isSet(creatorPassword))) {
                  • 46
                    var creatorPassword = "test";
                  }
                • 49
                  var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                • 54
                  var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                • 56
                  return "${companyId}";
              • 252
                var parentGroupId = JSONGroupSetter.setParentGroupId( grandParentGroupName = "${grandParentGroupName}", parentGroupName = "${parentGroupName}");
                • 83
                  if (isSet(parentGroupName)) {
                  • 84
                    var parentGroupId = JSONGroupAPI._getParentGroupIdByName( grandParentGroupName = "${grandParentGroupName}", groupName = "${parentGroupName}");
                    • 365
                      Variables.assertDefined(parameterList = "${groupName}");
                      • 5
                        if (!(isSet(parameterList))) {
                        • 6
                          fail("Please define a parameter list in 'parameterList'");
                        }
                      • 9
                        for (var parameter : list "${parameterList}") {
                        • 13
                          var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                        • 17
                          if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                          • 18
                            fail("Please set '${parameter}'");
                          }
                        }
                    • 367
                      var companyId = JSONCompany.getCompanyId();
                      • 23
                        if (!(isSet(portalInstanceName)) || ("${portalInstanceName}" == "liferay.com")) {
                        • 24
                          var portalInstanceName = JSONCompany.getPortalInstanceName();
                          • 107
                            var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                          • 108
                            var testPortalInstance = PropsUtil.get("test.portal.instance");
                          • 110
                            if (("${testPortalInstance}" == "true") && !(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}"))) {
                            • 111
                              var portalURL = JSONCompany.getPortalURL();
                              • 138
                                var portalURL = PropsUtil.get("portal.url");
                              • 140
                                return "${portalURL}";
                            • 113
                              var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                              • 144
                                Variables.assertDefined(parameterList = "${portalURL}");
                                • 5
                                  if (!(isSet(parameterList))) {
                                  • 6
                                    fail("Please define a parameter list in 'parameterList'");
                                  }
                                • 9
                                  for (var parameter : list "${parameterList}") {
                                  • 13
                                    var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                                  • 17
                                    if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                                    • 18
                                      fail("Please set '${parameter}'");
                                    }
                                  }
                              • 146
                                var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                              • 148
                                var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                              • 150
                                return "${portalInstanceName}";
                            • 115
                              return "${portalInstanceName}";
                            }
                          • 117
                            else {
                            • 118
                              return "localhost";
                            }
                        }
                      • 27
                        if (!(isSet(portalURL))) {
                        • 28
                          var portalURL = JSONCompany.getPortalURL();
                          • 138
                            var portalURL = PropsUtil.get("portal.url");
                          • 140
                            return "${portalURL}";
                        }
                      • 31
                        if (!(isSet(creatorEmailAddress))) {
                        • 32
                          if ("${authenticationMethod}" == "By Screen Name") {
                          • 33
                            if (!(isSet(userScreenName))) {
                            • 34
                              var creatorEmailAddress = "test";
                            }
                          • 36
                            else {
                            • 37
                              var creatorEmailAddress = "${userScreenName}";
                            }
                          }
                        • 40
                          else {
                          • 41
                            var creatorEmailAddress = "test@liferay.com";
                          }
                        }
                      • 45
                        if (!(isSet(creatorPassword))) {
                        • 46
                          var creatorPassword = "test";
                        }
                      • 49
                        var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                      • 54
                        var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                      • 56
                        return "${companyId}";
                    • 368
                      var grandParentGroupId = JSONGroupSetter.setGrandParentGroupId(grandParentGroupName = "${grandParentGroupName}");
                      • 15
                        if (isSet(grandParentGroupName)) {
                        • 16
                          if (!(isSet(site))) {
                          • 17
                            var site = "true";
                          }
                        • 20
                          var grandParentGroupId = JSONGroupAPI._getGrandParentGroupIdByName( groupName = "${grandParentGroupName}", site = "${site}");
                          • 193
                            Variables.assertDefined(parameterList = "${groupName}");
                            • 5
                              if (!(isSet(parameterList))) {
                              • 6
                                fail("Please define a parameter list in 'parameterList'");
                              }
                            • 9
                              for (var parameter : list "${parameterList}") {
                              • 13
                                var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                              • 17
                                if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                                • 18
                                  fail("Please set '${parameter}'");
                                }
                              }
                          • 195
                            var companyId = JSONCompany.getCompanyId();
                            • 23
                              if (!(isSet(portalInstanceName)) || ("${portalInstanceName}" == "liferay.com")) {
                              • 24
                                var portalInstanceName = JSONCompany.getPortalInstanceName();
                                • 107
                                  var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                                • 108
                                  var testPortalInstance = PropsUtil.get("test.portal.instance");
                                • 110
                                  if (("${testPortalInstance}" == "true") && !(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}"))) {
                                  • 111
                                    var portalURL = JSONCompany.getPortalURL();
                                    • 138
                                      var portalURL = PropsUtil.get("portal.url");
                                    • 140
                                      return "${portalURL}";
                                  • 113
                                    var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                                    • 144
                                      Variables.assertDefined(parameterList = "${portalURL}");
                                      • 5
                                        if (!(isSet(parameterList))) {
                                        • 6
                                          fail("Please define a parameter list in 'parameterList'");
                                        }
                                      • 9
                                        for (var parameter : list "${parameterList}") {
                                        • 13
                                          var undefined = StringUtil.matches("${parameter}", "\$\{[^\$\{\s]*\}");
                                        • 17
                                          if (("${undefined}" == "true") && ("${parameter}" != "false")) {
                                          • 18
                                            fail("Please set '${parameter}'");
                                          }
                                        }
                                    • 146
                                      var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                                    • 148
                                      var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                                    • 150
                                      return "${portalInstanceName}";
                                  • 115
                                    return "${portalInstanceName}";
                                  }
                                • 117
                                  else {
                                  • 118
                                    return "localhost";
                                  }
                              }
                            • 27
                              if (!(isSet(portalURL))) {
                              • 28
                                var portalURL = JSONCompany.getPortalURL();
                                • 138
                                  var portalURL = PropsUtil.get("portal.url");
                                • 140
                                  return "${portalURL}";
                              }
                            • 31
                              if (!(isSet(creatorEmailAddress))) {
                              • 32
                                if ("${authenticationMethod}" == "By Screen Name") {
                                • 33
                                  if (!(isSet(userScreenName))) {
                                  • 34
                                    var creatorEmailAddress = "test";
                                  }
                                • 36
                                  else {
                                  • 37
                                    var creatorEmailAddress = "${userScreenName}";
                                  }
                                }
                              • 40
                                else {
                                • 41
                                  var creatorEmailAddress = "test@liferay.com";
                                }
                              }
                            • 45
                              if (!(isSet(creatorPassword))) {
                              • 46
                                var creatorPassword = "test";
                              }
                            • 49
                              var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                            • 54
                              var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                            • 56
                              return "${companyId}";
                          • 196
                            var portalURL = JSONCompany.getPortalURL();
                            • 138
                              var portalURL = PropsUtil.get("portal.url");
                            • 140
                              return "${portalURL}";
                          • 198
                            if (!(isSet(site))) {
                            • 199
                              var site = "true";
                            }
                          • 202
                            var curl = ''' ${portalURL}/api/jsonws/group/get-groups \ -u test@liferay.com:test \ -d companyId=${companyId} \ -d parentGroupId=0 \ -d site=${site} ''';
                          • 210
                            var groupId = JSONCurlUtil.post("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                          • 212
                            if ("${groupId}" == "") {
                            • 213
                              fail("FAIL. Cannot find group.");
                            }
                          • 216
                            return "${groupId}";
                        }
                      • 24
                        else {
                        • 25
                          var grandParentGroupId = "0";
                        }
                      • 28
                        return "${grandParentGroupId}";
                    • 369
                      var portalURL = JSONCompany.getPortalURL();
                      • 138
                        var portalURL = PropsUtil.get("portal.url");
                      • 140
                        return "${portalURL}";
                    • 371
                      var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${grandParentGroupId}/site/true \ -u test@liferay.com:test ''';
                    • 376
                      var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                    • 378
                      if ("${groupId}" == "") {
                      • 379
                        fail("FAIL. Cannot find group.");
                      }
                    • 382
                      return "${groupId}";
                  }
                • 88
                  else {
                  • 89
                    var parentGroupId = "0";
                  }
                • 92
                  return "${parentGroupId}";
              • 256
                var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${parentGroupId}/site/${site} \ -u test@liferay.com:test ''';
              • 261
                var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
              • 263
                if ("${groupId}" == "") {
                • 264
                  fail("FAIL. Cannot find group.");
                }
              • 267
                echo("## * GroupId: ${groupId}");
              • 269
                return "${groupId}";
            • 29
              var curl = ''' ${portalURL}/api/jsonws/trash.trashentry/delete-entries \ -u ${userEmailAddress}:${userPassword} \ -d groupId=${groupId} ''';
            • 35
              JSONCurlUtil.post("${curl}");
        • 23
          Workflow.tearDownPortalWorkflow();
          • 873
            ApplicationsMenu.gotoPortlet( category = "Workflow", panel = "Applications", portlet = "Process Builder");
            • 28
              ApplicationsMenuHelper.openApplicationsMenu();
              • 23
                if (IsElementNotPresent(locator1 = "ApplicationsMenu#APPLICATIONS_MENU")) {
                • 24
                  Click(locator1 = "ApplicationsMenu#TOGGLE");
                }
              • 27
                WaitForElementPresent(locator1 = "ApplicationsMenu#APPLICATIONS_MENU");
            • 30
              ApplicationsMenu.gotoPanel(panel = "${panel}");
              • 17
                var key_panel = "${panel}";
              • 19
                Click(locator1 = "ApplicationsMenu#PANEL");
              • 21
                AssertElementPresent(locator1 = "ApplicationsMenu#ACTIVE_PANEL");
              • 23
                WaitForLiferayEvent.initializeLiferayEventLog();
            • 32
              ApplicationsMenuHelper.gotoPortlet( category = "${category}", portlet = "${portlet}");
              • 16
                Click( key_category = "${category}", key_portlet = "${portlet}", locator1 = "ApplicationsMenu#PORTLET");
          • 878
            Navigator.gotoNavItem(navItem = "Schemes");
            • 93
              var key_navItem = "${navItem}";
            • 95
              AssertClick( locator1 = "NavBar#NAV_ITEM_LINK", value1 = "${navItem}");
            • 99
              AssertElementPresent(locator1 = "NavBar#ACTIVE_NAV_ITEM_LINK");
          • 880
            Workflow._tearDownWorkflow();
            • 10
              var noWorkflow = "No Workflow";
            • 12
              if (IsElementPresent(locator1 = "Icon#ROW_VERTICAL_ELLIPSIS")) {
              • 13
                LexiconEntry.gotoEntryMenuItem( menuItem = "Edit", rowEntry = "Knowledge Base Article");
                • 112
                  LexiconEntry.openEntryMenu(rowEntry = "${rowEntry}");
                  • 158
                    var browserType = PropsUtil.get("browser.type");
                  • 160
                    if ("${browserType}" == "safari") {
                    • 161
                      Click.waitForMenuToggleJSClick( key_rowEntry = "${rowEntry}", locator1 = "Icon#ROW_VERTICAL_ELLIPSIS_SAFARI");
                    }
                  • 165
                    else {
                    • 166
                      Click.waitForMenuToggleJSClick( key_rowEntry = "${rowEntry}", locator1 = "Icon#ROW_VERTICAL_ELLIPSIS");
                    }
                • 114
                  MenuItem.click(menuItem = "${menuItem}");
                  • 4
                    Click( key_menuItem = "${menuItem}", locator1 = "MenuItem#ANY_MENU_ITEM");
              • 17
                Select( key_workflowResourceValue = "Knowledge Base Article", locator1 = "WorkflowConfiguration#RESOURCE_TABLE_SELECT", value1 = "${noWorkflow}");
              • 22
                Button.clickSave();
                • 110
                  Button.click(button = "Save");
                  • 4
                    Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
                • 112
                  WaitForLiferayEvent.initializeLiferayEventLog();
              }
            • 25
              for (var workflowResourceValue : list "Blogs Entry,Calendar Event,Comment,Content Page,Knowledge Base Article,Message Boards Message,Page Revision,Web Content Article,Wiki Page") {
              • 26
                AssertClick.pauseAssertTextClickAt( key_rowEntry = "${workflowResourceValue}", locator1 = "Button#EDIT_ROW", value1 = "Edit");
              • 31
                var key_workflowResourceValue = "${workflowResourceValue}";
              • 33
                Select( locator1 = "WorkflowConfiguration#RESOURCE_TABLE_SELECT", value1 = "${noWorkflow}");
              • 37
                AssertClick( locator1 = "WorkflowConfiguration#RESOURCE_TABLE_SAVE", value1 = "Save");
              }
          • 882
            LexiconEntry.gotoEntryMenuItem( menuItem = "Edit", rowEntry = "User");
            • 112
              LexiconEntry.openEntryMenu(rowEntry = "${rowEntry}");
              • 158
                var browserType = PropsUtil.get("browser.type");
              • 160
                if ("${browserType}" == "safari") {
                • 161
                  Click.waitForMenuToggleJSClick( key_rowEntry = "${rowEntry}", locator1 = "Icon#ROW_VERTICAL_ELLIPSIS_SAFARI");
                }
              • 165
                else {
                • 166
                  Click.waitForMenuToggleJSClick( key_rowEntry = "${rowEntry}", locator1 = "Icon#ROW_VERTICAL_ELLIPSIS");
                }
            • 114
              MenuItem.click(menuItem = "${menuItem}");
              • 4
                Click( key_menuItem = "${menuItem}", locator1 = "MenuItem#ANY_MENU_ITEM");
          • 886
            Select( key_workflowResourceValue = "User", locator1 = "WorkflowConfiguration#RESOURCE_TABLE_SELECT", value1 = "No Workflow");
          • 891
            Button.clickSave();
            • 110
              Button.click(button = "Save");
              • 4
                Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
            • 112
              WaitForLiferayEvent.initializeLiferayEventLog();
        • 25
          Workflow.tearDownWorkflowDefinitions();
          • 935
            ApplicationsMenu.gotoPortlet( category = "Workflow", panel = "Applications", portlet = "Process Builder");
            • 28
              ApplicationsMenuHelper.openApplicationsMenu();
              • 23
                if (IsElementNotPresent(locator1 = "ApplicationsMenu#APPLICATIONS_MENU")) {
                • 24
                  Click(locator1 = "ApplicationsMenu#TOGGLE");
                }
              • 27
                WaitForElementPresent(locator1 = "ApplicationsMenu#APPLICATIONS_MENU");
            • 30
              ApplicationsMenu.gotoPanel(panel = "${panel}");
              • 17
                var key_panel = "${panel}";
              • 19
                Click(locator1 = "ApplicationsMenu#PANEL");
              • 21
                AssertElementPresent(locator1 = "ApplicationsMenu#ACTIVE_PANEL");
              • 23
                WaitForLiferayEvent.initializeLiferayEventLog();
            • 32
              ApplicationsMenuHelper.gotoPortlet( category = "${category}", portlet = "${portlet}");
              • 16
                Click( key_category = "${category}", key_portlet = "${portlet}", locator1 = "ApplicationsMenu#PORTLET");
          • 940
            while (IsElementPresent(locator1 = "WorkflowDefinition#DEFINITION_TABLE_EXTRA")) {
            • 941
              if (IsElementPresent(locator1 = "WorkflowDefinition#DEFINITION_TABLE_DEFINITION_EXTRA_ELLIPSIS")) {
              • 942
                Workflow.unpublishWorkflowDefinitionExtra();
                • 960
                  Click(locator1 = "WorkflowDefinition#DEFINITION_TABLE_DEFINITION_EXTRA_ELLIPSIS");
                • 962
                  MenuItem.clickNoError(menuItem = "Unpublish");
                  • 10
                    ClickNoError( key_menuItem = "${menuItem}", locator1 = "MenuItem#ANY_MENU_ITEM");
                • 964
                  Alert.viewSuccessMessage();
                  • 130
                    VerifyElementPresent(locator1 = "Message#SUCCESS_DISMISSIBLE");
              }
            • 945
              Workflow.deleteWorkflowDefinitionExtra();
              • 529
                Click(locator1 = "WorkflowDefinition#DEFINITION_TABLE_DEFINITION_UNPUBLISHED_EXTRA_ELLIPSIS");
              • 531
                MenuItem.clickNoError(menuItem = "Delete");
                • 10
                  ClickNoError( key_menuItem = "${menuItem}", locator1 = "MenuItem#ANY_MENU_ITEM");
              • 533
                AssertTextEquals( locator1 = "IFrame#DIALOG_BOX", value1 = "Delete workflow?");
              • 537
                AssertTextEquals( locator1 = "WorkflowDefinition#DIALOG_BOX_BODY", value1 = "A deleted workflow cannot be recovered.");
              • 541
                Button.clickDelete();
                • 60
                  Button.click(button = "Delete");
                  • 4
                    Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
              • 543
                Alert.viewSuccessMessage();
                • 130
                  VerifyElementPresent(locator1 = "Message#SUCCESS_DISMISSIBLE");
            }
        }
      }