LocalFile.ContentPagesWithWorkflow#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":"20099","contactId":"20129","createDate":1638353082504,"ctCollectionId":"0","defaultUser":false,"emailAddress":"[email protected]","emailAddressVerified":true,"externalReferenceCode":"","facebookId":"0","failedLoginAttempts":0,"firstName":"Test","googleUserId":"","graceLoginCount":0,"greeting":"Welcome Test Test!","jobTitle":"","languageId":"en_US","lastFailedLoginDate":null,"lastLoginDate":1638357216679,"lastLoginIP":"127.0.0.1","lastName":"Test","ldapServerId":"-1","lockout":false,"lockoutDate":null,"loginDate":1638357252341,"loginIP":"127.0.0.1","middleName":"","modifiedDate":1638357367924,"mvccVersion":"48","openId":"","portraitId":"0","reminderQueryAnswer":"test","reminderQueryQuestion":"what-is-your-father's-middle-name","screenName":"test","status":0,"timeZoneId":"UTC","userId":"20127","uuid":"5fad0dc5-0b72-d730-0534-1bcbaa8b8df2"}Finished executing commands.
  • Running post with parametersArg: ${curl}Return: {"agreedToTermsOfUse":true,"comments":"","companyId":"20099","contactId":"20129","createDate":1638353082504,"ctCollectionId":"0","defaultUser":false,"emailAddress":"[email protected]","emailAddressVerified":true,"externalReferenceCode":"","facebookId":"0","failedLoginAttempts":0,"firstName":"Test","googleUserId":"","graceLoginCount":0,"greeting":"Welcome Test Test!","jobTitle":"","languageId":"en_US","lastFailedLoginDate":null,"lastLoginDate":1638357216679,"lastLoginIP":"127.0.0.1","lastName":"Test","ldapServerId":"-1","lockout":false,"lockoutDate":null,"loginDate":1638357252341,"loginIP":"127.0.0.1","middleName":"","modifiedDate":1638357368192,"mvccVersion":"49","openId":"","portraitId":"0","reminderQueryAnswer":"test","reminderQueryQuestion":"what-is-your-father's-middle-name","screenName":"test","status":0,"timeZoneId":"UTC","userId":"20127","uuid":"5fad0dc5-0b72-d730-0534-1bcbaa8b8df2"}Finished executing commands.
  • Running Open with locator1http://localhost:8080/web/[email protected]
    • 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/[email protected]
    • Running assertLiferayErrors
    • Running selectWindow with parameters
    • Running selectFrame with parametersrelative=top
    • Running open with parametershttp://localhost:8080/web/[email protected]
    • 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/[email protected]
    • 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/[email protected]
    • 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')]]/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')]]/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')]]/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 Pause with locator13000
    • 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 parameters3000
    • Running assertLiferayErrors
    • Running pause with parameters3000
  • 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, }; }
  • Running post with parametersArg: ${curl}Return: {"active":true,"classNameId":"20003","classPK":"40669","companyId":"20099","creatorUserId":"20127","ctCollectionId":"0","description":"","descriptionCurrentValue":"","descriptiveName":"Test Site Name","friendlyURL":"\/test-site-name","groupId":"40669","groupKey":"Test Site Name","inheritContent":false,"liveGroupId":"0","manualMembership":true,"membershipRestriction":0,"mvccVersion":"0","name":"<?xml version='1.0' encoding='UTF-8'?><root available-locales=\"en_US\" default-locale=\"en_US\"><Name language-id=\"en_US\">Test Site Name<\/Name><\/root>","nameCurrentValue":"Test Site Name","parentGroupId":"0","remoteStagingGroupCount":0,"site":true,"treePath":"\/40669\/","type":1,"uuid":"7e0fea7f-be32-9c38-8d7f-e3021a95a5e3"}Finished executing commands.
  • Running post with parametersArg: ${curl}Return: {"agreedToTermsOfUse":false,"comments":"","companyId":"20099","contactId":"40672","createDate":1638357376357,"ctCollectionId":"0","defaultUser":false,"emailAddress":"[email protected]","emailAddressVerified":false,"externalReferenceCode":"","facebookId":"0","failedLoginAttempts":0,"firstName":"userfn","googleUserId":"","graceLoginCount":0,"greeting":"Welcome userfn userln!","jobTitle":"","languageId":"en_US","lastFailedLoginDate":null,"lastLoginDate":null,"lastLoginIP":"","lastName":"userln","ldapServerId":"-1","lockout":false,"lockoutDate":null,"loginDate":null,"loginIP":"","middleName":"","modifiedDate":1638357376362,"mvccVersion":"1","openId":"","portraitId":"0","reminderQueryAnswer":"","reminderQueryQuestion":"","screenName":"usersn","status":0,"timeZoneId":"UTC","userId":"40671","uuid":"9b67300c-693b-e0c3-c011-fe7a2fe0d0d8"}Finished executing commands.
  • Running post with parametersArg: ${curl}Return: {"allowDictionaryWords":true,"changeRequired":false,"changeable":true,"checkSyntax":false,"companyId":"20099","createDate":1638353082335,"defaultPolicy":true,"description":"Default","expireable":false,"graceLimit":0,"history":false,"historyCount":6,"lockout":false,"lockoutDuration":"0","maxAge":"8640000","maxFailure":3,"minAge":"0","minAlphanumeric":0,"minLength":6,"minLowerCase":0,"minNumbers":1,"minSymbols":0,"minUpperCase":1,"modifiedDate":1638357380387,"mvccVersion":"7","name":"Default Password Policy","passwordPolicyId":"20126","regex":"\"(?=.{4})(?:[a-zA-Z0-9]*)\"","requireUnlock":true,"resetFailureCount":"600","resetTicketMaxAge":"86400","userId":"20103","userName":"","uuid":"11052806-3272-6d8e-bc53-d90068629323","warningTime":"86400"}Finished executing commands.
  • Running post with parametersArg: ${curl}Return: {"agreedToTermsOfUse":false,"comments":"","companyId":"20099","contactId":"40672","createDate":1638357376357,"ctCollectionId":"0","defaultUser":false,"emailAddress":"[email protected]","emailAddressVerified":false,"externalReferenceCode":"","facebookId":"0","failedLoginAttempts":0,"firstName":"userfn","googleUserId":"","graceLoginCount":0,"greeting":"Welcome userfn userln!","jobTitle":"","languageId":"en_US","lastFailedLoginDate":null,"lastLoginDate":null,"lastLoginIP":"","lastName":"userln","ldapServerId":"-1","lockout":false,"lockoutDate":null,"loginDate":null,"loginIP":"","middleName":"","modifiedDate":1638357381364,"mvccVersion":"2","openId":"","portraitId":"0","reminderQueryAnswer":"","reminderQueryQuestion":"","screenName":"usersn","status":0,"timeZoneId":"UTC","userId":"40671","uuid":"9b67300c-693b-e0c3-c011-fe7a2fe0d0d8"}Finished executing commands.
  • Running post with parametersArg: ${curl}Return: {"allowDictionaryWords":true,"changeRequired":false,"changeable":true,"checkSyntax":false,"companyId":"20099","createDate":1638353082335,"defaultPolicy":true,"description":"Default","expireable":false,"graceLimit":0,"history":false,"historyCount":6,"lockout":false,"lockoutDuration":"0","maxAge":"8640000","maxFailure":3,"minAge":"0","minAlphanumeric":0,"minLength":6,"minLowerCase":0,"minNumbers":1,"minSymbols":0,"minUpperCase":1,"modifiedDate":1638357385156,"mvccVersion":"8","name":"Default Password Policy","passwordPolicyId":"20126","regex":"\"(?=.{4})(?:[a-zA-Z0-9]*)\"","requireUnlock":true,"resetFailureCount":"600","resetTicketMaxAge":"86400","userId":"20103","userName":"","uuid":"11052806-3272-6d8e-bc53-d90068629323","warningTime":"86400"}Finished executing commands.
  • Running post with parametersArg: ${curl}Return: {"agreedToTermsOfUse":true,"comments":"","companyId":"20099","contactId":"40672","createDate":1638357376357,"ctCollectionId":"0","defaultUser":false,"emailAddress":"[email protected]","emailAddressVerified":false,"externalReferenceCode":"","facebookId":"0","failedLoginAttempts":0,"firstName":"userfn","googleUserId":"","graceLoginCount":0,"greeting":"Welcome userfn userln!","jobTitle":"","languageId":"en_US","lastFailedLoginDate":null,"lastLoginDate":null,"lastLoginIP":"","lastName":"userln","ldapServerId":"-1","lockout":false,"lockoutDate":null,"loginDate":null,"loginIP":"","middleName":"","modifiedDate":1638357385380,"mvccVersion":"3","openId":"","portraitId":"0","reminderQueryAnswer":"","reminderQueryQuestion":"","screenName":"usersn","status":0,"timeZoneId":"UTC","userId":"40671","uuid":"9b67300c-693b-e0c3-c011-fe7a2fe0d0d8"}Finished executing commands.
  • Running post with parametersArg: ${curl}Return: {"agreedToTermsOfUse":true,"comments":"","companyId":"20099","contactId":"40672","createDate":1638357376357,"ctCollectionId":"0","defaultUser":false,"emailAddress":"[email protected]","emailAddressVerified":false,"externalReferenceCode":"","facebookId":"0","failedLoginAttempts":0,"firstName":"userfn","googleUserId":"","graceLoginCount":0,"greeting":"Welcome userfn userln!","jobTitle":"","languageId":"en_US","lastFailedLoginDate":null,"lastLoginDate":null,"lastLoginIP":"","lastName":"userln","ldapServerId":"-1","lockout":false,"lockoutDate":null,"loginDate":null,"loginIP":"","middleName":"","modifiedDate":1638357385627,"mvccVersion":"4","openId":"","portraitId":"0","reminderQueryAnswer":"test","reminderQueryQuestion":"what-is-your-father's-middle-name","screenName":"usersn","status":0,"timeZoneId":"UTC","userId":"40671","uuid":"9b67300c-693b-e0c3-c011-fe7a2fe0d0d8"}Finished executing commands.
  • ## * GroupId: 40669
  • Running post with parametersArg: ${curl}Return: {}Finished executing commands.
  • Running post with parametersArg: ${curl}Return: {"classNameId":"20006","classPK":"40680","companyId":"20099","createDate":1638357386993,"ctCollectionId":"0","description":"","descriptionCurrentValue":"","modifiedDate":1638357386993,"mvccVersion":"0","name":"Site Role Name","roleId":"40680","subtype":"","title":"","titleCurrentValue":"Site Role Name","type":2,"userId":"20127","userName":"Test Test","uuid":"9a567a06-bc91-4829-25c6-cdd9aa9275ed"}Finished executing commands.
  • ## * GroupId: 20125
  • Running post with parametersArg: ${curl}Return: {}Finished executing commands.
  • ## * GroupId: 20125
  • Running post with parametersArg: ${curl}Return: {}Finished executing commands.
  • ## * GroupId: 20125
  • Running post with parametersArg: ${curl}Return: {}Finished executing commands.
  • ## * GroupId: 20125
  • Running post with parametersArg: ${curl}Return: {}Finished executing commands.
  • ## * GroupId: 20125
  • Running post with parametersArg: ${curl}Return: {}Finished executing commands.
  • ## * GroupId: 20125
  • Running post with parametersArg: ${curl}Return: {}Finished executing commands.
  • ## * GroupId: 20125
  • Running post with parametersArg: ${curl}Return: {}Finished executing commands.
  • ## * GroupId: 40669
  • Running post with parametersArg: ${curl}Return: {}Finished executing commands.
  • ## * GroupId: 40669
  • Running Open with locator1http://localhost:8080/web/test-site-name/test-page-name?p_l_mode=edit
    • 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/test-site-name/test-page-name?p_l_mode=edit
    • Running assertLiferayErrors
    • Running selectWindow with parameters
    • Running selectFrame with parametersrelative=top
    • Running open with parametershttp://localhost:8080/web/test-site-name/test-page-name?p_l_mode=edit
    • 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/test-site-name/test-page-name?p_l_mode=edit
    • 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/test-site-name/test-page-name?p_l_mode=edit
    • Running assertLiferayErrors
  • Running WaitForPageLoad
    • Running waitForJavaScriptNoError with parameters return document.readyState === "complete"; Page is still loading.
    • Running verifyJavaScript with parameters return document.readyState === "complete"; Page is still loading.
  • Running AssertVisible with locator1//div[contains(@class,'sidebar')]/div[contains(@class,'buttons')]/button
    • 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,'sidebar')]/div[contains(@class,'buttons')]/button
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'sidebar')]/div[contains(@class,'buttons')]/button
    • Running assertVisible with parameters//div[contains(@class,'sidebar')]/div[contains(@class,'buttons')]/button
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'sidebar')]/div[contains(@class,'buttons')]/button
    • Running assertLiferayErrors
  • Running WaitForPageLoad
    • Running waitForJavaScriptNoError with parameters return document.readyState === "complete"; Page is still loading.
    • Running verifyJavaScript with parameters return document.readyState === "complete"; Page is still loading.
  • Running AssertVisible with locator1//div[contains(@class,'sidebar')]/div[contains(@class,'buttons')]/button
    • 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,'sidebar')]/div[contains(@class,'buttons')]/button
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'sidebar')]/div[contains(@class,'buttons')]/button
    • Running assertVisible with parameters//div[contains(@class,'sidebar')]/div[contains(@class,'buttons')]/button
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'sidebar')]/div[contains(@class,'buttons')]/button
    • Running assertLiferayErrors
  • Running IsElementPresent 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 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 WaitForVisible with locator1//div[contains(@class,'sidebar-content')][contains(@class,'open')] | //div[contains(@class,'sidebar__content')][contains(@class,'open')]
    • Running waitForVisible with parameters//div[contains(@class,'sidebar-content')][contains(@class,'open')] | //div[contains(@class,'sidebar__content')][contains(@class,'open')]
  • Running IsElementNotPresent with locator1//div[contains(@class,'content--open')]//h1[contains(@class,'page-editor__sidebar__panel-header') and contains(.,'Fragments and Widgets')]
    • 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,'content--open')]//h1[contains(@class,'page-editor__sidebar__panel-header') and contains(.,'Fragments and Widgets')]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[contains(@class,'content--open')]//h1[contains(@class,'page-editor__sidebar__panel-header') and contains(.,'Fragments and Widgets')]
    • Running isNotVisible with parameters//div[contains(@class,'content--open')]//h1[contains(@class,'page-editor__sidebar__panel-header') and contains(.,'Fragments and Widgets')]
  • Running IsElementNotPresent with locator1//div[contains(@class,'fragments-widgets-panel')]//button[contains(@class,'tooltip')][*[name()='svg'][contains(@class,'icon-card')]]
    • 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,'fragments-widgets-panel')]//button[contains(@class,'tooltip')][*[name()='svg'][contains(@class,'icon-card')]]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[contains(@class,'fragments-widgets-panel')]//button[contains(@class,'tooltip')][*[name()='svg'][contains(@class,'icon-card')]]
    • Running isNotVisible with parameters//div[contains(@class,'fragments-widgets-panel')]//button[contains(@class,'tooltip')][*[name()='svg'][contains(@class,'icon-card')]]
  • Running AssertVisible with locator1//div[contains(@class,'fragments-widgets-panel')]//button[contains(@class,'tooltip')][*[name()='svg'][contains(@class,'icon-card')]]
    • 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,'fragments-widgets-panel')]//button[contains(@class,'tooltip')][*[name()='svg'][contains(@class,'icon-card')]]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'fragments-widgets-panel')]//button[contains(@class,'tooltip')][*[name()='svg'][contains(@class,'icon-card')]]
    • Running assertVisible with parameters//div[contains(@class,'fragments-widgets-panel')]//button[contains(@class,'tooltip')][*[name()='svg'][contains(@class,'icon-card')]]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'fragments-widgets-panel')]//button[contains(@class,'tooltip')][*[name()='svg'][contains(@class,'icon-card')]]
    • Running assertLiferayErrors
  • Running IsElementNotPresent with locator1//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Fragments'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • 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//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Fragments'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Fragments'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running isNotVisible with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Fragments'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
  • Running AssertElementPresent with locator1//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Fragments'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • 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//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Fragments'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Fragments'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running assertElementPresent with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Fragments'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Fragments'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • 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 IsElementPresent 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 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 WaitForVisible with locator1//div[contains(@class,'sidebar-content')][contains(@class,'open')] | //div[contains(@class,'sidebar__content')][contains(@class,'open')]
    • Running waitForVisible with parameters//div[contains(@class,'sidebar-content')][contains(@class,'open')] | //div[contains(@class,'sidebar__content')][contains(@class,'open')]
  • Running IsElementNotPresent with locator1//div[contains(@class,'content--open')]//h1[contains(@class,'page-editor__sidebar__panel-header') and contains(.,'Fragments and Widgets')]
    • 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,'content--open')]//h1[contains(@class,'page-editor__sidebar__panel-header') and contains(.,'Fragments and Widgets')]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[contains(@class,'content--open')]//h1[contains(@class,'page-editor__sidebar__panel-header') and contains(.,'Fragments and Widgets')]
    • Running isNotVisible with parameters//div[contains(@class,'content--open')]//h1[contains(@class,'page-editor__sidebar__panel-header') and contains(.,'Fragments and Widgets')]
  • Running IsElementNotPresent with locator1//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Fragments'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • 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//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Fragments'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Fragments'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running isNotVisible with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Fragments'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
  • Running AssertElementPresent with locator1//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Fragments'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • 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//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Fragments'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Fragments'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running assertElementPresent with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Fragments'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Fragments'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • 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 AssertVisible with locator1//*[contains(@class,'collapse-icon')][normalize-space()='Basic Components']
    • 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//*[contains(@class,'collapse-icon')][normalize-space()='Basic Components']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//*[contains(@class,'collapse-icon')][normalize-space()='Basic Components']
    • Running assertVisible with parameters//*[contains(@class,'collapse-icon')][normalize-space()='Basic Components']
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'collapse-icon')][normalize-space()='Basic Components']
    • Running assertLiferayErrors
  • Running IsElementPresent with locator1//*[contains(@class,'sheet-subtitle collapsed')][normalize-space()='Basic Components']
    • 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//*[contains(@class,'sheet-subtitle collapsed')][normalize-space()='Basic Components']
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//*[contains(@class,'sheet-subtitle collapsed')][normalize-space()='Basic Components']
  • Running AssertElementPresent with locator1//*[contains(@class,'collapse-icon sheet-subtitle')][normalize-space()='Basic Components']
    • 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//*[contains(@class,'collapse-icon sheet-subtitle')][normalize-space()='Basic Components']
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[contains(@class,'collapse-icon sheet-subtitle')][normalize-space()='Basic Components']
    • Running assertElementPresent with parameters//*[contains(@class,'collapse-icon sheet-subtitle')][normalize-space()='Basic Components']
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'collapse-icon sheet-subtitle')][normalize-space()='Basic Components']
    • Running assertLiferayErrors
  • Running DragAndDrop#javaScriptDragAndDropToObject with locator1//button[normalize-space()='Basic Components']/following-sibling::div/ul/li[contains(@class,'page-editor__fragments-widgets__tab-list-item')][normalize-space()='Heading'] with value1 with locator2//div[contains(@class,'page-editor__root page-editor__topper')]
    • 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[normalize-space()='Basic Components']/following-sibling::div/ul/li[contains(@class,'page-editor__fragments-widgets__tab-list-item')][normalize-space()='Heading']
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//button[normalize-space()='Basic Components']/following-sibling::div/ul/li[contains(@class,'page-editor__fragments-widgets__tab-list-item')][normalize-space()='Heading']
    • Running waitForElementPresent with parameters//div[contains(@class,'page-editor__root page-editor__topper')]
    • Running executeJavaScript with parameters Simulate = { dragAndDrop: function (source, target) { const dispatchEvent = function (type, element) { const rect = element.getBoundingClientRect(); const event = document.createEvent('customEvent'); event.initEvent(type, true, true); event.relatedTarget = element; (event.clientX = rect.left + rect.width / 2), (event.clientY = rect.top + rect.height / 2), element.dispatchEvent(event); return Promise.resolve(); }; dispatchEvent('dragstart', source) .then(function () { dispatchEvent('dragover', target); }) .then(function () { dispatchEvent('drop', target); }) .then(function () { dispatchEvent('dragend', source); }); } }; Simulate.dragAndDrop(arguments[0], arguments[1]); //button[normalize-space()='Basic Components']/following-sibling::div/ul/li[contains(@class,'page-editor__fragments-widgets__tab-list-item')][normalize-space()='Heading']//div[contains(@class,'page-editor__root page-editor__topper')]
    • Running assertJavaScriptErrors with parameters//button[normalize-space()='Basic Components']/following-sibling::div/ul/li[contains(@class,'page-editor__fragments-widgets__tab-list-item')][normalize-space()='Heading']
    • Running assertLiferayErrors
  • Running WaitForVisible with locator1//div[contains(@class,'management-bar')]//span[contains(@class,'text-success')]
    • Running waitForVisible with parameters//div[contains(@class,'management-bar')]//span[contains(@class,'text-success')]
  • Running AssertElementPresent with locator1xpath=(//li[contains(@class,'topper__title') and contains(.,'Heading')])[1]
    • 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 parametersxpath=(//li[contains(@class,'topper__title') and contains(.,'Heading')])[1]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parametersxpath=(//li[contains(@class,'topper__title') and contains(.,'Heading')])[1]
    • Running assertElementPresent with parametersxpath=(//li[contains(@class,'topper__title') and contains(.,'Heading')])[1]
    • Running assertJavaScriptErrors with parametersxpath=(//li[contains(@class,'topper__title') and contains(.,'Heading')])[1]
    • Running assertLiferayErrors
  • Running Click#mouseDownMouseUp with locator1//*[not(self::div)][contains(@class,'btn')][normalize-space()='Publish'][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()='Publish'][not(contains(@class,'navbar'))]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Publish'][not(contains(@class,'navbar'))]
    • Running waitForVisible with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Publish'][not(contains(@class,'navbar'))]
    • Running mouseDown with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Publish'][not(contains(@class,'navbar'))]
    • Running mouseUp with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Publish'][not(contains(@class,'navbar'))]
    • Running assertJavaScriptErrors with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Publish'][not(contains(@class,'navbar'))]
    • Running assertLiferayErrors
  • Running VerifyElementPresent with locator1//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • 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,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]false
    • Running verifyElementPresent with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running assertLiferayErrors
  • Running Open with locator1http://localhost:8080/group/test-site-name/~/control_panel/manage?p_p_id=com_liferay_portal_workflow_web_internal_portlet_SiteAdministrationWorkflowPortlet
    • 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/group/test-site-name/~/control_panel/manage?p_p_id=com_liferay_portal_workflow_web_internal_portlet_SiteAdministrationWorkflowPortlet
    • Running assertLiferayErrors
    • Running selectWindow with parameters
    • Running selectFrame with parametersrelative=top
    • Running open with parametershttp://localhost:8080/group/test-site-name/~/control_panel/manage?p_p_id=com_liferay_portal_workflow_web_internal_portlet_SiteAdministrationWorkflowPortlet
    • 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/group/test-site-name/~/control_panel/manage?p_p_id=com_liferay_portal_workflow_web_internal_portlet_SiteAdministrationWorkflowPortlet
    • 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/group/test-site-name/~/control_panel/manage?p_p_id=com_liferay_portal_workflow_web_internal_portlet_SiteAdministrationWorkflowPortlet
    • Running assertLiferayErrors
  • Running Click with locator1//div[contains(@class,'pagination-items-per-page')]/a[contains(@class,'toggle')]
    • 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,'pagination-items-per-page')]/a[contains(@class,'toggle')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'pagination-items-per-page')]/a[contains(@class,'toggle')]
    • Running mouseOver with parameters//div[contains(@class,'pagination-items-per-page')]/a[contains(@class,'toggle')]
    • Running click with parameters//div[contains(@class,'pagination-items-per-page')]/a[contains(@class,'toggle')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'pagination-items-per-page')]/a[contains(@class,'toggle')]
    • Running assertLiferayErrors
  • Running Click with locator1xpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="40"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="40"]
    • 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 parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="40"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="40"]
    • Running assertLiferayErrors
    • Running waitForVisible with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="40"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="40"]
    • Running mouseOver with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="40"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="40"]
    • Running click with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="40"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="40"]
    • Running assertJavaScriptErrors with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="40"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="40"]
    • Running assertLiferayErrors
  • Running AssertTextEquals#assertPartialText with locator1//div[contains(@class,'pagination-items-per-page')]/a[contains(@class,'toggle')] with value140 Entries
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]40 Entries
    • 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;')]40 Entries
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'pagination-items-per-page')]/a[contains(@class,'toggle')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'pagination-items-per-page')]/a[contains(@class,'toggle')]40 Entries
    • Running waitForPartialTextCaseInsensitive with parameters//div[contains(@class,'pagination-items-per-page')]/a[contains(@class,'toggle')]40 Entries
    • Running assertPartialTextCaseInsensitive with parameters//div[contains(@class,'pagination-items-per-page')]/a[contains(@class,'toggle')]40 Entries
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'pagination-items-per-page')]/a[contains(@class,'toggle')]
    • Running assertLiferayErrors
  • Running AssertClick#pauseAssertTextClickAt with locator1//*[@data-qa-id='row' and contains(.,'Content Page')]//*[normalize-space(text())='Edit'] with value1Edit
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Edit
    • 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;')]Edit
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//*[normalize-space(text())='Edit']
    • Running assertLiferayErrors
    • Running pause with parameters1000
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Edit
    • 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;')]Edit
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//*[normalize-space(text())='Edit']
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Edit
    • 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;')]Edit
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//*[normalize-space(text())='Edit']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//*[normalize-space(text())='Edit']Edit
    • Running waitForTextCaseInsensitive with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//*[normalize-space(text())='Edit']Edit
    • Running assertTextCaseInsensitive with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//*[normalize-space(text())='Edit']Edit
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//*[normalize-space(text())='Edit']
    • Running assertLiferayErrors
    • Running mouseOver with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//*[normalize-space(text())='Edit']
    • Running clickAt with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//*[normalize-space(text())='Edit']
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//*[normalize-space(text())='Edit']
    • Running assertLiferayErrors
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//*[normalize-space(text())='Edit']
    • Running assertLiferayErrors
  • Running IsNotVisible with locator1//*[@data-qa-id='row' and contains(.,'Content Page')]//select
    • 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='row' and contains(.,'Content Page')]//select
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//select
    • Running isNotVisible with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//select
  • Running Select with locator1//*[@data-qa-id='row' and contains(.,'Content Page')]//select with value1Single Approver
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Single Approver
    • 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;')]Single Approver
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//select
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//selectSingle Approver
    • Running mouseOver with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//select
    • Running select with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//selectSingle Approver
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//select
    • Running assertLiferayErrors
  • Running AssertClick with locator1//*[@data-qa-id='row' and contains(.,'Content Page')]//button[contains(.,'Save')] with value1Save
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Save
    • 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;')]Save
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//button[contains(.,'Save')]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Save
    • 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;')]Save
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//button[contains(.,'Save')]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Save
    • 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;')]Save
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//button[contains(.,'Save')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//button[contains(.,'Save')]Save
    • Running waitForTextCaseInsensitive with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//button[contains(.,'Save')]Save
    • Running assertTextCaseInsensitive with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//button[contains(.,'Save')]Save
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//button[contains(.,'Save')]
    • Running assertLiferayErrors
    • Running mouseOver with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//button[contains(.,'Save')]
    • Running clickAt with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//button[contains(.,'Save')]
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='row' and contains(.,'Content Page')]//button[contains(.,'Save')]
    • Running assertLiferayErrors
  • Running VerifyElementPresent with locator1//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • 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,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]false
    • Running verifyElementPresent with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running assertLiferayErrors
  • Running AssertTextEquals with locator1//div[contains(@id,'WorkflowPortlet')]//tr[contains(.,'Content Page')]/td[2] with value1Single Approver
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Single Approver
    • 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;')]Single Approver
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'WorkflowPortlet')]//tr[contains(.,'Content Page')]/td[2]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Single Approver
    • 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;')]Single Approver
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'WorkflowPortlet')]//tr[contains(.,'Content Page')]/td[2]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@id,'WorkflowPortlet')]//tr[contains(.,'Content Page')]/td[2]Single Approver
    • Running waitForTextCaseInsensitive with parameters//div[contains(@id,'WorkflowPortlet')]//tr[contains(.,'Content Page')]/td[2]Single Approver
    • Running assertTextCaseInsensitive with parameters//div[contains(@id,'WorkflowPortlet')]//tr[contains(.,'Content Page')]/td[2]Single Approver
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'WorkflowPortlet')]//tr[contains(.,'Content Page')]/td[2]
    • Running assertLiferayErrors
  • 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 isElementNotPresent with parameters//span[contains(@class,'sign-in')]/a/span
  • Running IsElementPresent with locator1//button//img[contains(@src,'user_portrait')]
    • 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//img[contains(@src,'user_portrait')]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//button//img[contains(@src,'user_portrait')]
  • Running IsElementPresent with locator1//button[contains(@data-toggle,'dropdown')]//span[contains(@class,'user-icon')]
    • 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[contains(@data-toggle,'dropdown')]//span[contains(@class,'user-icon')]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//button[contains(@data-toggle,'dropdown')]//span[contains(@class,'user-icon')]
  • Running Click#waitForPersonalMenuJSClick with locator1//span[@class='user-avatar-link']//span[*[name()='svg'][contains(@class,'lexicon-icon-user')]]
    • 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']//span[*[name()='svg'][contains(@class,'lexicon-icon-user')]]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//script[contains(@src,'personal_menu/js/PersonalMenu.es.js')]
    • Running pause with parameters3000
    • 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']//span[*[name()='svg'][contains(@class,'lexicon-icon-user')]]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//span[@class='user-avatar-link']//span[*[name()='svg'][contains(@class,'lexicon-icon-user')]]
    • Running mouseOver with parameters//span[@class='user-avatar-link']//span[*[name()='svg'][contains(@class,'lexicon-icon-user')]]
    • Running click with parameters//span[@class='user-avatar-link']//span[*[name()='svg'][contains(@class,'lexicon-icon-user')]]
    • Running assertJavaScriptErrors with parameters//span[@class='user-avatar-link']//span[*[name()='svg'][contains(@class,'lexicon-icon-user')]]
    • Running assertLiferayErrors
    • Running assertJavaScriptErrors with parameters//span[@class='user-avatar-link']//span[*[name()='svg'][contains(@class,'lexicon-icon-user')]]
    • Running assertLiferayErrors
  • Running AssertVisible with locator1//*[contains(@class,'dropdown-menu') and contains(@class,'show')]
    • 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//*[contains(@class,'dropdown-menu') and contains(@class,'show')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//*[contains(@class,'dropdown-menu') and contains(@class,'show')]
    • Running assertVisible with parameters//*[contains(@class,'dropdown-menu') and contains(@class,'show')]
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'dropdown-menu') and contains(@class,'show')]
    • Running assertLiferayErrors
  • Running ScrollWebElementIntoView with locator1//a[contains(@class,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • 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,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//a[contains(@class,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • Running scrollWebElementIntoView with parameters//a[contains(@class,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • Running assertJavaScriptErrors with parameters//a[contains(@class,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • Running assertLiferayErrors
  • Running Click with locator1//a[contains(@class,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • 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,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//a[contains(@class,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • Running mouseOver with parameters//a[contains(@class,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • Running click with parameters//a[contains(@class,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • Running assertJavaScriptErrors with parameters//a[contains(@class,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • Running assertLiferayErrors
  • Running post with parametersArg: ${curl}Return: {"agreedToTermsOfUse":true,"comments":"","companyId":"20099","contactId":"40672","createDate":1638357376357,"ctCollectionId":"0","defaultUser":false,"emailAddress":"[email protected]","emailAddressVerified":false,"externalReferenceCode":"","facebookId":"0","failedLoginAttempts":0,"firstName":"userfn","googleUserId":"","graceLoginCount":0,"greeting":"Welcome userfn userln!","jobTitle":"","languageId":"en_US","lastFailedLoginDate":null,"lastLoginDate":null,"lastLoginIP":"","lastName":"userln","ldapServerId":"-1","lockout":false,"lockoutDate":null,"loginDate":null,"loginIP":"","middleName":"","modifiedDate":1638357424872,"mvccVersion":"5","openId":"","portraitId":"0","reminderQueryAnswer":"test","reminderQueryQuestion":"what-is-your-father's-middle-name","screenName":"usersn","status":0,"timeZoneId":"UTC","userId":"40671","uuid":"9b67300c-693b-e0c3-c011-fe7a2fe0d0d8"}Finished executing commands.
  • Running post with parametersArg: ${curl}Return: {"agreedToTermsOfUse":true,"comments":"","companyId":"20099","contactId":"40672","createDate":1638357376357,"ctCollectionId":"0","defaultUser":false,"emailAddress":"[email protected]","emailAddressVerified":false,"externalReferenceCode":"","facebookId":"0","failedLoginAttempts":0,"firstName":"userfn","googleUserId":"","graceLoginCount":0,"greeting":"Welcome userfn userln!","jobTitle":"","languageId":"en_US","lastFailedLoginDate":null,"lastLoginDate":null,"lastLoginIP":"","lastName":"userln","ldapServerId":"-1","lockout":false,"lockoutDate":null,"loginDate":null,"loginIP":"","middleName":"","modifiedDate":1638357425067,"mvccVersion":"6","openId":"","portraitId":"0","reminderQueryAnswer":"test","reminderQueryQuestion":"what-is-your-father's-middle-name","screenName":"usersn","status":0,"timeZoneId":"UTC","userId":"40671","uuid":"9b67300c-693b-e0c3-c011-fe7a2fe0d0d8"}Finished executing commands.
  • Running Open with locator1http://localhost:8080/web/[email protected]
    • 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/[email protected]
    • Running assertLiferayErrors
    • Running selectWindow with parameters
    • Running selectFrame with parametersrelative=top
    • Running open with parametershttp://localhost:8080/web/[email protected]
    • 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/[email protected]
    • 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/[email protected]
    • 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')]]/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')]]/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')]]/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 Pause with locator13000
    • 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 parameters3000
    • Running assertLiferayErrors
    • Running pause with parameters3000
  • 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, }; }
  • Running Open with locator1http://localhost:8080/web/test-site-name
    • 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/test-site-name
    • Running assertLiferayErrors
    • Running selectWindow with parameters
    • Running selectFrame with parametersrelative=top
    • Running open with parametershttp://localhost:8080/web/test-site-name
    • 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/test-site-name
    • 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/test-site-name
    • Running assertLiferayErrors
  • Running IsElementNotPresent with locator1//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][.//*[normalize-space(text())='Test Page Name']]
    • 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,'navbar')]/ul//*[contains(@class,'active')][.//*[normalize-space(text())='Test Page Name']]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][.//*[normalize-space(text())='Test Page Name']]
    • Running isNotVisible with parameters//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][.//*[normalize-space(text())='Test Page Name']]
  • Running AssertVisible with locator1//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][.//*[normalize-space(text())='Test Page Name']]
    • 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,'navbar')]/ul//*[contains(@class,'active')][.//*[normalize-space(text())='Test Page Name']]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][.//*[normalize-space(text())='Test Page Name']]
    • Running assertVisible with parameters//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][.//*[normalize-space(text())='Test Page Name']]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][.//*[normalize-space(text())='Test Page Name']]
    • Running assertLiferayErrors
  • Running Click with locator1//*[*[name()='svg'][contains(@class,'lexicon-icon-pencil')]]
    • 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//*[*[name()='svg'][contains(@class,'lexicon-icon-pencil')]]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//*[*[name()='svg'][contains(@class,'lexicon-icon-pencil')]]
    • Running mouseOver with parameters//*[*[name()='svg'][contains(@class,'lexicon-icon-pencil')]]
    • Running click with parameters//*[*[name()='svg'][contains(@class,'lexicon-icon-pencil')]]
    • Running assertJavaScriptErrors with parameters//*[*[name()='svg'][contains(@class,'lexicon-icon-pencil')]]
    • Running assertLiferayErrors
  • Running WaitForPageLoad
    • Running waitForJavaScriptNoError with parameters return document.readyState === "complete"; Page is still loading.
    • Running verifyJavaScript with parameters return document.readyState === "complete"; Page is still loading.
  • Running AssertVisible with locator1//div[contains(@class,'sidebar')]/div[contains(@class,'buttons')]/button
    • 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,'sidebar')]/div[contains(@class,'buttons')]/button
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'sidebar')]/div[contains(@class,'buttons')]/button
    • Running assertVisible with parameters//div[contains(@class,'sidebar')]/div[contains(@class,'buttons')]/button
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'sidebar')]/div[contains(@class,'buttons')]/button
    • Running assertLiferayErrors
  • Running IsNotVisible with locator1xpath=(//li[contains(@class,'topper__title') and contains(.,'Heading')])[1]
    • 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 parametersxpath=(//li[contains(@class,'topper__title') and contains(.,'Heading')])[1]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parametersxpath=(//li[contains(@class,'topper__title') and contains(.,'Heading')])[1]
    • Running isNotVisible with parametersxpath=(//li[contains(@class,'topper__title') and contains(.,'Heading')])[1]
  • Running Click#clickNoWaitForVisible with locator1xpath=(//li[contains(@class,'topper__title') and contains(.,'Heading')])[1]
    • 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 parametersxpath=(//li[contains(@class,'topper__title') and contains(.,'Heading')])[1]
    • Running assertLiferayErrors
    • Running mouseOver with parametersxpath=(//li[contains(@class,'topper__title') and contains(.,'Heading')])[1]
    • Running click with parametersxpath=(//li[contains(@class,'topper__title') and contains(.,'Heading')])[1]
    • Running assertJavaScriptErrors with parametersxpath=(//li[contains(@class,'topper__title') and contains(.,'Heading')])[1]
    • Running assertLiferayErrors
  • Running Click with locator1xpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'text')]
    • 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 parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'text')]
    • Running assertLiferayErrors
    • Running waitForVisible with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'text')]
    • Running mouseOver with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'text')]
    • Running click with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'text')]
    • Running assertJavaScriptErrors with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'text')]
    • Running assertLiferayErrors
  • Running DoubleClick with locator1xpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'text')]
    • 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 parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'text')]
    • Running assertLiferayErrors
    • Running waitForVisible with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'text')]
    • Running mouseOver with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'text')]
    • Running doubleClick with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'text')]
    • Running assertJavaScriptErrors with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'text')]
    • Running assertLiferayErrors
  • Running Type with locator1//div[contains(@class,'cke_editable_inline') and contains(@id,'_content')] | //div[contains(@class,'form-group')]//textarea[contains(@id,'_content')] with value1New editable fragment text
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]New editable fragment text
    • 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 editable fragment text
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'cke_editable_inline') and contains(@id,'_content')] | //div[contains(@class,'form-group')]//textarea[contains(@id,'_content')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'cke_editable_inline') and contains(@id,'_content')] | //div[contains(@class,'form-group')]//textarea[contains(@id,'_content')]New editable fragment text
    • Running waitForEditable with parameters//div[contains(@class,'cke_editable_inline') and contains(@id,'_content')] | //div[contains(@class,'form-group')]//textarea[contains(@id,'_content')]
    • Running mouseOver with parameters//div[contains(@class,'cke_editable_inline') and contains(@id,'_content')] | //div[contains(@class,'form-group')]//textarea[contains(@id,'_content')]
    • Running clickAt with parameters//div[contains(@class,'cke_editable_inline') and contains(@id,'_content')] | //div[contains(@class,'form-group')]//textarea[contains(@id,'_content')]
    • Running pause with parameters1000
    • Running type with parameters//div[contains(@class,'cke_editable_inline') and contains(@id,'_content')] | //div[contains(@class,'form-group')]//textarea[contains(@id,'_content')]New editable fragment text
    • Running pause with parameters1000
    • Running clickAt with parameters//div[contains(@class,'cke_editable_inline') and contains(@id,'_content')] | //div[contains(@class,'form-group')]//textarea[contains(@id,'_content')]
    • Running pause with parameters1000
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'cke_editable_inline') and contains(@id,'_content')] | //div[contains(@class,'form-group')]//textarea[contains(@id,'_content')]
    • Running assertLiferayErrors
  • Running Click#clickAt with locator1//div[contains(@class,'page-editor__sidebar')][contains(@class,'theme-adapter-forms')] with value10,185
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]0,185
    • 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;')]0,185
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'page-editor__sidebar')][contains(@class,'theme-adapter-forms')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'page-editor__sidebar')][contains(@class,'theme-adapter-forms')]0,185
    • Running mouseOver with parameters//div[contains(@class,'page-editor__sidebar')][contains(@class,'theme-adapter-forms')]
    • Running clickAt with parameters//div[contains(@class,'page-editor__sidebar')][contains(@class,'theme-adapter-forms')]0,185
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'page-editor__sidebar')][contains(@class,'theme-adapter-forms')]
    • Running assertLiferayErrors
  • Running WaitForVisible with locator1//div[contains(@class,'management-bar')]//span[contains(@class,'text-success')]
    • Running waitForVisible with parameters//div[contains(@class,'management-bar')]//span[contains(@class,'text-success')]
  • Running Click#mouseDownMouseUp with locator1//*[not(self::div)][contains(@class,'btn')][normalize-space()='Submit for Publication'][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()='Submit for Publication'][not(contains(@class,'navbar'))]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Submit for Publication'][not(contains(@class,'navbar'))]
    • Running waitForVisible with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Submit for Publication'][not(contains(@class,'navbar'))]
    • Running mouseDown with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Submit for Publication'][not(contains(@class,'navbar'))]
    • Running mouseUp with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Submit for Publication'][not(contains(@class,'navbar'))]
    • Running assertJavaScriptErrors with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Submit for Publication'][not(contains(@class,'navbar'))]
    • Running assertLiferayErrors
  • Running VerifyElementPresent with locator1//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • 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,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]false
    • Running verifyElementPresent with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running assertLiferayErrors
  • Running Open with locator1http://localhost:8080/group/test-site-name/~/control_panel/manage?p_p_id=com_liferay_layout_admin_web_portlet_GroupPagesPortlet
    • 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/group/test-site-name/~/control_panel/manage?p_p_id=com_liferay_layout_admin_web_portlet_GroupPagesPortlet
    • Running assertLiferayErrors
    • Running selectWindow with parameters
    • Running selectFrame with parametersrelative=top
    • Running open with parametershttp://localhost:8080/group/test-site-name/~/control_panel/manage?p_p_id=com_liferay_layout_admin_web_portlet_GroupPagesPortlet
    • 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/group/test-site-name/~/control_panel/manage?p_p_id=com_liferay_layout_admin_web_portlet_GroupPagesPortlet
    • 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/group/test-site-name/~/control_panel/manage?p_p_id=com_liferay_layout_admin_web_portlet_GroupPagesPortlet
    • Running assertLiferayErrors
  • Running AssertTextEquals with locator1//li[contains(@class,'list-group-item') and contains(.,'Test Page Name')]//*[contains(@class,'label-info')] with value1Pending
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Pending
    • 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;')]Pending
    • Running assertJavaScriptErrors with parameters//li[contains(@class,'list-group-item') and contains(.,'Test Page Name')]//*[contains(@class,'label-info')]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Pending
    • 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;')]Pending
    • Running assertJavaScriptErrors with parameters//li[contains(@class,'list-group-item') and contains(.,'Test Page Name')]//*[contains(@class,'label-info')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//li[contains(@class,'list-group-item') and contains(.,'Test Page Name')]//*[contains(@class,'label-info')]Pending
    • Running waitForTextCaseInsensitive with parameters//li[contains(@class,'list-group-item') and contains(.,'Test Page Name')]//*[contains(@class,'label-info')]Pending
    • Running assertTextCaseInsensitive with parameters//li[contains(@class,'list-group-item') and contains(.,'Test Page Name')]//*[contains(@class,'label-info')]Pending
    • Running assertJavaScriptErrors with parameters//li[contains(@class,'list-group-item') and contains(.,'Test Page Name')]//*[contains(@class,'label-info')]
    • Running assertLiferayErrors
  • LocalFile.ContentPagesWithWorkflow#PreviewModificationButCannotEditAfterSubmitAsPageAuthor
  • This is a test for LPS-98384. The page author can not edit again after submit but can preview the modification.
  • Running Open with locator1http://localhost:8080/web/test-site-name
    • 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/test-site-name
    • Running assertLiferayErrors
    • Running selectWindow with parameters
    • Running selectFrame with parametersrelative=top
    • Running open with parametershttp://localhost:8080/web/test-site-name
    • 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/test-site-name
    • 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/test-site-name
    • Running assertLiferayErrors
  • Running IsElementNotPresent with locator1//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][.//*[normalize-space(text())='Test Page Name']]
    • 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,'navbar')]/ul//*[contains(@class,'active')][.//*[normalize-space(text())='Test Page Name']]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][.//*[normalize-space(text())='Test Page Name']]
    • Running isNotVisible with parameters//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][.//*[normalize-space(text())='Test Page Name']]
  • Running AssertVisible with locator1//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][.//*[normalize-space(text())='Test Page Name']]
    • 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,'navbar')]/ul//*[contains(@class,'active')][.//*[normalize-space(text())='Test Page Name']]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][.//*[normalize-space(text())='Test Page Name']]
    • Running assertVisible with parameters//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][.//*[normalize-space(text())='Test Page Name']]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][.//*[normalize-space(text())='Test Page Name']]
    • Running assertLiferayErrors
  • Running AssertTextEquals with locator1xpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'element-text')] with value1Heading Example
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Heading Example
    • 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;')]Heading Example
    • Running assertJavaScriptErrors with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'element-text')]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Heading Example
    • 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;')]Heading Example
    • Running assertJavaScriptErrors with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'element-text')]
    • Running assertLiferayErrors
    • Running waitForVisible with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'element-text')]Heading Example
    • Running waitForTextCaseInsensitive with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'element-text')]Heading Example
    • Running assertTextCaseInsensitive with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'element-text')]Heading Example
    • Running assertJavaScriptErrors with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'element-text')]
    • Running assertLiferayErrors
  • Running AssertElementNotPresent with locator1//*[*[name()='svg'][contains(@class,'lexicon-icon-pencil')]]
    • 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//*[*[name()='svg'][contains(@class,'lexicon-icon-pencil')]]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//*[*[name()='svg'][contains(@class,'lexicon-icon-pencil')]]
    • Running assertElementNotPresent with parameters//*[*[name()='svg'][contains(@class,'lexicon-icon-pencil')]]
    • Running assertJavaScriptErrors with parameters//*[*[name()='svg'][contains(@class,'lexicon-icon-pencil')]]
    • Running assertLiferayErrors
  • Running Open with locator1http://localhost:8080/group/test-site-name/~/control_panel/manage?p_p_id=com_liferay_layout_admin_web_portlet_GroupPagesPortlet
    • 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/group/test-site-name/~/control_panel/manage?p_p_id=com_liferay_layout_admin_web_portlet_GroupPagesPortlet
    • Running assertLiferayErrors
    • Running selectWindow with parameters
    • Running selectFrame with parametersrelative=top
    • Running open with parametershttp://localhost:8080/group/test-site-name/~/control_panel/manage?p_p_id=com_liferay_layout_admin_web_portlet_GroupPagesPortlet
    • 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/group/test-site-name/~/control_panel/manage?p_p_id=com_liferay_layout_admin_web_portlet_GroupPagesPortlet
    • 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/group/test-site-name/~/control_panel/manage?p_p_id=com_liferay_layout_admin_web_portlet_GroupPagesPortlet
    • Running assertLiferayErrors
  • Running AssertTextEquals with locator1//li[contains(@class,'list-group-item') and contains(.,'Test Page Name')]//*[contains(@class,'label-info')] with value1Pending
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Pending
    • 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;')]Pending
    • Running assertJavaScriptErrors with parameters//li[contains(@class,'list-group-item') and contains(.,'Test Page Name')]//*[contains(@class,'label-info')]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Pending
    • 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;')]Pending
    • Running assertJavaScriptErrors with parameters//li[contains(@class,'list-group-item') and contains(.,'Test Page Name')]//*[contains(@class,'label-info')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//li[contains(@class,'list-group-item') and contains(.,'Test Page Name')]//*[contains(@class,'label-info')]Pending
    • Running waitForTextCaseInsensitive with parameters//li[contains(@class,'list-group-item') and contains(.,'Test Page Name')]//*[contains(@class,'label-info')]Pending
    • Running assertTextCaseInsensitive with parameters//li[contains(@class,'list-group-item') and contains(.,'Test Page Name')]//*[contains(@class,'label-info')]Pending
    • Running assertJavaScriptErrors with parameters//li[contains(@class,'list-group-item') and contains(.,'Test Page Name')]//*[contains(@class,'label-info')]
    • Running assertLiferayErrors
  • Running WaitForPageLoad
    • Running waitForJavaScriptNoError with parameters return document.readyState === "complete"; Page is still loading.
    • Running verifyJavaScript with parameters return document.readyState === "complete"; Page is still loading.
  • Running Click with locator1//li[contains(.,'Test Page Name')]//*[*[name()='svg'][contains(@class,'ellipsis-v')]]
    • 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(.,'Test Page Name')]//*[*[name()='svg'][contains(@class,'ellipsis-v')]]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//li[contains(.,'Test Page Name')]//*[*[name()='svg'][contains(@class,'ellipsis-v')]]
    • Running mouseOver with parameters//li[contains(.,'Test Page Name')]//*[*[name()='svg'][contains(@class,'ellipsis-v')]]
    • Running click with parameters//li[contains(.,'Test Page Name')]//*[*[name()='svg'][contains(@class,'ellipsis-v')]]
    • Running assertJavaScriptErrors with parameters//li[contains(.,'Test Page Name')]//*[*[name()='svg'][contains(@class,'ellipsis-v')]]
    • Running assertLiferayErrors
  • Running AssertElementNotPresent with locator1xpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="Edit"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="Edit"]
    • 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 parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="Edit"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="Edit"]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="Edit"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="Edit"]
    • Running assertElementNotPresent with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="Edit"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="Edit"]
    • Running assertJavaScriptErrors with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="Edit"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="Edit"]
    • Running assertLiferayErrors
  • Running AssertVisible with locator1xpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="Preview"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="Preview"]
    • 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 parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="Preview"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="Preview"]
    • Running assertLiferayErrors
    • Running waitForVisible with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="Preview"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="Preview"]
    • Running assertVisible with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="Preview"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="Preview"]
    • Running assertJavaScriptErrors with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="Preview"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="Preview"]
    • Running assertLiferayErrors
  • Running Click with locator1xpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="Preview"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="Preview"]
    • 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 parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="Preview"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="Preview"]
    • Running assertLiferayErrors
    • Running waitForVisible with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="Preview"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="Preview"]
    • Running mouseOver with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="Preview"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="Preview"]
    • Running click with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="Preview"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="Preview"]
    • Running assertJavaScriptErrors with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())="Preview"] | //ul[contains(@class,'dropdown-menu') and contains(@class,'show')]//li//*[normalize-space(text())="Preview"]
    • Running assertLiferayErrors
  • Running AssertElementNotPresent with locator1//*[*[name()='svg'][contains(@class,'lexicon-icon-pencil')]]
    • 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//*[*[name()='svg'][contains(@class,'lexicon-icon-pencil')]]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//*[*[name()='svg'][contains(@class,'lexicon-icon-pencil')]]
    • Running assertElementNotPresent with parameters//*[*[name()='svg'][contains(@class,'lexicon-icon-pencil')]]
    • Running assertJavaScriptErrors with parameters//*[*[name()='svg'][contains(@class,'lexicon-icon-pencil')]]
    • Running assertLiferayErrors
  • Running AssertTextEquals with locator1xpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'element-text')] with value1New editable fragment text
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]New editable fragment text
    • 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 editable fragment text
    • Running assertJavaScriptErrors with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'element-text')]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]New editable fragment text
    • 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 editable fragment text
    • Running assertJavaScriptErrors with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'element-text')]
    • Running assertLiferayErrors
    • Running waitForVisible with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'element-text')]New editable fragment text
    • Running waitForTextCaseInsensitive with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'element-text')]New editable fragment text
    • Running assertTextCaseInsensitive with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'element-text')]New editable fragment text
    • Running assertJavaScriptErrors with parametersxpath=(//div[contains(@id,'fragment-')][.//*[contains(@class,'heading')]])[1]//*[contains(@data-lfr-editable-id,'element-text')]
    • Running assertLiferayErrors
  • LocalFile.ContentPagesWithWorkflow#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//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 isElementNotPresent with parameters//span[contains(@class,'sign-in')]/a/span
  • Running IsElementPresent with locator1//button//img[contains(@src,'user_portrait')]
    • 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//img[contains(@src,'user_portrait')]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//button//img[contains(@src,'user_portrait')]
  • Running IsElementPresent with locator1//button[contains(@data-toggle,'dropdown')]//span[contains(@class,'user-icon')]
    • 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[contains(@data-toggle,'dropdown')]//span[contains(@class,'user-icon')]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//button[contains(@data-toggle,'dropdown')]//span[contains(@class,'user-icon')]
  • Running Click#waitForPersonalMenuJSClick with locator1//span[@class='user-avatar-link']//span[*[name()='svg'][contains(@class,'lexicon-icon-user')]]
    • 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']//span[*[name()='svg'][contains(@class,'lexicon-icon-user')]]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//script[contains(@src,'personal_menu/js/PersonalMenu.es.js')]
    • Running pause with parameters3000
    • 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']//span[*[name()='svg'][contains(@class,'lexicon-icon-user')]]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//span[@class='user-avatar-link']//span[*[name()='svg'][contains(@class,'lexicon-icon-user')]]
    • Running mouseOver with parameters//span[@class='user-avatar-link']//span[*[name()='svg'][contains(@class,'lexicon-icon-user')]]
    • Running click with parameters//span[@class='user-avatar-link']//span[*[name()='svg'][contains(@class,'lexicon-icon-user')]]
    • Running assertJavaScriptErrors with parameters//span[@class='user-avatar-link']//span[*[name()='svg'][contains(@class,'lexicon-icon-user')]]
    • Running assertLiferayErrors
    • Running assertJavaScriptErrors with parameters//span[@class='user-avatar-link']//span[*[name()='svg'][contains(@class,'lexicon-icon-user')]]
    • Running assertLiferayErrors
  • Running AssertVisible with locator1//*[contains(@class,'dropdown-menu') and contains(@class,'show')]
    • 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//*[contains(@class,'dropdown-menu') and contains(@class,'show')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//*[contains(@class,'dropdown-menu') and contains(@class,'show')]
    • Running assertVisible with parameters//*[contains(@class,'dropdown-menu') and contains(@class,'show')]
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'dropdown-menu') and contains(@class,'show')]
    • Running assertLiferayErrors
  • Running ScrollWebElementIntoView with locator1//a[contains(@class,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • 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,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//a[contains(@class,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • Running scrollWebElementIntoView with parameters//a[contains(@class,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • Running assertJavaScriptErrors with parameters//a[contains(@class,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • Running assertLiferayErrors
  • Running Click with locator1//a[contains(@class,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • 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,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//a[contains(@class,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • Running mouseOver with parameters//a[contains(@class,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • Running click with parameters//a[contains(@class,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • Running assertJavaScriptErrors with parameters//a[contains(@class,'dropdown-item')][contains(.,'Sign Out') or contains(.,'Salir')]
    • Running assertLiferayErrors
  • Running post with parametersArg: ${curl}Return: {"agreedToTermsOfUse":true,"comments":"","companyId":"20099","contactId":"20129","createDate":1638353082504,"ctCollectionId":"0","defaultUser":false,"emailAddress":"[email protected]","emailAddressVerified":true,"externalReferenceCode":"","facebookId":"0","failedLoginAttempts":0,"firstName":"Test","googleUserId":"","graceLoginCount":0,"greeting":"Welcome Test Test!","jobTitle":"","languageId":"en_US","lastFailedLoginDate":null,"lastLoginDate":1638357252341,"lastLoginIP":"127.0.0.1","lastName":"Test","ldapServerId":"-1","lockout":false,"lockoutDate":null,"loginDate":1638357368435,"loginIP":"127.0.0.1","middleName":"","modifiedDate":1638357461663,"mvccVersion":"51","openId":"","portraitId":"0","reminderQueryAnswer":"test","reminderQueryQuestion":"what-is-your-father's-middle-name","screenName":"test","status":0,"timeZoneId":"UTC","userId":"20127","uuid":"5fad0dc5-0b72-d730-0534-1bcbaa8b8df2"}Finished executing commands.
  • Running post with parametersArg: ${curl}Return: {"agreedToTermsOfUse":true,"comments":"","companyId":"20099","contactId":"20129","createDate":1638353082504,"ctCollectionId":"0","defaultUser":false,"emailAddress":"[email protected]","emailAddressVerified":true,"externalReferenceCode":"","facebookId":"0","failedLoginAttempts":0,"firstName":"Test","googleUserId":"","graceLoginCount":0,"greeting":"Welcome Test Test!","jobTitle":"","languageId":"en_US","lastFailedLoginDate":null,"lastLoginDate":1638357252341,"lastLoginIP":"127.0.0.1","lastName":"Test","ldapServerId":"-1","lockout":false,"lockoutDate":null,"loginDate":1638357368435,"loginIP":"127.0.0.1","middleName":"","modifiedDate":1638357461897,"mvccVersion":"52","openId":"","portraitId":"0","reminderQueryAnswer":"test","reminderQueryQuestion":"what-is-your-father's-middle-name","screenName":"test","status":0,"timeZoneId":"UTC","userId":"20127","uuid":"5fad0dc5-0b72-d730-0534-1bcbaa8b8df2"}Finished executing commands.
  • Running Open with locator1http://localhost:8080/web/[email protected]
    • 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/[email protected]
    • Running assertLiferayErrors
    • Running selectWindow with parameters
    • Running selectFrame with parametersrelative=top
    • Running open with parametershttp://localhost:8080/web/[email protected]
    • 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/[email protected]
    • 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/[email protected]
    • 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')]]/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')]]/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')]]/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 Pause with locator13000
    • 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 parameters3000
    • Running assertLiferayErrors
    • Running pause with parameters3000
  • 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, }; }
  • Running post with parametersArg: ${curl}Return: {}Finished executing commands.
  • Running post with parametersArg: ${curl}Return: {}Finished executing commands.
  • ## * GroupId: 40669
  • Running post with parametersArg: ${curl}Return: {}Finished executing commands.
  • LocalFile.ContentPagesWithWorkflow#PreviewModificationButCannotEditAfterSubmitAsPageAuthor

    • 9
      setUp {
      • 10
        task ("Set up instance and sign in") {
        • 11
          TestCase.setUpPortalInstance();
          • 116
            var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
          • 117
            var testPortalInstance = PropsUtil.get("test.portal.instance");
          • 119
            if (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}"))) {
            • 120
              HeadlessPortalInstanceAPI.cleanAllPortalInstances(authenticationMethod = "${authenticationMethod}");
              • 108
                var portalInstanceJSON = HeadlessPortalInstanceAPI._getPortalInstances(authenticationMethod = "${authenticationMethod}");
                • 5
                  var portalURL = JSONCompany.getDefaultPortalURL();
                  • 41
                    var portalURL = PropsUtil.get("default.portal.url");
                  • 43
                    if (!(contains("${portalURL}", "http"))) {
                    • 44
                      var portalURL = "http://${portalURL}";
                    }
                  • 47
                    return "${portalURL}";
                • 7
                  if ("${authenticationMethod}" == "By Screen Name") {
                  • 8
                    var userName = "test";
                  }
                • 10
                  else {
                  • 11
                    var userName = "[email protected]";
                  }
                • 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}";
              • 110
                var portalInstanceIds = JSONUtil.getWithJSONPath("${portalInstanceJSON}","$.items..portalInstanceId");
              • 112
                for (var portalInstanceId : list "${portalInstanceIds}") {
                • 113
                  if ("${portalInstanceId}" != "liferay.com") {
                  • 114
                    HeadlessPortalInstanceAPI.deletePortalInstance( authenticationMethod = "${authenticationMethod}", portalInstanceId = "${portalInstanceId}");
                    • 123
                      Variables.assertDefined(parameterList = "${portalInstanceId}");
                      • 5
                        if (contains("${parameterList}","{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}'");
                          }
                        }
                    • 125
                      var portalURL = JSONCompany.getDefaultPortalURL();
                      • 41
                        var portalURL = PropsUtil.get("default.portal.url");
                      • 43
                        if (!(contains("${portalURL}", "http"))) {
                        • 44
                          var portalURL = "http://${portalURL}";
                        }
                      • 47
                        return "${portalURL}";
                    • 127
                      var portalInstanceId = StringUtil.replace("${portalInstanceId}", " ", "%20");
                    • 129
                      if ("${authenticationMethod}" == "By Screen Name") {
                      • 130
                        var userName = "test";
                      }
                    • 132
                      else {
                      • 133
                        var userName = "[email protected]";
                      }
                    • 136
                      var curl = ''' ${portalURL}/o/headless-portal-instances/v1.0/portal-instances/${portalInstanceId} \ -u ${userName}:test \ -H Content-Type: application/json ''';
                    • 142
                      JSONCurlUtil.delete("${curl}");
                  }
                }
            • 122
              if ("${testPortalInstance}" == "true") {
              • 123
                SignIn.signInPortalInstanceSetUp();
                • 3
                  var userEmailAddress = "[email protected]";
                • 4
                  var userPassword = "test";
                • 5
                  var userPasswordReminderAnswer = "test";
                • 48
                  var portalURL = PropsUtil.get("portal.url");
                • 49
                  var portalURL = StringUtil.replace("${portalURL}", "http://", "");
                • 50
                  var portalURL = StringUtil.replace("${portalURL}", ":8080", "");
                • 52
                  HeadlessPortalInstanceAPI.addPortalInstance( authenticationMethod = "${authenticationMethod}", domain = "liferay.com", portalInstanceId = "${portalURL}", virtualHost = "${portalURL}");
                  • 27
                    Variables.assertDefined(parameterList = "${domain},${virtualHost},${portalInstanceId}");
                    • 5
                      if (contains("${parameterList}","{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();
                    • 41
                      var portalURL = PropsUtil.get("default.portal.url");
                    • 43
                      if (!(contains("${portalURL}", "http"))) {
                      • 44
                        var portalURL = "http://${portalURL}";
                      }
                    • 47
                      return "${portalURL}";
                  • 31
                    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}");
                      • 132
                        var temp = RegexUtil.replace("${JSON}","\"(${key})\"\s*:\s*","1");
                      • 134
                        if ("${temp}" == "${key}") {
                        • 135
                          return "TRUE";
                        }
                      • 137
                        else {
                        • 138
                          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}";
                  • 36
                    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}");
                      • 132
                        var temp = RegexUtil.replace("${JSON}","\"(${key})\"\s*:\s*","1");
                      • 134
                        if ("${temp}" == "${key}") {
                        • 135
                          return "TRUE";
                        }
                      • 137
                        else {
                        • 138
                          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}";
                  • 41
                    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}");
                      • 132
                        var temp = RegexUtil.replace("${JSON}","\"(${key})\"\s*:\s*","1");
                      • 134
                        if ("${temp}" == "${key}") {
                        • 135
                          return "TRUE";
                        }
                      • 137
                        else {
                        • 138
                          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}";
                  • 46
                    if ("${authenticationMethod}" == "By Screen Name") {
                    • 47
                      var userName = "test";
                    }
                  • 49
                    else {
                    • 50
                      var userName = "[email protected]";
                    }
                  • 53
                    var curl = ''' ${portalURL}/o/headless-portal-instances/v1.0/portal-instances \ -u ${userName}:test \ -d ${parameters} \ -H Content-Type: application/json ''';
                  • 60
                    JSONCurlUtil.post("${curl}");
              }
            }
        • 13
          User.firstLoginPG();
          • 3
            var password = "test";
          • 4
            var userEmailAddress = "[email protected]";
          • 1933
            if (isSet(virtualHostsURL)) {
            • 1934
              Navigator.openSpecificURL(url = "${virtualHostsURL}");
              • 295
                Open(locator1 = "${url}");
              • 297
                Alert.confirmSecurity();
                • 16
                  if (IsElementPresent(key_title="Your connection is not private", locator1 = "Header#H1_TITLE")) {
                  • 17
                    Click(locator1 = "Button#ADVANCED");
                  • 19
                    AssertElementPresent( key_text = "Proceed to localhost", locator1 = "Link#ANY");
                  • 23
                    Click( key_text = "Proceed to localhost (unsafe)", locator1 = "Link#ANY");
                  }
            }
          • 1936
            else {
            • 1937
              Navigator.openURL();
              • 347
                WaitForSPARefresh();
              • 349
                var baseURL = "${baseURL}";
              • 351
                if (contains("${baseURL}", "{baseURL}")) {
                • 352
                  var baseURL = PropsUtil.get("portal.url");
                }
              • 355
                Open(locator1 = "${baseURL}/web/guest/home");
            }
          • 1940
            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");
              }
          • 1942
            JSONUser.agreeToTermsAndAnswerReminderQuery( portalURL = "${virtualHostsURL}", userEmailAddress = "${userEmailAddress}");
            • 172
              Variables.assertDefined(parameterList = "${userEmailAddress}");
              • 5
                if (contains("${parameterList}","{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}'");
                  }
                }
            • 174
              var portalInstanceName = JSONUserSetter.setPortalInstanceName(portalURL = "${portalURL}");
              • 35
                if (isSet(portalURL)) {
                • 36
                  var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                  • 73
                    Variables.assertDefined(parameterList = "${portalURL}");
                    • 5
                      if (contains("${parameterList}","{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}'");
                        }
                      }
                  • 75
                    var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                  • 76
                    var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                  • 78
                    return "${portalInstanceName}";
                }
              • 39
                return "${portalInstanceName}";
            • 176
              var userId = JSONUserSetter.setUserId( portalInstanceName = "${portalInstanceName}", userEmailAddress = "${userEmailAddress}");
              • 90
                Variables.assertDefined(parameterList = "${userEmailAddress}");
                • 5
                  if (contains("${parameterList}","{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}'");
                    }
                  }
              • 92
                var userId = JSONUserAPI._getUserIdByEmailAddress( creatorEmailAddress = "${creatorEmailAddress}", creatorPassword = "${creatorPassword}", portalInstanceName = "${portalInstanceName}", userEmailAddress = "${userEmailAddress}");
                • 209
                  Variables.assertDefined(parameterList = "${userEmailAddress}");
                  • 5
                    if (contains("${parameterList}","{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}'");
                      }
                    }
                • 211
                  var companyId = JSONCompany.getCompanyId( creatorEmailAddress = "${creatorEmailAddress}", creatorPassword = "${creatorPassword}", portalInstanceName = "${portalInstanceName}");
                  • 4
                    if (!(isSet(portalInstanceName))) {
                    • 5
                      var portalInstanceName = JSONCompany.getPortalInstanceName();
                      • 51
                        var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                      • 52
                        var testPortalInstance = PropsUtil.get("test.portal.instance");
                      • 54
                        if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                        • 55
                          var portalURL = JSONCompany.getPortalURL();
                          • 67
                            var portalURL = PropsUtil.get("portal.url");
                          • 69
                            return "${portalURL}";
                        • 57
                          var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                          • 73
                            Variables.assertDefined(parameterList = "${portalURL}");
                            • 5
                              if (contains("${parameterList}","{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}'");
                                }
                              }
                          • 75
                            var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                          • 76
                            var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                          • 78
                            return "${portalInstanceName}";
                        • 59
                          return "${portalInstanceName}";
                        }
                      • 61
                        else {
                        • 62
                          return "localhost";
                        }
                    }
                  • 8
                    if (!(isSet(portalURL))) {
                    • 9
                      var portalURL = JSONCompany.getPortalURL();
                      • 67
                        var portalURL = PropsUtil.get("portal.url");
                      • 69
                        return "${portalURL}";
                    }
                  • 12
                    if (!(isSet(creatorEmailAddress))) {
                    • 13
                      if ("${authenticationMethod}" == "By Screen Name") {
                      • 14
                        if (!(isSet(userScreenName))) {
                        • 15
                          var creatorEmailAddress = "test";
                        }
                      • 17
                        else {
                        • 18
                          var creatorEmailAddress = "${userScreenName}";
                        }
                      }
                    • 21
                      else {
                      • 22
                        var creatorEmailAddress = "[email protected]";
                      }
                    }
                  • 26
                    if (!(isSet(creatorPassword))) {
                    • 27
                      var creatorPassword = "test";
                    }
                  • 30
                    var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                  • 35
                    var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                  • 37
                    return "${companyId}";
                • 216
                  if (isSet(specificURL)) {
                  • 217
                    var portalURL = "${specificURL}";
                  }
                • 219
                  else {
                  • 220
                    var portalURL = JSONCompany.getPortalURL();
                    • 67
                      var portalURL = PropsUtil.get("portal.url");
                    • 69
                      return "${portalURL}";
                  }
                • 223
                  if (!(isSet(creatorEmailAddress))) {
                  • 224
                    var creatorEmailAddress = "[email protected]";
                  }
                • 227
                  if (!(isSet(creatorPassword))) {
                  • 228
                    var creatorPassword = "test";
                  }
                • 231
                  var curl = ''' ${portalURL}/api/jsonws/user/get-user-by-email-address/company-id/${companyId}/email-address/${userEmailAddress} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                • 236
                  var userId = JSONCurlUtil.get("${curl}", "$['userId']");
                • 238
                  return "${userId}";
              • 98
                return "${userId}";
            • 180
              JSONUserAPI._agreeToTermsAndAnswerReminderQuery(userId = "${userId}");
              • 89
                Variables.assertDefined(parameterList = "${userId}");
                • 5
                  if (contains("${parameterList}","{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();
                  • 67
                    var portalURL = PropsUtil.get("portal.url");
                  • 69
                    return "${portalURL}";
                }
              • 98
                var curl = ''' ${portalURL}/api/jsonws/user/update-agreed-to-terms-of-use/user-id/${userId}/agreed-to-terms-of-use/true \ -u [email protected]:test ''';
              • 103
                com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
              • 105
                var curl = ''' ${portalURL}/api/jsonws/user/update-reminder-query/user-id/${userId}/question/what-is-your-father%27s-middle-name/answer/test \ -u [email protected]:test ''';
              • 110
                com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
          • 1946
            if (isSet(virtualHostsURL)) {
            • 1947
              Navigator.openSpecificURL(url = "${virtualHostsURL}/web/guest?SM_USER=${userEmailAddress}");
              • 295
                Open(locator1 = "${url}");
              • 297
                Alert.confirmSecurity();
                • 16
                  if (IsElementPresent(key_title="Your connection is not private", locator1 = "Header#H1_TITLE")) {
                  • 17
                    Click(locator1 = "Button#ADVANCED");
                  • 19
                    AssertElementPresent( key_text = "Proceed to localhost", locator1 = "Link#ANY");
                  • 23
                    Click( key_text = "Proceed to localhost (unsafe)", locator1 = "Link#ANY");
                  }
            }
          • 1949
            else {
            • 1950
              var baseURL = PropsUtil.get("portal.url");
            • 1952
              Navigator.openSpecificURL(url = "${baseURL}/web/guest?SM_USER=${userEmailAddress}");
              • 295
                Open(locator1 = "${url}");
              • 297
                Alert.confirmSecurity();
                • 16
                  if (IsElementPresent(key_title="Your connection is not private", locator1 = "Header#H1_TITLE")) {
                  • 17
                    Click(locator1 = "Button#ADVANCED");
                  • 19
                    AssertElementPresent( key_text = "Proceed to localhost", locator1 = "Link#ANY");
                  • 23
                    Click( key_text = "Proceed to localhost (unsafe)", locator1 = "Link#ANY");
                  }
            }
          • 1957
            User.resetPassword( resetPassword = "${resetPassword}", setupWizardEnabled = "${setupWizardEnabled}", syntaxCheckingEnabled = "${syntaxCheckingEnabled}");
            • 3
              var password = "test";
            • 4
              var userEmailAddress = "[email protected]";
            • 2470
              if (IsElementPresent.pauseIsElementPresent(locator1 = "TextInput#PASSWORD")) {
              • 2471
                if ("${syntaxCheckingEnabled}" == "true") {
                • 2472
                  Type( locator1 = "TextInput#PASSWORD_1", value1 = "${resetPassword}");
                • 2476
                  Type( locator1 = "TextInput#PASSWORD_2", value1 = "${resetPassword}");
                }
              • 2480
                else {
                • 2481
                  if ("${setupWizardEnabled}" == "true") {
                  • 2482
                    Type( locator1 = "TextInput#PASSWORD_1", value1 = "test2");
                  • 2486
                    Type( locator1 = "TextInput#PASSWORD_2", value1 = "test2");
                  }
                • 2490
                  else {
                  • 2491
                    Type( locator1 = "TextInput#PASSWORD_1", value1 = "test");
                  • 2495
                    Type( locator1 = "TextInput#PASSWORD_2", value1 = "test");
                  }
                }
              • 2501
                Button.clickSubmitButton();
                • 118
                  Click(locator1 = "Button#SUBMIT");
              • 2503
                AssertElementNotPresent(locator1 = "TextInput#ENTER_AGAIN");
              }
          • 1962
            User.answerPasswordReminder();
            • 3
              var password = "test";
            • 4
              var userEmailAddress = "[email protected]";
            • 747
              Pause(locator1 = "3000");
            • 749
              if (IsElementPresent.pauseIsElementPresent(locator1 = "TextInput#REMINDER_QUERY")) {
              • 750
                Type( locator1 = "TextInput#REMINDER_QUERY", value1 = "test");
              • 754
                Click(locator1 = "Button#SUBMIT");
              }
          • 1964
            if (IsElementNotPresent(locator1 = "UserBar#USER_AVATAR_IMAGE")) {
            • 1965
              takeScreenshot();
            • 1967
              echo("URL login failed, falling back to UI login.");
            • 1969
              User.firstLoginUI( idpName = "${idpName}", password = "${password}", rememberMeChecked = "${rememberMeChecked}", specificURL = "${virtualHostsURL}", userEmailAddress = "${userEmailAddress}", userScreenName = "${userScreenName}");
              • 3
                var password = "test";
              • 4
                var userEmailAddress = "[email protected]";
              • 1984
                if (isSet(specificURL)) {
                • 1985
                  Navigator.openSpecificURL(url = "${specificURL}");
                  • 295
                    Open(locator1 = "${url}");
                  • 297
                    Alert.confirmSecurity();
                    • 16
                      if (IsElementPresent(key_title="Your connection is not private", locator1 = "Header#H1_TITLE")) {
                      • 17
                        Click(locator1 = "Button#ADVANCED");
                      • 19
                        AssertElementPresent( key_text = "Proceed to localhost", locator1 = "Link#ANY");
                      • 23
                        Click( key_text = "Proceed to localhost (unsafe)", locator1 = "Link#ANY");
                      }
                }
              • 1987
                else {
                • 1988
                  Navigator.openURL();
                  • 347
                    WaitForSPARefresh();
                  • 349
                    var baseURL = "${baseURL}";
                  • 351
                    if (contains("${baseURL}", "{baseURL}")) {
                    • 352
                      var baseURL = PropsUtil.get("portal.url");
                    }
                  • 355
                    Open(locator1 = "${baseURL}/web/guest/home");
                }
              • 1991
                User._clickSignInLink( idpName = "${idpName}", localization = "${localization}", samlMultiIdPs = "${samlMultiIdPs}");
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "[email protected]";
                • 13
                  var localizedSignIn = User._getSignInText(localization = "${localization}");
                  • 3
                    var password = "test";
                  • 4
                    var userEmailAddress = "[email protected]";
                  • 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");
                    }
                  }
              • 1996
                if ("${authenticationMethod}" == "By Screen Name") {
                • 1997
                  Type( locator1 = "TextInput#SCREEN_NAME", value1 = "${userScreenName}");
                }
              • 2001
                else if ("${authenticationMethod}" == "By User ID") {
                • 2002
                  Type.typePause( key_text = "ID", locator1 = "TextInput#ANY", value1 = "${userID}");
                }
              • 2007
                else {
                • 2008
                  Type.typePause( locator1 = "TextInput#EMAIL_ADDRESS", value1 = "${userEmailAddress}");
                }
              • 2013
                Type.typePause( locator1 = "TextInput#PASSWORD", value1 = "${password}");
              • 2017
                if ((isSet(rememberMeChecked)) && ("${rememberMeChecked}" == "true")) {
                • 2018
                  Check(locator1 = "Checkbox#REMEMBER_ME");
                }
              • 2021
                User._clickSignInButton(localization = "${localization}");
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "[email protected]";
                • 7
                  var localizedSignIn = User._getSignInText(localization = "${localization}");
                  • 3
                    var password = "test";
                  • 4
                    var userEmailAddress = "[email protected]";
                  • 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");
              • 2023
                if (isSet(localizedAgree)) {
                • 2024
                  User.acceptEndUserLicenseAgreementLocalized(localizedAgree = "${localizedAgree}");
                  • 3
                    var password = "test";
                  • 4
                    var userEmailAddress = "[email protected]";
                  • 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");
                    }
                }
              • 2027
                else if (IsElementPresent(locator1 = "Button#I_AGREE")) {
                • 2028
                  SignIn.agreeToTermsOfUse();
                  • 3
                    var userEmailAddress = "[email protected]";
                  • 4
                    var userPassword = "test";
                  • 5
                    var userPasswordReminderAnswer = "test";
                  • 24
                    AssertClick( locator1 = "Button#I_AGREE", value1 = "I Agree");
                  • 28
                    AssertElementNotPresent(locator1 = "Button#I_AGREE");
                }
              • 2031
                if (isSet(localizedAnswer)) {
                • 2032
                  User.answerPasswordReminderLocalized( localizedAnswer = "${localizedAnswer}", localizedSaveButton = "${localizedSaveButton}");
                  • 3
                    var password = "test";
                  • 4
                    var userEmailAddress = "[email protected]";
                  • 759
                    Pause(locator1 = "3000");
                  • 761
                    var key_localizedAnswer = "${localizedAnswer}";
                  • 763
                    if (IsElementPresent.pauseIsElementPresent(locator1 = "TextInput#ANSWER_LOCALIZED")) {
                    • 764
                      Type( locator1 = "TextInput#ANSWER_LOCALIZED", value1 = "test");
                    • 768
                      Button.click(button = "${localizedSaveButton}");
                      • 4
                        Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
                    • 770
                      Button.viewNotPresent(button = "${localizedSaveButton}");
                      • 138
                        AssertElementNotPresent( key_text = "${button}", locator1 = "Button#ANY");
                    }
                }
              • 2037
                else if (IsElementPresent(locator1 = "Select#QUESTION")) {
                • 2038
                  SignIn.setPasswordReminder();
                  • 3
                    var userEmailAddress = "[email protected]";
                  • 4
                    var userPassword = "test";
                  • 5
                    var userPasswordReminderAnswer = "test";
                  • 33
                    Type( locator1 = "TextInput#ANSWER", value1 = "${userPasswordReminderAnswer}");
                  • 37
                    Button.clickSave();
                    • 98
                      Button.click(button = "Save");
                      • 4
                        Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
                    • 100
                      WaitForLiferayEvent.initializeLiferayEventLog();
                }
              • 2041
                WaitForLiferayEvent.initializeLiferayEventLog();
            }
          • 1977
            else {
            • 1978
              WaitForLiferayEvent.initializeLiferayEventLog();
            }
        }
      • 16
        task ("Add a site") {
        • 17
          JSONGroup.addGroup(groupName = "Test Site Name");
          • 29
            Variables.assertDefined(parameterList = "${groupName}");
            • 5
              if (contains("${parameterList}","{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}'");
                }
              }
          • 31
            var groupDescriptionMap = JSONGroupSetter.setGroupDescriptionMap( groupDescription = "${groupDescription}");
            • 31
              if (isSet(groupDescription)) {
              • 32
                var groupDescription = URLUtil.encodeUTF8("${groupDescription}");
              • 34
                var groupDescriptionMap = '''{"en_US":"${groupDescriptionEncoded}"}''';
              }
            • 36
              else {
              • 37
                var groupDescriptionMap = "{}";
              }
            • 40
              return "${groupDescriptionMap}";
          • 34
            var groupNameMap = JSONGroupSetter.setGroupNameMap( groupName = "${groupName}");
            • 56
              Variables.assertDefined(parameterList = "${groupName}");
              • 5
                if (contains("${parameterList}","{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}'");
                  }
                }
            • 58
              var groupNameMap = URLUtil.encodeUTF8("${groupName}");
            • 60
              var groupNameMap = '''{"en_US":"${groupName}"}''';
            • 62
              return "${groupNameMap}";
          • 37
            var parentGroupId = JSONGroupSetter.setParentGroupId(groupName = "${parentGroupName}");
            • 82
              if (isSet(parentGroupName)) {
              • 83
                var parentGroupId = JSONGroupAPI._getParentGroupIdByName(groupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                • 253
                  Variables.assertDefined(parameterList = "${groupName}");
                  • 5
                    if (contains("${parameterList}","{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}'");
                      }
                    }
                • 255
                  var companyId = JSONCompany.getCompanyId();
                  • 4
                    if (!(isSet(portalInstanceName))) {
                    • 5
                      var portalInstanceName = JSONCompany.getPortalInstanceName();
                      • 51
                        var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                      • 52
                        var testPortalInstance = PropsUtil.get("test.portal.instance");
                      • 54
                        if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                        • 55
                          var portalURL = JSONCompany.getPortalURL();
                          • 67
                            var portalURL = PropsUtil.get("portal.url");
                          • 69
                            return "${portalURL}";
                        • 57
                          var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                          • 73
                            Variables.assertDefined(parameterList = "${portalURL}");
                            • 5
                              if (contains("${parameterList}","{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}'");
                                }
                              }
                          • 75
                            var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                          • 76
                            var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                          • 78
                            return "${portalInstanceName}";
                        • 59
                          return "${portalInstanceName}";
                        }
                      • 61
                        else {
                        • 62
                          return "localhost";
                        }
                    }
                  • 8
                    if (!(isSet(portalURL))) {
                    • 9
                      var portalURL = JSONCompany.getPortalURL();
                      • 67
                        var portalURL = PropsUtil.get("portal.url");
                      • 69
                        return "${portalURL}";
                    }
                  • 12
                    if (!(isSet(creatorEmailAddress))) {
                    • 13
                      if ("${authenticationMethod}" == "By Screen Name") {
                      • 14
                        if (!(isSet(userScreenName))) {
                        • 15
                          var creatorEmailAddress = "test";
                        }
                      • 17
                        else {
                        • 18
                          var creatorEmailAddress = "${userScreenName}";
                        }
                      }
                    • 21
                      else {
                      • 22
                        var creatorEmailAddress = "[email protected]";
                      }
                    }
                  • 26
                    if (!(isSet(creatorPassword))) {
                    • 27
                      var creatorPassword = "test";
                    }
                  • 30
                    var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                  • 35
                    var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                  • 37
                    return "${companyId}";
                • 257
                  var grandParentGroupId = JSONGroupSetter.setGrandParentGroupId(grandParentGroupName = "${grandParentGroupName}");
                  • 16
                    if (isSet(grandParentGroupName)) {
                    • 17
                      if (!(isSet(site))) {
                      • 18
                        var site = "true";
                      }
                    • 21
                      var grandParentGroupId = JSONGroupAPI._getGrandParentGroupIdByName(groupName = "${grandParentGroupName}", site = "${site}");
                      • 154
                        Variables.assertDefined(parameterList = "${groupName}");
                        • 5
                          if (contains("${parameterList}","{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}'");
                            }
                          }
                      • 156
                        var companyId = JSONCompany.getCompanyId();
                        • 4
                          if (!(isSet(portalInstanceName))) {
                          • 5
                            var portalInstanceName = JSONCompany.getPortalInstanceName();
                            • 51
                              var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                            • 52
                              var testPortalInstance = PropsUtil.get("test.portal.instance");
                            • 54
                              if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                              • 55
                                var portalURL = JSONCompany.getPortalURL();
                                • 67
                                  var portalURL = PropsUtil.get("portal.url");
                                • 69
                                  return "${portalURL}";
                              • 57
                                var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                                • 73
                                  Variables.assertDefined(parameterList = "${portalURL}");
                                  • 5
                                    if (contains("${parameterList}","{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}'");
                                      }
                                    }
                                • 75
                                  var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                                • 76
                                  var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                                • 78
                                  return "${portalInstanceName}";
                              • 59
                                return "${portalInstanceName}";
                              }
                            • 61
                              else {
                              • 62
                                return "localhost";
                              }
                          }
                        • 8
                          if (!(isSet(portalURL))) {
                          • 9
                            var portalURL = JSONCompany.getPortalURL();
                            • 67
                              var portalURL = PropsUtil.get("portal.url");
                            • 69
                              return "${portalURL}";
                          }
                        • 12
                          if (!(isSet(creatorEmailAddress))) {
                          • 13
                            if ("${authenticationMethod}" == "By Screen Name") {
                            • 14
                              if (!(isSet(userScreenName))) {
                              • 15
                                var creatorEmailAddress = "test";
                              }
                            • 17
                              else {
                              • 18
                                var creatorEmailAddress = "${userScreenName}";
                              }
                            }
                          • 21
                            else {
                            • 22
                              var creatorEmailAddress = "[email protected]";
                            }
                          }
                        • 26
                          if (!(isSet(creatorPassword))) {
                          • 27
                            var creatorPassword = "test";
                          }
                        • 30
                          var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                        • 35
                          var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                        • 37
                          return "${companyId}";
                      • 158
                        var portalURL = JSONCompany.getPortalURL();
                        • 67
                          var portalURL = PropsUtil.get("portal.url");
                        • 69
                          return "${portalURL}";
                      • 160
                        if (!(isSet(site))) {
                        • 161
                          var site = "true";
                        }
                      • 164
                        var curl = ''' ${portalURL}/api/jsonws/group/get-groups \ -u [email protected]:test \ -d companyId=${companyId} \ -d parentGroupId=0 \ -d site=${site} ''';
                      • 172
                        var groupId = JSONCurlUtil.post("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                      • 174
                        if ("${groupId}" == "") {
                        • 175
                          fail("FAIL. Cannot find group.");
                        }
                      • 178
                        return "${groupId}";
                    }
                  • 23
                    else {
                    • 24
                      var grandParentGroupId = "0";
                    }
                  • 27
                    return "${grandParentGroupId}";
                • 259
                  var portalURL = JSONCompany.getPortalURL();
                  • 67
                    var portalURL = PropsUtil.get("portal.url");
                  • 69
                    return "${portalURL}";
                • 261
                  var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${grandParentGroupId}/site/true \ -u [email protected]:test ''';
                • 266
                  var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                • 268
                  if ("${groupId}" == "") {
                  • 269
                    fail("FAIL. Cannot find group.");
                  }
                • 272
                  return "${groupId}";
              }
            • 85
              else {
              • 86
                var parentGroupId = "0";
              }
            • 89
              return "${parentGroupId}";
          • 39
            var type = JSONGroupSetter.setMembershipType(membershipType = "${membershipType}");
            • 66
              if ("${membershipType}" == "Private") {
              • 67
                var type = "3";
              }
            • 70
              else if ("${membershipType}" == "Restricted") {
              • 71
                var type = "2";
              }
            • 74
              else {
              • 75
                var type = "1";
              }
            • 78
              return "${type}";
          • 41
            var manualMembership = JSONGroupSetter.setAllowManualMembershipManagement(allowManualMembershipManagement = "${allowManualMembershipManagement}");
            • 4
              if ("${allowManualMembershipManagement}" == "false") {
              • 5
                var manualMembership = "false";
              }
            • 8
              else {
              • 9
                var manualMembership = "true";
              }
            • 12
              return "${manualMembership}";
          • 43
            JSONGroupAPI._addGroup( groupDescriptionMap = "${groupDescriptionMap}", groupNameMap = "${groupNameMap}", manualMembership = "${manualMembership}", parentGroupId = "${parentGroupId}", portalURL = "${portalURL}", type = "${type}");
            • 5
              Variables.assertDefined(parameterList = "${groupDescriptionMap},${groupNameMap},${manualMembership},${parentGroupId},${type}");
              • 5
                if (contains("${parameterList}","{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}'");
                  }
                }
            • 7
              if (!(isSet(portalURL))) {
              • 8
                var portalURL = JSONCompany.getPortalURL();
                • 67
                  var portalURL = PropsUtil.get("portal.url");
                • 69
                  return "${portalURL}";
              }
            • 11
              var curl = ''' ${portalURL}/api/jsonws/group/add-group \ -u [email protected]:test \ -d parentGroupId=${parentGroupId} \ -d liveGroupId=0 \ -d nameMap=${groupNameMap} \ -d descriptionMap=${groupDescriptionMap} \ -d type=${type} \ -d manualMembership=${manualMembership} \ -d membershipRestriction=0 \ -d friendlyURL= \ -d site=true \ -d inheritContent=false \ -d active=true ''';
            • 27
              JSONCurlUtil.post("${curl}");
        }
      • 20
        task ("Add a new user") {
        • 21
          JSONUser.addUser( userEmailAddress = "[email protected]", userFirstName = "userfn", userLastName = "userln", userScreenName = "usersn");
          • 4
            Variables.assertDefined(parameterList = "${userEmailAddress},${userFirstName},${userLastName},${userScreenName}");
            • 5
              if (contains("${parameterList}","{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 locale = JSONUserSetter.setLocale(locale = "${preferredLocale}");
            • 16
              if (!(isSet(locale))) {
              • 17
                var locale = "";
              }
            • 19
              else {
              • 20
                Object.assertValidLocale(locale = "${locale}");
                • 5
                  Variables.assertDefined(parameterList = "${locale}");
                  • 5
                    if (contains("${parameterList}","{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}'");
                      }
                    }
                • 7
                  if (!(contains("ar_SA,ca_AD,zh_CN,zh_TW,cs_CZ,nl_NL,en_US,fr_FR,de_DE,el_GR,hu_HU,it_IT,ja_JP,ko_KR,pt_BR,ru_RU,es_ES,tr_TR,vi_VN", "${locale}"))) {
                  • 8
                    fail("Please use a valid Liferay locale.");
                  }
              }
            • 23
              return "${locale}";
          • 8
            var userFirstName = JSONUserSetter.setUserFirstName(userFirstName = "${userFirstName}");
            • 82
              Variables.assertDefined(parameterList = "${userFirstName}");
              • 5
                if (contains("${parameterList}","{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}'");
                  }
                }
            • 84
              var userFirstName = URLUtil.encodeUTF8("${userFirstName}");
            • 86
              return "${userFirstName}";
          • 10
            var userLastName = JSONUserSetter.setUserLastName(userLastName = "${userLastName}");
            • 113
              Variables.assertDefined(parameterList = "${userLastName}");
              • 5
                if (contains("${parameterList}","{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}'");
                  }
                }
            • 115
              var userLastName = URLUtil.encodeUTF8("${userLastName}");
            • 117
              return "${userLastName}";
          • 12
            var serviceContext = JSONUserSetter.setServiceContext( assetCategoryIds = "${assetCategoryIds}", assetTagNames = "${assetTagNames}", serviceContext = "${serviceContext}", workflowAction = "${workflowAction}");
            • 51
              if (!(isSet(serviceContext))) {
              • 52
                var serviceContext = JSONServiceContextUtil.setServiceContext( addGroupPermissions = "true", addGuestPermissions = "true", assetCategoryIds = "${assetCategoryIds}", assetTagNames = "${assetTagNames}", workflowAction = "${workflowAction}");
                • 114
                  var serviceContext = "{}";
                • 116
                  if (isSet(assetCategoryIds)) {
                  • 117
                    var serviceContext = JSONServiceContextUtil._addAssetCategoryIds( assetCategoryIds = "${assetCategoryIds}", JSON = "${serviceContext}");
                    • 4
                      Variables.assertDefined(parameterList = "${JSON},${assetCategoryIds}");
                      • 5
                        if (contains("${parameterList}","{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 JSON = JSONUtil2._addJSONArray( JSON = "${JSON}", key = "assetCategoryIds");
                      • 5
                        if ((!(isSet(JSON))) || (!(isSet(key)))) {
                        • 6
                          fail("Error, 'JSON' and 'key' must all be set");
                        }
                      • 11
                        var bool = JSONUtil2._isJSONArrayPresent( JSON = "${JSON}", key = "${key}");
                        • 120
                          var temp = RegexUtil.replace("${JSON}","\"(${key})\"\s*:\s*\[.*?\]","1");
                        • 122
                          if ("${temp}" == "${key}") {
                          • 123
                            return "TRUE";
                          }
                        • 125
                          else {
                          • 126
                            return "FALSE";
                          }
                      • 15
                        if ("${bool}" == "TRUE") {
                        • 16
                          echo("JSON array ${key}' already added, returning original JSON");
                        }
                      • 18
                        else {
                        • 19
                          if ("${JSON}" == "{}") {
                          • 20
                            var JSON = '''{"${key}" : []}''';
                          }
                        • 22
                          else {
                          • 23
                            var JSON = StringUtil.regexReplaceFirst("${JSON}","(.*)\}","$1, "${key}": []}");
                          }
                        }
                      • 27
                        return "${JSON}";
                    • 10
                      var JSON = JSONUtil2._addJSONArrayValues( JSON = "${JSON}", key = "assetCategoryIds", values = "${assetCategoryIds}");
                      • 32
                        if ((!(isSet(JSON))) || (!(isSet(key))) || (!(isSet(values)))) {
                        • 33
                          fail("Error, 'JSON', 'key', and 'values' must all be set");
                        }
                      • 36
                        var bool = JSONUtil2._isJSONArrayPresent( JSON = "${JSON}", key = "${key}");
                        • 120
                          var temp = RegexUtil.replace("${JSON}","\"(${key})\"\s*:\s*\[.*?\]","1");
                        • 122
                          if ("${temp}" == "${key}") {
                          • 123
                            return "TRUE";
                          }
                        • 125
                          else {
                          • 126
                            return "FALSE";
                          }
                      • 40
                        if ("${bool}" == "FALSE") {
                        • 41
                          fail("Error, '${key}' does not exist in the JSON");
                        }
                      • 44
                        for (var value : list "${values}") {
                        • 45
                          var temp = RegexUtil.replace("${JSON}","\"${key}\"\s*:\s*(\[.*?\])","1");
                        • 47
                          if (contains(""${temp}"",""${value}"")) {
                          • 48
                            fail("'${value}' already exists inside 'JSON'");
                          }
                        • 51
                          if ("${temp}" == "[]") {
                          • 55
                            var JSON = StringUtil.regexReplaceFirst("${JSON}","(\"${key}\"\s*:\s*)\[\]", "$1["${value}"]");
                          }
                        • 57
                          else {
                          • 58
                            var JSON = StringUtil.regexReplaceFirst("${JSON}","(\"${key}\"\s*:\s*)(\[.*?)\]", "$1$2, "${value}"]");
                          }
                        }
                      • 62
                        return "${JSON}";
                    • 15
                      return "${JSON}";
                  }
                • 122
                  if (isSet(assetTagNames)) {
                  • 123
                    var serviceContext = JSONServiceContextUtil._addAssetTagNames( assetTagNames = "${assetTagNames}", JSON = "${serviceContext}");
                    • 19
                      Variables.assertDefined(parameterList = "${JSON},${assetTagNames}");
                      • 5
                        if (contains("${parameterList}","{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}'");
                          }
                        }
                    • 21
                      var JSON = JSONUtil2._addJSONArray( JSON = "${JSON}", key = "assetTagNames");
                      • 5
                        if ((!(isSet(JSON))) || (!(isSet(key)))) {
                        • 6
                          fail("Error, 'JSON' and 'key' must all be set");
                        }
                      • 11
                        var bool = JSONUtil2._isJSONArrayPresent( JSON = "${JSON}", key = "${key}");
                        • 120
                          var temp = RegexUtil.replace("${JSON}","\"(${key})\"\s*:\s*\[.*?\]","1");
                        • 122
                          if ("${temp}" == "${key}") {
                          • 123
                            return "TRUE";
                          }
                        • 125
                          else {
                          • 126
                            return "FALSE";
                          }
                      • 15
                        if ("${bool}" == "TRUE") {
                        • 16
                          echo("JSON array ${key}' already added, returning original JSON");
                        }
                      • 18
                        else {
                        • 19
                          if ("${JSON}" == "{}") {
                          • 20
                            var JSON = '''{"${key}" : []}''';
                          }
                        • 22
                          else {
                          • 23
                            var JSON = StringUtil.regexReplaceFirst("${JSON}","(.*)\}","$1, "${key}": []}");
                          }
                        }
                      • 27
                        return "${JSON}";
                    • 25
                      var JSON = JSONUtil2._addJSONArrayValues( JSON = "${JSON}", key = "assetTagNames", values = "${assetTagNames}");
                      • 32
                        if ((!(isSet(JSON))) || (!(isSet(key))) || (!(isSet(values)))) {
                        • 33
                          fail("Error, 'JSON', 'key', and 'values' must all be set");
                        }
                      • 36
                        var bool = JSONUtil2._isJSONArrayPresent( JSON = "${JSON}", key = "${key}");
                        • 120
                          var temp = RegexUtil.replace("${JSON}","\"(${key})\"\s*:\s*\[.*?\]","1");
                        • 122
                          if ("${temp}" == "${key}") {
                          • 123
                            return "TRUE";
                          }
                        • 125
                          else {
                          • 126
                            return "FALSE";
                          }
                      • 40
                        if ("${bool}" == "FALSE") {
                        • 41
                          fail("Error, '${key}' does not exist in the JSON");
                        }
                      • 44
                        for (var value : list "${values}") {
                        • 45
                          var temp = RegexUtil.replace("${JSON}","\"${key}\"\s*:\s*(\[.*?\])","1");
                        • 47
                          if (contains(""${temp}"",""${value}"")) {
                          • 48
                            fail("'${value}' already exists inside 'JSON'");
                          }
                        • 51
                          if ("${temp}" == "[]") {
                          • 55
                            var JSON = StringUtil.regexReplaceFirst("${JSON}","(\"${key}\"\s*:\s*)\[\]", "$1["${value}"]");
                          }
                        • 57
                          else {
                          • 58
                            var JSON = StringUtil.regexReplaceFirst("${JSON}","(\"${key}\"\s*:\s*)(\[.*?)\]", "$1$2, "${value}"]");
                          }
                        }
                      • 62
                        return "${JSON}";
                    • 30
                      return "${JSON}";
                  }
                • 128
                  if (isSet(addGroupPermissions)) {
                  • 129
                    var serviceContext = JSONServiceContextUtil._addGroupPermissions( addGroupPermissions = "${addGroupPermissions}", JSON = "${serviceContext}");
                    • 62
                      Variables.assertDefined(parameterList = "${JSON},${addGroupPermissions}");
                      • 5
                        if (contains("${parameterList}","{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}'");
                          }
                        }
                    • 64
                      if (!(("${addGroupPermissions}" == "true") || ("${addGroupPermissions}" == "false"))) {
                      • 65
                        fail("Invalid addGroupPermissions: '${addGroupPermissions}' specified. Allowed values are 'true' or 'false'.");
                      }
                    • 68
                      var JSON = JSONUtil2._addJSONObject( JSON = "${JSON}", key = "addGroupPermissions", value = "${addGroupPermissions}");
                      • 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}");
                        • 132
                          var temp = RegexUtil.replace("${JSON}","\"(${key})\"\s*:\s*","1");
                        • 134
                          if ("${temp}" == "${key}") {
                          • 135
                            return "TRUE";
                          }
                        • 137
                          else {
                          • 138
                            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}";
                    • 73
                      return "${JSON}";
                  }
                • 134
                  if (isSet(addGuestPermissions)) {
                  • 135
                    var serviceContext = JSONServiceContextUtil._addGuestPermissions( addGuestPermissions = "${addGuestPermissions}", JSON = "${serviceContext}");
                    • 77
                      Variables.assertDefined(parameterList = "${JSON},${addGuestPermissions}");
                      • 5
                        if (contains("${parameterList}","{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}'");
                          }
                        }
                    • 79
                      if (!(("${addGuestPermissions}" == "true") || ("${addGuestPermissions}" == "false"))) {
                      • 80
                        fail("Invalid addGuestPermissions: '${addGuestPermissions}' specified. Allowed values are 'true' or 'false'.");
                      }
                    • 83
                      var JSON = JSONUtil2._addJSONObject( JSON = "${JSON}", key = "addGuestPermissions", value = "${addGuestPermissions}");
                      • 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}");
                        • 132
                          var temp = RegexUtil.replace("${JSON}","\"(${key})\"\s*:\s*","1");
                        • 134
                          if ("${temp}" == "${key}") {
                          • 135
                            return "TRUE";
                          }
                        • 137
                          else {
                          • 138
                            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}";
                    • 88
                      return "${JSON}";
                  }
                • 140
                  if (isSet(attributes)) {
                  • 141
                    var serviceContext = JSONServiceContextUtil._addAttributes( attributes = "${attributes}", JSON = "${serviceContext}");
                    • 34
                      Variables.assertDefined(parameterList = "${JSON},${attributes}");
                      • 5
                        if (contains("${parameterList}","{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}'");
                          }
                        }
                    • 36
                      var JSON = JSONUtil2._addJSONObject( JSON = "${JSON}", key = "attributes", value = "${attributes}");
                      • 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}");
                        • 132
                          var temp = RegexUtil.replace("${JSON}","\"(${key})\"\s*:\s*","1");
                        • 134
                          if ("${temp}" == "${key}") {
                          • 135
                            return "TRUE";
                          }
                        • 137
                          else {
                          • 138
                            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}";
                    • 41
                      return "${JSON}";
                  }
                • 146
                  if (isSet(groupName)) {
                  • 147
                    var serviceContext = JSONServiceContextUtil._addGroupId( groupName = "${groupName}", JSON = "${serviceContext}", site = "${site}");
                    • 45
                      Variables.assertDefined(parameterList = "${groupName},${JSON}");
                      • 5
                        if (contains("${parameterList}","{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}'");
                          }
                        }
                    • 47
                      if (!(isSet(site))) {
                      • 48
                        var site = "true";
                      }
                    • 51
                      var groupId = JSONGroupAPI._getGroupIdByName(groupName = "${groupName}", site = "${site}");
                      • 207
                        Variables.assertDefined(parameterList = "${groupName},${site}");
                        • 5
                          if (contains("${parameterList}","{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}'");
                            }
                          }
                      • 209
                        if (!(isSet(portalURL))) {
                        • 210
                          var portalURL = JSONCompany.getPortalURL();
                          • 67
                            var portalURL = PropsUtil.get("portal.url");
                          • 69
                            return "${portalURL}";
                        }
                      • 213
                        var companyId = JSONCompany.getCompanyId(portalURL = "${portalURL}");
                        • 4
                          if (!(isSet(portalInstanceName))) {
                          • 5
                            var portalInstanceName = JSONCompany.getPortalInstanceName();
                            • 51
                              var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                            • 52
                              var testPortalInstance = PropsUtil.get("test.portal.instance");
                            • 54
                              if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                              • 55
                                var portalURL = JSONCompany.getPortalURL();
                                • 67
                                  var portalURL = PropsUtil.get("portal.url");
                                • 69
                                  return "${portalURL}";
                              • 57
                                var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                                • 73
                                  Variables.assertDefined(parameterList = "${portalURL}");
                                  • 5
                                    if (contains("${parameterList}","{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}'");
                                      }
                                    }
                                • 75
                                  var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                                • 76
                                  var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                                • 78
                                  return "${portalInstanceName}";
                              • 59
                                return "${portalInstanceName}";
                              }
                            • 61
                              else {
                              • 62
                                return "localhost";
                              }
                          }
                        • 8
                          if (!(isSet(portalURL))) {
                          • 9
                            var portalURL = JSONCompany.getPortalURL();
                            • 67
                              var portalURL = PropsUtil.get("portal.url");
                            • 69
                              return "${portalURL}";
                          }
                        • 12
                          if (!(isSet(creatorEmailAddress))) {
                          • 13
                            if ("${authenticationMethod}" == "By Screen Name") {
                            • 14
                              if (!(isSet(userScreenName))) {
                              • 15
                                var creatorEmailAddress = "test";
                              }
                            • 17
                              else {
                              • 18
                                var creatorEmailAddress = "${userScreenName}";
                              }
                            }
                          • 21
                            else {
                            • 22
                              var creatorEmailAddress = "[email protected]";
                            }
                          }
                        • 26
                          if (!(isSet(creatorPassword))) {
                          • 27
                            var creatorPassword = "test";
                          }
                        • 30
                          var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                        • 35
                          var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                        • 37
                          return "${companyId}";
                      • 215
                        var parentGroupId = JSONGroupSetter.setParentGroupId(parentGroupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                        • 82
                          if (isSet(parentGroupName)) {
                          • 83
                            var parentGroupId = JSONGroupAPI._getParentGroupIdByName(groupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                            • 253
                              Variables.assertDefined(parameterList = "${groupName}");
                              • 5
                                if (contains("${parameterList}","{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}'");
                                  }
                                }
                            • 255
                              var companyId = JSONCompany.getCompanyId();
                              • 4
                                if (!(isSet(portalInstanceName))) {
                                • 5
                                  var portalInstanceName = JSONCompany.getPortalInstanceName();
                                  • 51
                                    var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                                  • 52
                                    var testPortalInstance = PropsUtil.get("test.portal.instance");
                                  • 54
                                    if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                                    • 55
                                      var portalURL = JSONCompany.getPortalURL();
                                      • 67
                                        var portalURL = PropsUtil.get("portal.url");
                                      • 69
                                        return "${portalURL}";
                                    • 57
                                      var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                                      • 73
                                        Variables.assertDefined(parameterList = "${portalURL}");
                                        • 5
                                          if (contains("${parameterList}","{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}'");
                                            }
                                          }
                                      • 75
                                        var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                                      • 76
                                        var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                                      • 78
                                        return "${portalInstanceName}";
                                    • 59
                                      return "${portalInstanceName}";
                                    }
                                  • 61
                                    else {
                                    • 62
                                      return "localhost";
                                    }
                                }
                              • 8
                                if (!(isSet(portalURL))) {
                                • 9
                                  var portalURL = JSONCompany.getPortalURL();
                                  • 67
                                    var portalURL = PropsUtil.get("portal.url");
                                  • 69
                                    return "${portalURL}";
                                }
                              • 12
                                if (!(isSet(creatorEmailAddress))) {
                                • 13
                                  if ("${authenticationMethod}" == "By Screen Name") {
                                  • 14
                                    if (!(isSet(userScreenName))) {
                                    • 15
                                      var creatorEmailAddress = "test";
                                    }
                                  • 17
                                    else {
                                    • 18
                                      var creatorEmailAddress = "${userScreenName}";
                                    }
                                  }
                                • 21
                                  else {
                                  • 22
                                    var creatorEmailAddress = "[email protected]";
                                  }
                                }
                              • 26
                                if (!(isSet(creatorPassword))) {
                                • 27
                                  var creatorPassword = "test";
                                }
                              • 30
                                var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                              • 35
                                var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                              • 37
                                return "${companyId}";
                            • 257
                              var grandParentGroupId = JSONGroupSetter.setGrandParentGroupId(grandParentGroupName = "${grandParentGroupName}");
                              • 16
                                if (isSet(grandParentGroupName)) {
                                • 17
                                  if (!(isSet(site))) {
                                  • 18
                                    var site = "true";
                                  }
                                • 21
                                  var grandParentGroupId = JSONGroupAPI._getGrandParentGroupIdByName(groupName = "${grandParentGroupName}", site = "${site}");
                                  • 154
                                    Variables.assertDefined(parameterList = "${groupName}");
                                    • 5
                                      if (contains("${parameterList}","{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}'");
                                        }
                                      }
                                  • 156
                                    var companyId = JSONCompany.getCompanyId();
                                    • 4
                                      if (!(isSet(portalInstanceName))) {
                                      • 5
                                        var portalInstanceName = JSONCompany.getPortalInstanceName();
                                        • 51
                                          var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                                        • 52
                                          var testPortalInstance = PropsUtil.get("test.portal.instance");
                                        • 54
                                          if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                                          • 55
                                            var portalURL = JSONCompany.getPortalURL();
                                            • 67
                                              var portalURL = PropsUtil.get("portal.url");
                                            • 69
                                              return "${portalURL}";
                                          • 57
                                            var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                                            • 73
                                              Variables.assertDefined(parameterList = "${portalURL}");
                                              • 5
                                                if (contains("${parameterList}","{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}'");
                                                  }
                                                }
                                            • 75
                                              var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                                            • 76
                                              var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                                            • 78
                                              return "${portalInstanceName}";
                                          • 59
                                            return "${portalInstanceName}";
                                          }
                                        • 61
                                          else {
                                          • 62
                                            return "localhost";
                                          }
                                      }
                                    • 8
                                      if (!(isSet(portalURL))) {
                                      • 9
                                        var portalURL = JSONCompany.getPortalURL();
                                        • 67
                                          var portalURL = PropsUtil.get("portal.url");
                                        • 69
                                          return "${portalURL}";
                                      }
                                    • 12
                                      if (!(isSet(creatorEmailAddress))) {
                                      • 13
                                        if ("${authenticationMethod}" == "By Screen Name") {
                                        • 14
                                          if (!(isSet(userScreenName))) {
                                          • 15
                                            var creatorEmailAddress = "test";
                                          }
                                        • 17
                                          else {
                                          • 18
                                            var creatorEmailAddress = "${userScreenName}";
                                          }
                                        }
                                      • 21
                                        else {
                                        • 22
                                          var creatorEmailAddress = "[email protected]";
                                        }
                                      }
                                    • 26
                                      if (!(isSet(creatorPassword))) {
                                      • 27
                                        var creatorPassword = "test";
                                      }
                                    • 30
                                      var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                                    • 35
                                      var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                                    • 37
                                      return "${companyId}";
                                  • 158
                                    var portalURL = JSONCompany.getPortalURL();
                                    • 67
                                      var portalURL = PropsUtil.get("portal.url");
                                    • 69
                                      return "${portalURL}";
                                  • 160
                                    if (!(isSet(site))) {
                                    • 161
                                      var site = "true";
                                    }
                                  • 164
                                    var curl = ''' ${portalURL}/api/jsonws/group/get-groups \ -u [email protected]:test \ -d companyId=${companyId} \ -d parentGroupId=0 \ -d site=${site} ''';
                                  • 172
                                    var groupId = JSONCurlUtil.post("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                                  • 174
                                    if ("${groupId}" == "") {
                                    • 175
                                      fail("FAIL. Cannot find group.");
                                    }
                                  • 178
                                    return "${groupId}";
                                }
                              • 23
                                else {
                                • 24
                                  var grandParentGroupId = "0";
                                }
                              • 27
                                return "${grandParentGroupId}";
                            • 259
                              var portalURL = JSONCompany.getPortalURL();
                              • 67
                                var portalURL = PropsUtil.get("portal.url");
                              • 69
                                return "${portalURL}";
                            • 261
                              var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${grandParentGroupId}/site/true \ -u [email protected]:test ''';
                            • 266
                              var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                            • 268
                              if ("${groupId}" == "") {
                              • 269
                                fail("FAIL. Cannot find group.");
                              }
                            • 272
                              return "${groupId}";
                          }
                        • 85
                          else {
                          • 86
                            var parentGroupId = "0";
                          }
                        • 89
                          return "${parentGroupId}";
                      • 217
                        var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${parentGroupId}/site/${site} \ -u [email protected]:test ''';
                      • 222
                        var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                      • 224
                        if ("${groupId}" == "") {
                        • 225
                          fail("FAIL. Cannot find group.");
                        }
                      • 228
                        echo("## * GroupId: ${groupId}");
                      • 230
                        return "${groupId}";
                    • 53
                      var JSON = JSONUtil2._addJSONObject( JSON = "${JSON}", key = "scopeGroupId", value = "${groupId}");
                      • 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}");
                        • 132
                          var temp = RegexUtil.replace("${JSON}","\"(${key})\"\s*:\s*","1");
                        • 134
                          if ("${temp}" == "${key}") {
                          • 135
                            return "TRUE";
                          }
                        • 137
                          else {
                          • 138
                            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}";
                    • 58
                      return "${JSON}";
                  }
                • 153
                  if (isSet(workflowAction)) {
                  • 154
                    var serviceContext = JSONServiceContextUtil._addWorkflowAction( JSON = "${serviceContext}", workflowAction = "${workflowAction}");
                    • 93
                      Variables.assertDefined(parameterList = "${JSON},${workflowAction}");
                      • 5
                        if (contains("${parameterList}","{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
                      if ("${workflowAction}" == "DRAFT") {
                      • 96
                        var workflowActionNumber = "2";
                      }
                    • 98
                      else if ("${workflowAction}" == "PUBLISH") {
                      • 99
                        var workflowActionNumber = "1";
                      }
                    • 101
                      else {
                      • 102
                        fail("Invalid workflowAction: '${workflowAction}' specified. Allowed values are 'DRAFT' or 'PUBLISH'.");
                      }
                    • 105
                      var JSON = JSONUtil2._addJSONObject( JSON = "${JSON}", key = "workflowAction", value = "${workflowActionNumber}");
                      • 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}");
                        • 132
                          var temp = RegexUtil.replace("${JSON}","\"(${key})\"\s*:\s*","1");
                        • 134
                          if ("${temp}" == "${key}") {
                          • 135
                            return "TRUE";
                          }
                        • 137
                          else {
                          • 138
                            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}";
                    • 110
                      return "${JSON}";
                  }
                • 159
                  return "${serviceContext}";
              }
            • 60
              return "${serviceContext}";
          • 18
            if (!(isSet(birthdayDay))) {
            • 19
              var birthdayDay = "31";
            }
          • 22
            if (!(isSet(birthdayMonth))) {
            • 23
              var birthdayMonth = "4";
            }
          • 26
            if (!(isSet(birthdayYear))) {
            • 27
              var birthdayYear = "1986";
            }
          • 30
            if (!(isSet(jobTitle))) {
            • 31
              var jobTitle = "";
            }
          • 34
            if (!(isSet(creatorEmailAddress))) {
            • 35
              var creatorEmailAddress = "[email protected]";
            }
          • 38
            if (!(isSet(creatorPassword))) {
            • 39
              var creatorPassword = "test";
            }
          • 42
            JSONUserAPI._addUser( birthdayDay = "${birthdayDay}", birthdayMonth = "${birthdayMonth}", birthdayYear = "${birthdayYear}", creatorEmailAddress = "${creatorEmailAddress}", creatorPassword = "${creatorPassword}", jobTitle = "${jobTitle}", locale = "${locale}", portalInstanceName = "${portalInstanceName}", serviceContext = "${serviceContext}", specificURL = "${specificURL}", userEmailAddress = "${userEmailAddress}", userFirstName = "${userFirstName}", userLastName = "${userLastName}", userScreenName = "${userScreenName}");
            • 4
              Variables.assertDefined(parameterList = "${locale},${userEmailAddress},${userFirstName},${userLastName},${userScreenName}");
              • 5
                if (contains("${parameterList}","{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
              if (isSet(specificURL)) {
              • 7
                var portalURL = "${specificURL}";
              }
            • 9
              else {
              • 10
                var portalURL = JSONCompany.getPortalURL();
                • 67
                  var portalURL = PropsUtil.get("portal.url");
                • 69
                  return "${portalURL}";
              }
            • 13
              var companyId = JSONCompany.getCompanyId( portalInstanceName = "${portalInstanceName}", creatorEmailAddress = "${creatorEmailAddress}", portalURL = "${portalURL}");
              • 4
                if (!(isSet(portalInstanceName))) {
                • 5
                  var portalInstanceName = JSONCompany.getPortalInstanceName();
                  • 51
                    var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                  • 52
                    var testPortalInstance = PropsUtil.get("test.portal.instance");
                  • 54
                    if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                    • 55
                      var portalURL = JSONCompany.getPortalURL();
                      • 67
                        var portalURL = PropsUtil.get("portal.url");
                      • 69
                        return "${portalURL}";
                    • 57
                      var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                      • 73
                        Variables.assertDefined(parameterList = "${portalURL}");
                        • 5
                          if (contains("${parameterList}","{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}'");
                            }
                          }
                      • 75
                        var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                      • 76
                        var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                      • 78
                        return "${portalInstanceName}";
                    • 59
                      return "${portalInstanceName}";
                    }
                  • 61
                    else {
                    • 62
                      return "localhost";
                    }
                }
              • 8
                if (!(isSet(portalURL))) {
                • 9
                  var portalURL = JSONCompany.getPortalURL();
                  • 67
                    var portalURL = PropsUtil.get("portal.url");
                  • 69
                    return "${portalURL}";
                }
              • 12
                if (!(isSet(creatorEmailAddress))) {
                • 13
                  if ("${authenticationMethod}" == "By Screen Name") {
                  • 14
                    if (!(isSet(userScreenName))) {
                    • 15
                      var creatorEmailAddress = "test";
                    }
                  • 17
                    else {
                    • 18
                      var creatorEmailAddress = "${userScreenName}";
                    }
                  }
                • 21
                  else {
                  • 22
                    var creatorEmailAddress = "[email protected]";
                  }
                }
              • 26
                if (!(isSet(creatorPassword))) {
                • 27
                  var creatorPassword = "test";
                }
              • 30
                var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
              • 35
                var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
              • 37
                return "${companyId}";
            • 18
              var curl = ''' ${portalURL}/api/jsonws/user/add-user \ -u ${creatorEmailAddress}:${creatorPassword} \ -d companyId=${companyId} \ -d autoPassword=false \ -d password1=initPassword \ -d password2=initPassword \ -d autoScreenName=false \ -d screenName=${userScreenName} \ -d emailAddress=${userEmailAddress} \ -d facebookId=0 \ -d openId= \ -d locale=${locale} \ -d firstName=${userFirstName} \ -d middleName= \ -d lastName=${userLastName} \ -d prefixId=0 \ -d suffixId=0 \ -d male=true \ -d birthdayMonth=${birthdayMonth} \ -d birthdayDay=${birthdayDay} \ -d birthdayYear=${birthdayYear} \ -d jobTitle=${jobTitle} \ -d groupIds= \ -d organizationIds= \ -d roleIds= \ -d userGroupIds= \ -d sendEmail=true \ -d serviceContext=${serviceContext} ''';
            • 49
              com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
          • 58
            JSONUserAPI._disablePasswordChangeRequired();
            • 165
              if (isSet(specificURL)) {
              • 166
                var portalURL = "${specificURL}";
              }
            • 168
              else {
              • 169
                var portalURL = JSONCompany.getPortalURL();
                • 67
                  var portalURL = PropsUtil.get("portal.url");
                • 69
                  return "${portalURL}";
              }
            • 172
              var passwordPolicyId = JSONPasswordPolicy.getPasswordPolicyIdByName(passwordPolicyName = "Default Password Policy");
              • 4
                Variables.assertDefined(parameterList = "${passwordPolicyName}");
                • 5
                  if (contains("${parameterList}","{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();
                • 4
                  if (!(isSet(portalInstanceName))) {
                  • 5
                    var portalInstanceName = JSONCompany.getPortalInstanceName();
                    • 51
                      var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                    • 52
                      var testPortalInstance = PropsUtil.get("test.portal.instance");
                    • 54
                      if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                      • 55
                        var portalURL = JSONCompany.getPortalURL();
                        • 67
                          var portalURL = PropsUtil.get("portal.url");
                        • 69
                          return "${portalURL}";
                      • 57
                        var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                        • 73
                          Variables.assertDefined(parameterList = "${portalURL}");
                          • 5
                            if (contains("${parameterList}","{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}'");
                              }
                            }
                        • 75
                          var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                        • 76
                          var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                        • 78
                          return "${portalInstanceName}";
                      • 59
                        return "${portalInstanceName}";
                      }
                    • 61
                      else {
                      • 62
                        return "localhost";
                      }
                  }
                • 8
                  if (!(isSet(portalURL))) {
                  • 9
                    var portalURL = JSONCompany.getPortalURL();
                    • 67
                      var portalURL = PropsUtil.get("portal.url");
                    • 69
                      return "${portalURL}";
                  }
                • 12
                  if (!(isSet(creatorEmailAddress))) {
                  • 13
                    if ("${authenticationMethod}" == "By Screen Name") {
                    • 14
                      if (!(isSet(userScreenName))) {
                      • 15
                        var creatorEmailAddress = "test";
                      }
                    • 17
                      else {
                      • 18
                        var creatorEmailAddress = "${userScreenName}";
                      }
                    }
                  • 21
                    else {
                    • 22
                      var creatorEmailAddress = "[email protected]";
                    }
                  }
                • 26
                  if (!(isSet(creatorPassword))) {
                  • 27
                    var creatorPassword = "test";
                  }
                • 30
                  var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                • 35
                  var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                • 37
                  return "${companyId}";
              • 8
                var portalURL = JSONCompany.getPortalURL();
                • 67
                  var portalURL = PropsUtil.get("portal.url");
                • 69
                  return "${portalURL}";
              • 10
                var curl = ''' ${portalURL}/api/jsonws/passwordpolicy/search \ -u [email protected]:test -d companyId=${companyId} \ -d "name=${passwordPolicyName}" \ -d "start=-1" \ -d "end=-1" \ -d -orderByComparator= ''';
              • 20
                var passwordPolicyId = JSONCurlUtil.post("${curl}", "$.[?(@['name'] == '${passwordPolicyName}')]['passwordPolicyId']");
              • 22
                return "${passwordPolicyId}";
            • 174
              var curl = ''' ${portalURL}/api/jsonws/passwordpolicy/update-password-policy \ -u [email protected]:test \ -d passwordPolicyId=${passwordPolicyId} \ -d name='Default Password Policy' \ -d description='Default Password Policy' \ -d changeable=true \ -d changeRequired=false \ -d minAge=0 \ -d checkSyntax=false \ -d allowDictionaryWords=true \ -d minAlphanumeric=0 \ -d minLength=6 \ -d minLowerCase=0 \ -d minNumbers=1 \ -d minSymbols=0 \ -d minUpperCase=1 \ -d regex="(?=.{4})(?:[a-zA-Z0-9]*)" \ -d history=false \ -d historyCount=6 \ -d expireable=false \ -d maxAge=8640000 \ -d warningTime=86400 \ -d graceLimit=0 \ -d lockout=false \ -d maxFailure=3 \ -d lockoutDuration=0 \ -d resetFailureCount=600 \ -d resetTicketMaxAge=86400 ''';
            • 205
              com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
        • 27
          JSONUser.setFirstPassword( agreeToTermsAndAnswerReminderQuery = "true", requireReset = "false", userEmailAddress = "[email protected]");
          • 228
            Variables.assertDefined(parameterList = "${userEmailAddress}");
            • 5
              if (contains("${parameterList}","{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}'");
                }
              }
          • 230
            var newPassword = JSONUserSetter.setNewPassword(newPassword = "${newPassword}");
            • 27
              if (!(isSet(newPassword))) {
              • 28
                var newPassword = "test";
              }
            • 31
              return "${newPassword}";
          • 232
            var requireReset = JSONUserSetter.setRequireReset(requireReset = "${requireReset}");
            • 43
              if (!(isSet(requireReset))) {
              • 44
                var requireReset = "true";
              }
            • 47
              return "${requireReset}";
          • 234
            var userId = JSONUserSetter.setUserId(userEmailAddress = "${userEmailAddress}");
            • 90
              Variables.assertDefined(parameterList = "${userEmailAddress}");
              • 5
                if (contains("${parameterList}","{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}'");
                  }
                }
            • 92
              var userId = JSONUserAPI._getUserIdByEmailAddress( creatorEmailAddress = "${creatorEmailAddress}", creatorPassword = "${creatorPassword}", portalInstanceName = "${portalInstanceName}", userEmailAddress = "${userEmailAddress}");
              • 209
                Variables.assertDefined(parameterList = "${userEmailAddress}");
                • 5
                  if (contains("${parameterList}","{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}'");
                    }
                  }
              • 211
                var companyId = JSONCompany.getCompanyId( creatorEmailAddress = "${creatorEmailAddress}", creatorPassword = "${creatorPassword}", portalInstanceName = "${portalInstanceName}");
                • 4
                  if (!(isSet(portalInstanceName))) {
                  • 5
                    var portalInstanceName = JSONCompany.getPortalInstanceName();
                    • 51
                      var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                    • 52
                      var testPortalInstance = PropsUtil.get("test.portal.instance");
                    • 54
                      if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                      • 55
                        var portalURL = JSONCompany.getPortalURL();
                        • 67
                          var portalURL = PropsUtil.get("portal.url");
                        • 69
                          return "${portalURL}";
                      • 57
                        var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                        • 73
                          Variables.assertDefined(parameterList = "${portalURL}");
                          • 5
                            if (contains("${parameterList}","{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}'");
                              }
                            }
                        • 75
                          var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                        • 76
                          var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                        • 78
                          return "${portalInstanceName}";
                      • 59
                        return "${portalInstanceName}";
                      }
                    • 61
                      else {
                      • 62
                        return "localhost";
                      }
                  }
                • 8
                  if (!(isSet(portalURL))) {
                  • 9
                    var portalURL = JSONCompany.getPortalURL();
                    • 67
                      var portalURL = PropsUtil.get("portal.url");
                    • 69
                      return "${portalURL}";
                  }
                • 12
                  if (!(isSet(creatorEmailAddress))) {
                  • 13
                    if ("${authenticationMethod}" == "By Screen Name") {
                    • 14
                      if (!(isSet(userScreenName))) {
                      • 15
                        var creatorEmailAddress = "test";
                      }
                    • 17
                      else {
                      • 18
                        var creatorEmailAddress = "${userScreenName}";
                      }
                    }
                  • 21
                    else {
                    • 22
                      var creatorEmailAddress = "[email protected]";
                    }
                  }
                • 26
                  if (!(isSet(creatorPassword))) {
                  • 27
                    var creatorPassword = "test";
                  }
                • 30
                  var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                • 35
                  var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                • 37
                  return "${companyId}";
              • 216
                if (isSet(specificURL)) {
                • 217
                  var portalURL = "${specificURL}";
                }
              • 219
                else {
                • 220
                  var portalURL = JSONCompany.getPortalURL();
                  • 67
                    var portalURL = PropsUtil.get("portal.url");
                  • 69
                    return "${portalURL}";
                }
              • 223
                if (!(isSet(creatorEmailAddress))) {
                • 224
                  var creatorEmailAddress = "[email protected]";
                }
              • 227
                if (!(isSet(creatorPassword))) {
                • 228
                  var creatorPassword = "test";
                }
              • 231
                var curl = ''' ${portalURL}/api/jsonws/user/get-user-by-email-address/company-id/${companyId}/email-address/${userEmailAddress} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
              • 236
                var userId = JSONCurlUtil.get("${curl}", "$['userId']");
              • 238
                return "${userId}";
            • 98
              return "${userId}";
          • 236
            JSONUserAPI._updatePassword( newPassword = "${newPassword}", requireReset = "${requireReset}", userId = "${userId}");
            • 324
              Variables.assertDefined(parameterList = "${userId},${newPassword},${requireReset}");
              • 5
                if (contains("${parameterList}","{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}'");
                  }
                }
            • 326
              if (isSet(specificURL)) {
              • 327
                var portalURL = "${specificURL}";
              }
            • 329
              else {
              • 330
                var portalURL = JSONCompany.getPortalURL();
                • 67
                  var portalURL = PropsUtil.get("portal.url");
                • 69
                  return "${portalURL}";
              }
            • 333
              var curl = ''' ${portalURL}/api/jsonws/user/update-password \ -u [email protected]:test \ -d userId=${userId} \ -d password1=${newPassword} \ -d password2=${newPassword} \ -d passwordReset=${requireReset} ''';
            • 342
              com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
          • 241
            if ("${requireReset}" == "false") {
            • 242
              JSONUserAPI._disablePasswordChangeRequired();
              • 165
                if (isSet(specificURL)) {
                • 166
                  var portalURL = "${specificURL}";
                }
              • 168
                else {
                • 169
                  var portalURL = JSONCompany.getPortalURL();
                  • 67
                    var portalURL = PropsUtil.get("portal.url");
                  • 69
                    return "${portalURL}";
                }
              • 172
                var passwordPolicyId = JSONPasswordPolicy.getPasswordPolicyIdByName(passwordPolicyName = "Default Password Policy");
                • 4
                  Variables.assertDefined(parameterList = "${passwordPolicyName}");
                  • 5
                    if (contains("${parameterList}","{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();
                  • 4
                    if (!(isSet(portalInstanceName))) {
                    • 5
                      var portalInstanceName = JSONCompany.getPortalInstanceName();
                      • 51
                        var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                      • 52
                        var testPortalInstance = PropsUtil.get("test.portal.instance");
                      • 54
                        if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                        • 55
                          var portalURL = JSONCompany.getPortalURL();
                          • 67
                            var portalURL = PropsUtil.get("portal.url");
                          • 69
                            return "${portalURL}";
                        • 57
                          var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                          • 73
                            Variables.assertDefined(parameterList = "${portalURL}");
                            • 5
                              if (contains("${parameterList}","{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}'");
                                }
                              }
                          • 75
                            var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                          • 76
                            var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                          • 78
                            return "${portalInstanceName}";
                        • 59
                          return "${portalInstanceName}";
                        }
                      • 61
                        else {
                        • 62
                          return "localhost";
                        }
                    }
                  • 8
                    if (!(isSet(portalURL))) {
                    • 9
                      var portalURL = JSONCompany.getPortalURL();
                      • 67
                        var portalURL = PropsUtil.get("portal.url");
                      • 69
                        return "${portalURL}";
                    }
                  • 12
                    if (!(isSet(creatorEmailAddress))) {
                    • 13
                      if ("${authenticationMethod}" == "By Screen Name") {
                      • 14
                        if (!(isSet(userScreenName))) {
                        • 15
                          var creatorEmailAddress = "test";
                        }
                      • 17
                        else {
                        • 18
                          var creatorEmailAddress = "${userScreenName}";
                        }
                      }
                    • 21
                      else {
                      • 22
                        var creatorEmailAddress = "[email protected]";
                      }
                    }
                  • 26
                    if (!(isSet(creatorPassword))) {
                    • 27
                      var creatorPassword = "test";
                    }
                  • 30
                    var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                  • 35
                    var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                  • 37
                    return "${companyId}";
                • 8
                  var portalURL = JSONCompany.getPortalURL();
                  • 67
                    var portalURL = PropsUtil.get("portal.url");
                  • 69
                    return "${portalURL}";
                • 10
                  var curl = ''' ${portalURL}/api/jsonws/passwordpolicy/search \ -u [email protected]:test -d companyId=${companyId} \ -d "name=${passwordPolicyName}" \ -d "start=-1" \ -d "end=-1" \ -d -orderByComparator= ''';
                • 20
                  var passwordPolicyId = JSONCurlUtil.post("${curl}", "$.[?(@['name'] == '${passwordPolicyName}')]['passwordPolicyId']");
                • 22
                  return "${passwordPolicyId}";
              • 174
                var curl = ''' ${portalURL}/api/jsonws/passwordpolicy/update-password-policy \ -u [email protected]:test \ -d passwordPolicyId=${passwordPolicyId} \ -d name='Default Password Policy' \ -d description='Default Password Policy' \ -d changeable=true \ -d changeRequired=false \ -d minAge=0 \ -d checkSyntax=false \ -d allowDictionaryWords=true \ -d minAlphanumeric=0 \ -d minLength=6 \ -d minLowerCase=0 \ -d minNumbers=1 \ -d minSymbols=0 \ -d minUpperCase=1 \ -d regex="(?=.{4})(?:[a-zA-Z0-9]*)" \ -d history=false \ -d historyCount=6 \ -d expireable=false \ -d maxAge=8640000 \ -d warningTime=86400 \ -d graceLimit=0 \ -d lockout=false \ -d maxFailure=3 \ -d lockoutDuration=0 \ -d resetFailureCount=600 \ -d resetTicketMaxAge=86400 ''';
              • 205
                com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
            }
          • 245
            if ("${agreeToTermsAndAnswerReminderQuery}" == "true") {
            • 246
              JSONUserAPI._agreeToTermsAndAnswerReminderQuery(userId = "${userId}");
              • 89
                Variables.assertDefined(parameterList = "${userId}");
                • 5
                  if (contains("${parameterList}","{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();
                  • 67
                    var portalURL = PropsUtil.get("portal.url");
                  • 69
                    return "${portalURL}";
                }
              • 98
                var curl = ''' ${portalURL}/api/jsonws/user/update-agreed-to-terms-of-use/user-id/${userId}/agreed-to-terms-of-use/true \ -u [email protected]:test ''';
              • 103
                com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
              • 105
                var curl = ''' ${portalURL}/api/jsonws/user/update-reminder-query/user-id/${userId}/question/what-is-your-father%27s-middle-name/answer/test \ -u [email protected]:test ''';
              • 110
                com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
            }
        }
      • 33
        task ("Assign the new user to site") {
        • 34
          JSONGroup.assignUserToGroup( groupName = "Test Site Name", userEmailAddress = "[email protected]");
          • 80
            Variables.assertDefined(parameterList = "${groupName},${userEmailAddress}");
            • 5
              if (contains("${parameterList}","{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}'");
                }
              }
          • 82
            var groupId = JSONGroupSetter.setGroupId(groupName = "${groupName}", parentGroupName = "${parentGroupName}");
            • 44
              Variables.assertDefined(parameterList = "${groupName}");
              • 5
                if (contains("${parameterList}","{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}'");
                  }
                }
            • 46
              if (!(isSet(site))) {
              • 47
                var site = "true";
              }
            • 50
              var groupId = JSONGroupAPI._getGroupIdByName(groupName = "${groupName}", parentGroupName = "${parentGroupName}", portalURL = "${portalURL}", site = "${site}");
              • 207
                Variables.assertDefined(parameterList = "${groupName},${site}");
                • 5
                  if (contains("${parameterList}","{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}'");
                    }
                  }
              • 209
                if (!(isSet(portalURL))) {
                • 210
                  var portalURL = JSONCompany.getPortalURL();
                  • 67
                    var portalURL = PropsUtil.get("portal.url");
                  • 69
                    return "${portalURL}";
                }
              • 213
                var companyId = JSONCompany.getCompanyId(portalURL = "${portalURL}");
                • 4
                  if (!(isSet(portalInstanceName))) {
                  • 5
                    var portalInstanceName = JSONCompany.getPortalInstanceName();
                    • 51
                      var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                    • 52
                      var testPortalInstance = PropsUtil.get("test.portal.instance");
                    • 54
                      if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                      • 55
                        var portalURL = JSONCompany.getPortalURL();
                        • 67
                          var portalURL = PropsUtil.get("portal.url");
                        • 69
                          return "${portalURL}";
                      • 57
                        var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                        • 73
                          Variables.assertDefined(parameterList = "${portalURL}");
                          • 5
                            if (contains("${parameterList}","{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}'");
                              }
                            }
                        • 75
                          var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                        • 76
                          var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                        • 78
                          return "${portalInstanceName}";
                      • 59
                        return "${portalInstanceName}";
                      }
                    • 61
                      else {
                      • 62
                        return "localhost";
                      }
                  }
                • 8
                  if (!(isSet(portalURL))) {
                  • 9
                    var portalURL = JSONCompany.getPortalURL();
                    • 67
                      var portalURL = PropsUtil.get("portal.url");
                    • 69
                      return "${portalURL}";
                  }
                • 12
                  if (!(isSet(creatorEmailAddress))) {
                  • 13
                    if ("${authenticationMethod}" == "By Screen Name") {
                    • 14
                      if (!(isSet(userScreenName))) {
                      • 15
                        var creatorEmailAddress = "test";
                      }
                    • 17
                      else {
                      • 18
                        var creatorEmailAddress = "${userScreenName}";
                      }
                    }
                  • 21
                    else {
                    • 22
                      var creatorEmailAddress = "[email protected]";
                    }
                  }
                • 26
                  if (!(isSet(creatorPassword))) {
                  • 27
                    var creatorPassword = "test";
                  }
                • 30
                  var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                • 35
                  var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                • 37
                  return "${companyId}";
              • 215
                var parentGroupId = JSONGroupSetter.setParentGroupId(parentGroupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                • 82
                  if (isSet(parentGroupName)) {
                  • 83
                    var parentGroupId = JSONGroupAPI._getParentGroupIdByName(groupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                    • 253
                      Variables.assertDefined(parameterList = "${groupName}");
                      • 5
                        if (contains("${parameterList}","{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}'");
                          }
                        }
                    • 255
                      var companyId = JSONCompany.getCompanyId();
                      • 4
                        if (!(isSet(portalInstanceName))) {
                        • 5
                          var portalInstanceName = JSONCompany.getPortalInstanceName();
                          • 51
                            var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                          • 52
                            var testPortalInstance = PropsUtil.get("test.portal.instance");
                          • 54
                            if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                            • 55
                              var portalURL = JSONCompany.getPortalURL();
                              • 67
                                var portalURL = PropsUtil.get("portal.url");
                              • 69
                                return "${portalURL}";
                            • 57
                              var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                              • 73
                                Variables.assertDefined(parameterList = "${portalURL}");
                                • 5
                                  if (contains("${parameterList}","{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}'");
                                    }
                                  }
                              • 75
                                var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                              • 76
                                var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                              • 78
                                return "${portalInstanceName}";
                            • 59
                              return "${portalInstanceName}";
                            }
                          • 61
                            else {
                            • 62
                              return "localhost";
                            }
                        }
                      • 8
                        if (!(isSet(portalURL))) {
                        • 9
                          var portalURL = JSONCompany.getPortalURL();
                          • 67
                            var portalURL = PropsUtil.get("portal.url");
                          • 69
                            return "${portalURL}";
                        }
                      • 12
                        if (!(isSet(creatorEmailAddress))) {
                        • 13
                          if ("${authenticationMethod}" == "By Screen Name") {
                          • 14
                            if (!(isSet(userScreenName))) {
                            • 15
                              var creatorEmailAddress = "test";
                            }
                          • 17
                            else {
                            • 18
                              var creatorEmailAddress = "${userScreenName}";
                            }
                          }
                        • 21
                          else {
                          • 22
                            var creatorEmailAddress = "[email protected]";
                          }
                        }
                      • 26
                        if (!(isSet(creatorPassword))) {
                        • 27
                          var creatorPassword = "test";
                        }
                      • 30
                        var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                      • 35
                        var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                      • 37
                        return "${companyId}";
                    • 257
                      var grandParentGroupId = JSONGroupSetter.setGrandParentGroupId(grandParentGroupName = "${grandParentGroupName}");
                      • 16
                        if (isSet(grandParentGroupName)) {
                        • 17
                          if (!(isSet(site))) {
                          • 18
                            var site = "true";
                          }
                        • 21
                          var grandParentGroupId = JSONGroupAPI._getGrandParentGroupIdByName(groupName = "${grandParentGroupName}", site = "${site}");
                          • 154
                            Variables.assertDefined(parameterList = "${groupName}");
                            • 5
                              if (contains("${parameterList}","{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}'");
                                }
                              }
                          • 156
                            var companyId = JSONCompany.getCompanyId();
                            • 4
                              if (!(isSet(portalInstanceName))) {
                              • 5
                                var portalInstanceName = JSONCompany.getPortalInstanceName();
                                • 51
                                  var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                                • 52
                                  var testPortalInstance = PropsUtil.get("test.portal.instance");
                                • 54
                                  if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                                  • 55
                                    var portalURL = JSONCompany.getPortalURL();
                                    • 67
                                      var portalURL = PropsUtil.get("portal.url");
                                    • 69
                                      return "${portalURL}";
                                  • 57
                                    var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                                    • 73
                                      Variables.assertDefined(parameterList = "${portalURL}");
                                      • 5
                                        if (contains("${parameterList}","{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}'");
                                          }
                                        }
                                    • 75
                                      var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                                    • 76
                                      var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                                    • 78
                                      return "${portalInstanceName}";
                                  • 59
                                    return "${portalInstanceName}";
                                  }
                                • 61
                                  else {
                                  • 62
                                    return "localhost";
                                  }
                              }
                            • 8
                              if (!(isSet(portalURL))) {
                              • 9
                                var portalURL = JSONCompany.getPortalURL();
                                • 67
                                  var portalURL = PropsUtil.get("portal.url");
                                • 69
                                  return "${portalURL}";
                              }
                            • 12
                              if (!(isSet(creatorEmailAddress))) {
                              • 13
                                if ("${authenticationMethod}" == "By Screen Name") {
                                • 14
                                  if (!(isSet(userScreenName))) {
                                  • 15
                                    var creatorEmailAddress = "test";
                                  }
                                • 17
                                  else {
                                  • 18
                                    var creatorEmailAddress = "${userScreenName}";
                                  }
                                }
                              • 21
                                else {
                                • 22
                                  var creatorEmailAddress = "[email protected]";
                                }
                              }
                            • 26
                              if (!(isSet(creatorPassword))) {
                              • 27
                                var creatorPassword = "test";
                              }
                            • 30
                              var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                            • 35
                              var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                            • 37
                              return "${companyId}";
                          • 158
                            var portalURL = JSONCompany.getPortalURL();
                            • 67
                              var portalURL = PropsUtil.get("portal.url");
                            • 69
                              return "${portalURL}";
                          • 160
                            if (!(isSet(site))) {
                            • 161
                              var site = "true";
                            }
                          • 164
                            var curl = ''' ${portalURL}/api/jsonws/group/get-groups \ -u [email protected]:test \ -d companyId=${companyId} \ -d parentGroupId=0 \ -d site=${site} ''';
                          • 172
                            var groupId = JSONCurlUtil.post("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                          • 174
                            if ("${groupId}" == "") {
                            • 175
                              fail("FAIL. Cannot find group.");
                            }
                          • 178
                            return "${groupId}";
                        }
                      • 23
                        else {
                        • 24
                          var grandParentGroupId = "0";
                        }
                      • 27
                        return "${grandParentGroupId}";
                    • 259
                      var portalURL = JSONCompany.getPortalURL();
                      • 67
                        var portalURL = PropsUtil.get("portal.url");
                      • 69
                        return "${portalURL}";
                    • 261
                      var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${grandParentGroupId}/site/true \ -u [email protected]:test ''';
                    • 266
                      var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                    • 268
                      if ("${groupId}" == "") {
                      • 269
                        fail("FAIL. Cannot find group.");
                      }
                    • 272
                      return "${groupId}";
                  }
                • 85
                  else {
                  • 86
                    var parentGroupId = "0";
                  }
                • 89
                  return "${parentGroupId}";
              • 217
                var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${parentGroupId}/site/${site} \ -u [email protected]:test ''';
              • 222
                var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
              • 224
                if ("${groupId}" == "") {
                • 225
                  fail("FAIL. Cannot find group.");
                }
              • 228
                echo("## * GroupId: ${groupId}");
              • 230
                return "${groupId}";
            • 52
              return "${groupId}";
          • 84
            var userId = JSONUserAPI._getUserIdByEmailAddress(userEmailAddress = "${userEmailAddress}");
            • 209
              Variables.assertDefined(parameterList = "${userEmailAddress}");
              • 5
                if (contains("${parameterList}","{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}'");
                  }
                }
            • 211
              var companyId = JSONCompany.getCompanyId( creatorEmailAddress = "${creatorEmailAddress}", creatorPassword = "${creatorPassword}", portalInstanceName = "${portalInstanceName}");
              • 4
                if (!(isSet(portalInstanceName))) {
                • 5
                  var portalInstanceName = JSONCompany.getPortalInstanceName();
                  • 51
                    var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                  • 52
                    var testPortalInstance = PropsUtil.get("test.portal.instance");
                  • 54
                    if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                    • 55
                      var portalURL = JSONCompany.getPortalURL();
                      • 67
                        var portalURL = PropsUtil.get("portal.url");
                      • 69
                        return "${portalURL}";
                    • 57
                      var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                      • 73
                        Variables.assertDefined(parameterList = "${portalURL}");
                        • 5
                          if (contains("${parameterList}","{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}'");
                            }
                          }
                      • 75
                        var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                      • 76
                        var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                      • 78
                        return "${portalInstanceName}";
                    • 59
                      return "${portalInstanceName}";
                    }
                  • 61
                    else {
                    • 62
                      return "localhost";
                    }
                }
              • 8
                if (!(isSet(portalURL))) {
                • 9
                  var portalURL = JSONCompany.getPortalURL();
                  • 67
                    var portalURL = PropsUtil.get("portal.url");
                  • 69
                    return "${portalURL}";
                }
              • 12
                if (!(isSet(creatorEmailAddress))) {
                • 13
                  if ("${authenticationMethod}" == "By Screen Name") {
                  • 14
                    if (!(isSet(userScreenName))) {
                    • 15
                      var creatorEmailAddress = "test";
                    }
                  • 17
                    else {
                    • 18
                      var creatorEmailAddress = "${userScreenName}";
                    }
                  }
                • 21
                  else {
                  • 22
                    var creatorEmailAddress = "[email protected]";
                  }
                }
              • 26
                if (!(isSet(creatorPassword))) {
                • 27
                  var creatorPassword = "test";
                }
              • 30
                var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
              • 35
                var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
              • 37
                return "${companyId}";
            • 216
              if (isSet(specificURL)) {
              • 217
                var portalURL = "${specificURL}";
              }
            • 219
              else {
              • 220
                var portalURL = JSONCompany.getPortalURL();
                • 67
                  var portalURL = PropsUtil.get("portal.url");
                • 69
                  return "${portalURL}";
              }
            • 223
              if (!(isSet(creatorEmailAddress))) {
              • 224
                var creatorEmailAddress = "[email protected]";
              }
            • 227
              if (!(isSet(creatorPassword))) {
              • 228
                var creatorPassword = "test";
              }
            • 231
              var curl = ''' ${portalURL}/api/jsonws/user/get-user-by-email-address/company-id/${companyId}/email-address/${userEmailAddress} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
            • 236
              var userId = JSONCurlUtil.get("${curl}", "$['userId']");
            • 238
              return "${userId}";
          • 86
            JSONGroupAPI._assignUserToGroup( groupId = "${groupId}", userId = "${userId}");
            • 63
              Variables.assertDefined(parameterList = "${groupId},${userId}");
              • 5
                if (contains("${parameterList}","{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}'");
                  }
                }
            • 65
              var portalURL = JSONCompany.getPortalURL();
              • 67
                var portalURL = PropsUtil.get("portal.url");
              • 69
                return "${portalURL}";
            • 67
              var curl = ''' ${portalURL}/api/jsonws/user/add-group-users \ -u [email protected]:test \ -d groupId=${groupId} \ -d userIds=${userId} ''';
            • 74
              com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
        }
      • 39
        task ("Add a new site role") {
        • 40
          JSONRole.addSiteRole(roleTitle = "Site Role Name");
          • 40
            Variables.assertDefined(parameterList = "${roleTitle}");
            • 5
              if (contains("${parameterList}","{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}'");
                }
              }
          • 42
            var descriptionMap = JSONRoleSetter.setDescriptionMap(description = "${roleDescription}");
            • 4
              if (isSet(description)) {
              • 5
                var descriptionEncoded = URLUtil.encodeUTF8("${description}");
              • 7
                var descriptionMap = '''{"en_US":"${descriptionEncoded}"}''';
              }
            • 9
              else {
              • 10
                var descriptionMap = "{}";
              }
            • 13
              return "${descriptionMap}";
          • 44
            var name = JSONRoleSetter.setName(name = "${roleTitle}");
            • 17
              Variables.assertDefined(parameterList = "${name}");
              • 5
                if (contains("${parameterList}","{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}'");
                  }
                }
            • 19
              var name = URLUtil.encodeUTF8("${name}");
            • 21
              return "${name}";
          • 46
            var titleMap = JSONRoleSetter.setTitleMap(title = "${roleKey}");
            • 33
              if (isSet(title)) {
              • 34
                var titleMap = URLUtil.encodeUTF8("${title}");
              • 36
                var titleMap = '''{"en_US":"${titleMap}"}''';
              }
            • 38
              else {
              • 39
                var titleMap = "{}";
              }
            • 42
              return "${titleMap}";
          • 48
            var type = JSONRoleSetter.setType(roleType ="site");
            • 46
              Variables.assertDefined(parameterList = "${roleType}");
              • 5
                if (contains("${parameterList}","{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}'");
                  }
                }
            • 48
              if ("${roleType}" == "regular") {
              • 49
                var type = "1";
              }
            • 51
              else if ("${roleType}" == "site") {
              • 52
                var type = "2";
              }
            • 54
              else if ("${roleType}" == "organization") {
              • 55
                var type = "3";
              }
            • 57
              else {
              • 58
                fail("Invalid 'roleType', '${roleType}' must be 'regular/site/organization'.");
              }
            • 61
              return "${type}";
          • 50
            JSONRoleAPI._addRole( descriptionMap = "${descriptionMap}", name = "${name}", titleMap = "${titleMap}", type = "${type}");
            • 4
              Variables.assertDefined(parameterList = "${name},${titleMap},${descriptionMap},${type}");
              • 5
                if (contains("${parameterList}","{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 portalURL = JSONCompany.getPortalURL();
              • 67
                var portalURL = PropsUtil.get("portal.url");
              • 69
                return "${portalURL}";
            • 8
              var curl = ''' ${portalURL}/api/jsonws/role/add-role \ -u [email protected]:test \ -d className=com.liferay.portal.kernel.model.Role \ -d classPK=0 \ -d name=${name} \ -d titleMap=${titleMap} \ -d descriptionMap=${descriptionMap} \ -d type=${type} \ -d subtype= ''';
            • 20
              com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
        }
      • 43
        task ("Define the permissions of new site role") {
        • 44
          for (var resourceAction : list "UPDATE,UPDATE_LAYOUT_CONTENT,VIEW") {
          • 45
            Permissions.definePermissionViaJSONAPI( resourceAction = "${resourceAction}", resourceName = "com.liferay.portal.kernel.model.Layout", roleTitle = "Site Role Name", roleType = "site");
            • 91
              JSONPermission.addPermission( actionId = "${resourceAction}", groupName = "${groupName}", name = "${resourceName}", roleTitle = "${roleTitle}", roleType = "${roleType}");
              • 4
                Variables.assertDefined(parameterList = "${actionId},${name},${roleTitle}");
                • 5
                  if (contains("${parameterList}","{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 groupId = JSONPermissionSetter.setGroupId(groupName = "${groupName}");
                • 4
                  if (!(isSet(groupName))) {
                  • 5
                    var groupName = "Global";
                  }
                • 8
                  if (!(isSet(site))) {
                  • 9
                    var site = "true";
                  }
                • 12
                  var groupId = JSONGroupAPI._getGroupIdByName(groupName = "${groupName}", site = "${site}");
                  • 207
                    Variables.assertDefined(parameterList = "${groupName},${site}");
                    • 5
                      if (contains("${parameterList}","{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}'");
                        }
                      }
                  • 209
                    if (!(isSet(portalURL))) {
                    • 210
                      var portalURL = JSONCompany.getPortalURL();
                      • 67
                        var portalURL = PropsUtil.get("portal.url");
                      • 69
                        return "${portalURL}";
                    }
                  • 213
                    var companyId = JSONCompany.getCompanyId(portalURL = "${portalURL}");
                    • 4
                      if (!(isSet(portalInstanceName))) {
                      • 5
                        var portalInstanceName = JSONCompany.getPortalInstanceName();
                        • 51
                          var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                        • 52
                          var testPortalInstance = PropsUtil.get("test.portal.instance");
                        • 54
                          if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                          • 55
                            var portalURL = JSONCompany.getPortalURL();
                            • 67
                              var portalURL = PropsUtil.get("portal.url");
                            • 69
                              return "${portalURL}";
                          • 57
                            var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                            • 73
                              Variables.assertDefined(parameterList = "${portalURL}");
                              • 5
                                if (contains("${parameterList}","{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}'");
                                  }
                                }
                            • 75
                              var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                            • 76
                              var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                            • 78
                              return "${portalInstanceName}";
                          • 59
                            return "${portalInstanceName}";
                          }
                        • 61
                          else {
                          • 62
                            return "localhost";
                          }
                      }
                    • 8
                      if (!(isSet(portalURL))) {
                      • 9
                        var portalURL = JSONCompany.getPortalURL();
                        • 67
                          var portalURL = PropsUtil.get("portal.url");
                        • 69
                          return "${portalURL}";
                      }
                    • 12
                      if (!(isSet(creatorEmailAddress))) {
                      • 13
                        if ("${authenticationMethod}" == "By Screen Name") {
                        • 14
                          if (!(isSet(userScreenName))) {
                          • 15
                            var creatorEmailAddress = "test";
                          }
                        • 17
                          else {
                          • 18
                            var creatorEmailAddress = "${userScreenName}";
                          }
                        }
                      • 21
                        else {
                        • 22
                          var creatorEmailAddress = "[email protected]";
                        }
                      }
                    • 26
                      if (!(isSet(creatorPassword))) {
                      • 27
                        var creatorPassword = "test";
                      }
                    • 30
                      var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                    • 35
                      var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                    • 37
                      return "${companyId}";
                  • 215
                    var parentGroupId = JSONGroupSetter.setParentGroupId(parentGroupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                    • 82
                      if (isSet(parentGroupName)) {
                      • 83
                        var parentGroupId = JSONGroupAPI._getParentGroupIdByName(groupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                        • 253
                          Variables.assertDefined(parameterList = "${groupName}");
                          • 5
                            if (contains("${parameterList}","{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}'");
                              }
                            }
                        • 255
                          var companyId = JSONCompany.getCompanyId();
                          • 4
                            if (!(isSet(portalInstanceName))) {
                            • 5
                              var portalInstanceName = JSONCompany.getPortalInstanceName();
                              • 51
                                var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                              • 52
                                var testPortalInstance = PropsUtil.get("test.portal.instance");
                              • 54
                                if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                                • 55
                                  var portalURL = JSONCompany.getPortalURL();
                                  • 67
                                    var portalURL = PropsUtil.get("portal.url");
                                  • 69
                                    return "${portalURL}";
                                • 57
                                  var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                                  • 73
                                    Variables.assertDefined(parameterList = "${portalURL}");
                                    • 5
                                      if (contains("${parameterList}","{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}'");
                                        }
                                      }
                                  • 75
                                    var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                                  • 76
                                    var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                                  • 78
                                    return "${portalInstanceName}";
                                • 59
                                  return "${portalInstanceName}";
                                }
                              • 61
                                else {
                                • 62
                                  return "localhost";
                                }
                            }
                          • 8
                            if (!(isSet(portalURL))) {
                            • 9
                              var portalURL = JSONCompany.getPortalURL();
                              • 67
                                var portalURL = PropsUtil.get("portal.url");
                              • 69
                                return "${portalURL}";
                            }
                          • 12
                            if (!(isSet(creatorEmailAddress))) {
                            • 13
                              if ("${authenticationMethod}" == "By Screen Name") {
                              • 14
                                if (!(isSet(userScreenName))) {
                                • 15
                                  var creatorEmailAddress = "test";
                                }
                              • 17
                                else {
                                • 18
                                  var creatorEmailAddress = "${userScreenName}";
                                }
                              }
                            • 21
                              else {
                              • 22
                                var creatorEmailAddress = "[email protected]";
                              }
                            }
                          • 26
                            if (!(isSet(creatorPassword))) {
                            • 27
                              var creatorPassword = "test";
                            }
                          • 30
                            var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                          • 35
                            var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                          • 37
                            return "${companyId}";
                        • 257
                          var grandParentGroupId = JSONGroupSetter.setGrandParentGroupId(grandParentGroupName = "${grandParentGroupName}");
                          • 16
                            if (isSet(grandParentGroupName)) {
                            • 17
                              if (!(isSet(site))) {
                              • 18
                                var site = "true";
                              }
                            • 21
                              var grandParentGroupId = JSONGroupAPI._getGrandParentGroupIdByName(groupName = "${grandParentGroupName}", site = "${site}");
                              • 154
                                Variables.assertDefined(parameterList = "${groupName}");
                                • 5
                                  if (contains("${parameterList}","{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}'");
                                    }
                                  }
                              • 156
                                var companyId = JSONCompany.getCompanyId();
                                • 4
                                  if (!(isSet(portalInstanceName))) {
                                  • 5
                                    var portalInstanceName = JSONCompany.getPortalInstanceName();
                                    • 51
                                      var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                                    • 52
                                      var testPortalInstance = PropsUtil.get("test.portal.instance");
                                    • 54
                                      if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                                      • 55
                                        var portalURL = JSONCompany.getPortalURL();
                                        • 67
                                          var portalURL = PropsUtil.get("portal.url");
                                        • 69
                                          return "${portalURL}";
                                      • 57
                                        var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                                        • 73
                                          Variables.assertDefined(parameterList = "${portalURL}");
                                          • 5
                                            if (contains("${parameterList}","{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}'");
                                              }
                                            }
                                        • 75
                                          var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                                        • 76
                                          var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                                        • 78
                                          return "${portalInstanceName}";
                                      • 59
                                        return "${portalInstanceName}";
                                      }
                                    • 61
                                      else {
                                      • 62
                                        return "localhost";
                                      }
                                  }
                                • 8
                                  if (!(isSet(portalURL))) {
                                  • 9
                                    var portalURL = JSONCompany.getPortalURL();
                                    • 67
                                      var portalURL = PropsUtil.get("portal.url");
                                    • 69
                                      return "${portalURL}";
                                  }
                                • 12
                                  if (!(isSet(creatorEmailAddress))) {
                                  • 13
                                    if ("${authenticationMethod}" == "By Screen Name") {
                                    • 14
                                      if (!(isSet(userScreenName))) {
                                      • 15
                                        var creatorEmailAddress = "test";
                                      }
                                    • 17
                                      else {
                                      • 18
                                        var creatorEmailAddress = "${userScreenName}";
                                      }
                                    }
                                  • 21
                                    else {
                                    • 22
                                      var creatorEmailAddress = "[email protected]";
                                    }
                                  }
                                • 26
                                  if (!(isSet(creatorPassword))) {
                                  • 27
                                    var creatorPassword = "test";
                                  }
                                • 30
                                  var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                                • 35
                                  var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                                • 37
                                  return "${companyId}";
                              • 158
                                var portalURL = JSONCompany.getPortalURL();
                                • 67
                                  var portalURL = PropsUtil.get("portal.url");
                                • 69
                                  return "${portalURL}";
                              • 160
                                if (!(isSet(site))) {
                                • 161
                                  var site = "true";
                                }
                              • 164
                                var curl = ''' ${portalURL}/api/jsonws/group/get-groups \ -u [email protected]:test \ -d companyId=${companyId} \ -d parentGroupId=0 \ -d site=${site} ''';
                              • 172
                                var groupId = JSONCurlUtil.post("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                              • 174
                                if ("${groupId}" == "") {
                                • 175
                                  fail("FAIL. Cannot find group.");
                                }
                              • 178
                                return "${groupId}";
                            }
                          • 23
                            else {
                            • 24
                              var grandParentGroupId = "0";
                            }
                          • 27
                            return "${grandParentGroupId}";
                        • 259
                          var portalURL = JSONCompany.getPortalURL();
                          • 67
                            var portalURL = PropsUtil.get("portal.url");
                          • 69
                            return "${portalURL}";
                        • 261
                          var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${grandParentGroupId}/site/true \ -u [email protected]:test ''';
                        • 266
                          var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                        • 268
                          if ("${groupId}" == "") {
                          • 269
                            fail("FAIL. Cannot find group.");
                          }
                        • 272
                          return "${groupId}";
                      }
                    • 85
                      else {
                      • 86
                        var parentGroupId = "0";
                      }
                    • 89
                      return "${parentGroupId}";
                  • 217
                    var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${parentGroupId}/site/${site} \ -u [email protected]:test ''';
                  • 222
                    var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                  • 224
                    if ("${groupId}" == "") {
                    • 225
                      fail("FAIL. Cannot find group.");
                    }
                  • 228
                    echo("## * GroupId: ${groupId}");
                  • 230
                    return "${groupId}";
                • 14
                  return "${groupId}";
              • 8
                var roleType = JSONPermissionSetter.setRoleType(roleType = "${roleType}");
                • 39
                  if (!(isSet(roleType))) {
                  • 40
                    var roleType = "regular";
                  }
                • 43
                  return "${roleType}";
              • 10
                var primKey = JSONPermissionSetter.setPrimKey(roleType = "${roleType}");
                • 18
                  JSONPermissionValidator.validateRoleType(roleType = "${roleType}");
                  • 5
                    Variables.assertDefined(parameterList = "${roleType}");
                    • 5
                      if (contains("${parameterList}","{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}'");
                        }
                      }
                  • 7
                    if (!(contains("account,asset library,regular,site,organization", "${roleType}"))) {
                    • 8
                      fail("Invalid 'roleType', '${roleType}' must be 'asset library/regular/site/organization'.");
                    }
                • 20
                  if ("${roleType}" == "regular") {
                  • 21
                    var primKey = JSONCompany.getCompanyId();
                    • 4
                      if (!(isSet(portalInstanceName))) {
                      • 5
                        var portalInstanceName = JSONCompany.getPortalInstanceName();
                        • 51
                          var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                        • 52
                          var testPortalInstance = PropsUtil.get("test.portal.instance");
                        • 54
                          if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                          • 55
                            var portalURL = JSONCompany.getPortalURL();
                            • 67
                              var portalURL = PropsUtil.get("portal.url");
                            • 69
                              return "${portalURL}";
                          • 57
                            var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                            • 73
                              Variables.assertDefined(parameterList = "${portalURL}");
                              • 5
                                if (contains("${parameterList}","{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}'");
                                  }
                                }
                            • 75
                              var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                            • 76
                              var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                            • 78
                              return "${portalInstanceName}";
                          • 59
                            return "${portalInstanceName}";
                          }
                        • 61
                          else {
                          • 62
                            return "localhost";
                          }
                      }
                    • 8
                      if (!(isSet(portalURL))) {
                      • 9
                        var portalURL = JSONCompany.getPortalURL();
                        • 67
                          var portalURL = PropsUtil.get("portal.url");
                        • 69
                          return "${portalURL}";
                      }
                    • 12
                      if (!(isSet(creatorEmailAddress))) {
                      • 13
                        if ("${authenticationMethod}" == "By Screen Name") {
                        • 14
                          if (!(isSet(userScreenName))) {
                          • 15
                            var creatorEmailAddress = "test";
                          }
                        • 17
                          else {
                          • 18
                            var creatorEmailAddress = "${userScreenName}";
                          }
                        }
                      • 21
                        else {
                        • 22
                          var creatorEmailAddress = "[email protected]";
                        }
                      }
                    • 26
                      if (!(isSet(creatorPassword))) {
                      • 27
                        var creatorPassword = "test";
                      }
                    • 30
                      var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                    • 35
                      var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                    • 37
                      return "${companyId}";
                  }
                • 23
                  else if (("${roleType}" == "site") || ("${roleType}" == "organization") || ("${roleType}" == "asset library") || ("${roleType}" == "account")) {
                  • 24
                    var primKey = "0";
                  }
                • 27
                  return "${primKey}";
              • 12
                var roleId = JSONPermissionSetter.setRoleId(roleTitle = "${roleTitle}");
                • 31
                  Variables.assertDefined(parameterList = "${roleTitle}");
                  • 5
                    if (contains("${parameterList}","{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}'");
                      }
                    }
                • 33
                  var roleId = JSONRoleAPI._getRoleIdByName(name = "${roleTitle}");
                  • 84
                    Variables.assertDefined(parameterList = "${name}");
                    • 5
                      if (contains("${parameterList}","{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}'");
                        }
                      }
                  • 86
                    var companyId = JSONCompany.getCompanyId();
                    • 4
                      if (!(isSet(portalInstanceName))) {
                      • 5
                        var portalInstanceName = JSONCompany.getPortalInstanceName();
                        • 51
                          var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                        • 52
                          var testPortalInstance = PropsUtil.get("test.portal.instance");
                        • 54
                          if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                          • 55
                            var portalURL = JSONCompany.getPortalURL();
                            • 67
                              var portalURL = PropsUtil.get("portal.url");
                            • 69
                              return "${portalURL}";
                          • 57
                            var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                            • 73
                              Variables.assertDefined(parameterList = "${portalURL}");
                              • 5
                                if (contains("${parameterList}","{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}'");
                                  }
                                }
                            • 75
                              var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                            • 76
                              var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                            • 78
                              return "${portalInstanceName}";
                          • 59
                            return "${portalInstanceName}";
                          }
                        • 61
                          else {
                          • 62
                            return "localhost";
                          }
                      }
                    • 8
                      if (!(isSet(portalURL))) {
                      • 9
                        var portalURL = JSONCompany.getPortalURL();
                        • 67
                          var portalURL = PropsUtil.get("portal.url");
                        • 69
                          return "${portalURL}";
                      }
                    • 12
                      if (!(isSet(creatorEmailAddress))) {
                      • 13
                        if ("${authenticationMethod}" == "By Screen Name") {
                        • 14
                          if (!(isSet(userScreenName))) {
                          • 15
                            var creatorEmailAddress = "test";
                          }
                        • 17
                          else {
                          • 18
                            var creatorEmailAddress = "${userScreenName}";
                          }
                        }
                      • 21
                        else {
                        • 22
                          var creatorEmailAddress = "[email protected]";
                        }
                      }
                    • 26
                      if (!(isSet(creatorPassword))) {
                      • 27
                        var creatorPassword = "test";
                      }
                    • 30
                      var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u ${creatorEmailAddress}:${creatorPassword} ''';
                    • 35
                      var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");