LocalFile.PagesFinderWithStaging#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":1632909053626,"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":1632915377851,"lastLoginIP":"127.0.0.1","lastName":"Test","ldapServerId":"-1","lockout":false,"lockoutDate":null,"loginDate":1632915463184,"loginIP":"127.0.0.1","middleName":"","modifiedDate":1632915842811,"mvccVersion":"17","openId":"","portraitId":"0","reminderQueryAnswer":"test","reminderQueryQuestion":"what-is-your-father's-middle-name","screenName":"test","status":0,"timeZoneId":"UTC","userId":"20127","uuid":"88fb0481-5067-30e6-77d5-93a92b44e2bc"}Finished executing commands.
  • Running post with parametersArg: ${curl}Return: {"agreedToTermsOfUse":true,"comments":"","companyId":"20099","contactId":"20129","createDate":1632909053626,"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":1632915377851,"lastLoginIP":"127.0.0.1","lastName":"Test","ldapServerId":"-1","lockout":false,"lockoutDate":null,"loginDate":1632915463184,"loginIP":"127.0.0.1","middleName":"","modifiedDate":1632915843061,"mvccVersion":"18","openId":"","portraitId":"0","reminderQueryAnswer":"test","reminderQueryQuestion":"what-is-your-father's-middle-name","screenName":"test","status":0,"timeZoneId":"UTC","userId":"20127","uuid":"88fb0481-5067-30e6-77d5-93a92b44e2bc"}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":"41192","companyId":"20099","creatorUserId":"20127","ctCollectionId":"0","description":"","descriptionCurrentValue":"","descriptiveName":"Test Site Name","friendlyURL":"\/test-site-name","groupId":"41192","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":"\/41192\/","type":1,"uuid":"bade5628-a405-38d5-60de-224b568d1181"}Finished executing commands.
  • Running post with parametersArg: ${curl}Return: {"active":true,"classNameId":"20003","classPK":"41194","companyId":"20099","creatorUserId":"20127","ctCollectionId":"0","description":"","descriptionCurrentValue":"","descriptiveName":"Site Name","friendlyURL":"\/site-name","groupId":"41194","groupKey":"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\">Site Name<\/Name><\/root>","nameCurrentValue":"Site Name","parentGroupId":"0","remoteStagingGroupCount":0,"site":true,"treePath":"\/41194\/","type":1,"uuid":"8a81573f-696d-a877-7ee4-277eb4e4db07"}Finished executing commands.
  • Running Open with locator1http://localhost:8080/group/test-site-name/~/control_panel/manage?p_p_id=com_liferay_staging_processes_web_portlet_StagingProcessesPortlet
    • 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_staging_processes_web_portlet_StagingProcessesPortlet
    • 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_staging_processes_web_portlet_StagingProcessesPortlet
    • 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_staging_processes_web_portlet_StagingProcessesPortlet
    • 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_staging_processes_web_portlet_StagingProcessesPortlet
    • Running assertLiferayErrors
  • Running IsElementNotPresent with locator1//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running isNotVisible with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
  • Running AssertElementPresent with locator1//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertElementPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertLiferayErrors
  • Running AssertElementNotPresent with locator1//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running assertElementNotPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running assertLiferayErrors
  • Running IsElementPresent with locator1//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
  • Running Click with locator1//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running mouseOver with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running click with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running assertJavaScriptErrors with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running assertLiferayErrors
  • Running AssertVisible with locator1//*[@data-qa-id='productMenuBody']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='productMenuBody']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//*[@data-qa-id='productMenuBody']
    • Running assertVisible with parameters//*[@data-qa-id='productMenuBody']
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='productMenuBody']
    • Running assertLiferayErrors
  • Running AssertTextEquals#assertPartialText with locator1//div[contains(@class,'site-name')] with value1Test Site Name
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Test Site Name
    • 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;')]Test Site Name
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'site-name')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'site-name')]Test Site Name
    • Running waitForPartialTextCaseInsensitive with parameters//div[contains(@class,'site-name')]Test Site Name
    • Running assertPartialTextCaseInsensitive with parameters//div[contains(@class,'site-name')]Test Site Name
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'site-name')]
    • Running assertLiferayErrors
  • 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 Check#checkHiddenToggleSwitch with locator1//span[contains(.,'Local Live')]
    • 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(.,'Local Live')]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//span[contains(.,'Local Live')]
    • Running mouseOver with parameters//span[contains(.,'Local Live')]
    • Running isNotChecked with parametersxpath=(//span[contains(.,'Local Live')])/../../input
    • Running clickAt with parameters//span[contains(.,'Local Live')]
    • 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(.,'Local Live')]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//span[contains(.,'Local Live')]
    • Running assertChecked with parametersxpath=(//span[contains(.,'Local Live')])/../../input
    • Running assertJavaScriptErrors with parameters//span[contains(.,'Local Live')]
    • Running assertLiferayErrors
    • Running assertJavaScriptErrors with parameters//span[contains(.,'Local Live')]
    • Running assertLiferayErrors
  • Running Click with locator1//span[contains(.,'Select All')]
    • 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(.,'Select All')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//span[contains(.,'Select All')]
    • Running mouseOver with parameters//span[contains(.,'Select All')]
    • Running click with parameters//span[contains(.,'Select All')]
    • Running assertJavaScriptErrors with parameters//span[contains(.,'Select All')]
    • Running assertLiferayErrors
  • Running AssertClickNoError with locator1//button[contains(.,'Save')] | //div[contains(@class,'button-holder ')]/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//button[contains(.,'Save')] | //div[contains(@class,'button-holder ')]/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//button[contains(.,'Save')] | //div[contains(@class,'button-holder ')]/button[contains(.,'Save')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//button[contains(.,'Save')] | //div[contains(@class,'button-holder ')]/button[contains(.,'Save')]Save
    • Running waitForTextCaseInsensitive with parameters//button[contains(.,'Save')] | //div[contains(@class,'button-holder ')]/button[contains(.,'Save')]Save
    • Running assertTextCaseInsensitive with parameters//button[contains(.,'Save')] | //div[contains(@class,'button-holder ')]/button[contains(.,'Save')]Save
    • Running mouseOver with parameters//button[contains(.,'Save')] | //div[contains(@class,'button-holder ')]/button[contains(.,'Save')]
    • Running click with parameters//button[contains(.,'Save')] | //div[contains(@class,'button-holder ')]/button[contains(.,'Save')]
  • Running AssertConfirm with value1Are you sure you want to activate local staging for Test Site Name?
    • Running assertAlertText with parametersAre you sure you want to activate local staging for Test Site Name?
    • Running acceptAlert
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Are you sure you want to activate local staging for Test Site Name?
    • 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;')]Are you sure you want to activate local staging for Test Site Name?
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
  • Running IsElementNotPresent with locator1//*[@data-qa-id='processResult'][contains(.,'Successful')] | //h6[contains(.,'Successful')]
    • 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='processResult'][contains(.,'Successful')] | //h6[contains(.,'Successful')]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//*[@data-qa-id='processResult'][contains(.,'Successful')] | //h6[contains(.,'Successful')]
    • Running isElementNotPresent with parameters//*[@data-qa-id='processResult'][contains(.,'Successful')] | //h6[contains(.,'Successful')]
  • Running Pause with locator11000
    • 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 parameters1000
    • Running assertLiferayErrors
    • Running pause with parameters1000
  • Running IsElementNotPresent with locator1//*[@data-qa-id='processResult'][contains(.,'Successful')] | //h6[contains(.,'Successful')]
    • 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='processResult'][contains(.,'Successful')] | //h6[contains(.,'Successful')]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//*[@data-qa-id='processResult'][contains(.,'Successful')] | //h6[contains(.,'Successful')]
    • Running isNotVisible with parameters//*[@data-qa-id='processResult'][contains(.,'Successful')] | //h6[contains(.,'Successful')]
  • Running AssertTextEquals with locator1//*[@data-qa-id='processResult'] | //h6[contains(@class,'background-task-status-row')] with value1SUCCESSFUL
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]SUCCESSFUL
    • 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;')]SUCCESSFUL
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='processResult'] | //h6[contains(@class,'background-task-status-row')]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]SUCCESSFUL
    • 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;')]SUCCESSFUL
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='processResult'] | //h6[contains(@class,'background-task-status-row')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//*[@data-qa-id='processResult'] | //h6[contains(@class,'background-task-status-row')]SUCCESSFUL
    • Running waitForTextCaseInsensitive with parameters//*[@data-qa-id='processResult'] | //h6[contains(@class,'background-task-status-row')]SUCCESSFUL
    • Running assertTextCaseInsensitive with parameters//*[@data-qa-id='processResult'] | //h6[contains(@class,'background-task-status-row')]SUCCESSFUL
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='processResult'] | //h6[contains(@class,'background-task-status-row')]
    • Running assertLiferayErrors
  • Running AssertTextNotPresent with locator1//div[contains(@class,'alert') and (contains(@class,'alert-error') or contains(@class,'alert-danger'))][not(contains(@style,'display: none'))] with value1The tunneling servlet shared secret is not set.
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]The tunneling servlet shared secret is not set.
    • 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;')]The tunneling servlet shared secret is not set.
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert') and (contains(@class,'alert-error') or contains(@class,'alert-danger'))][not(contains(@style,'display: none'))]
    • Running assertLiferayErrors
    • Running waitForTextNotPresent with parametersThe tunneling servlet shared secret is not set.
    • Running assertTextNotPresent with parametersThe tunneling servlet shared secret is not set.
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert') and (contains(@class,'alert-error') or contains(@class,'alert-danger'))][not(contains(@style,'display: none'))]
    • Running assertLiferayErrors
  • Running AssertTextNotPresent with locator1//div[contains(@class,'alert') and (contains(@class,'alert-error') or contains(@class,'alert-danger'))][not(contains(@style,'display: none'))] with value1Your request failed to complete.
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Your request failed to complete.
    • 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;')]Your request failed to complete.
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert') and (contains(@class,'alert-error') or contains(@class,'alert-danger'))][not(contains(@style,'display: none'))]
    • Running assertLiferayErrors
    • Running waitForTextNotPresent with parametersYour request failed to complete.
    • Running assertTextNotPresent with parametersYour request failed to complete.
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert') and (contains(@class,'alert-error') or contains(@class,'alert-danger'))][not(contains(@style,'display: none'))]
    • Running assertLiferayErrors
  • Running AssertElementPresent with locator1//a[contains(@class,'btn')][contains(@href,'new') or contains(@href,'redirect') or contains(@href,'mvc') or contains(@href,'javascript')][.//*[name()='svg'][contains(@class,'icon-plus')]][not(contains(@class,'borderless'))] | //button[*[contains(@class,'icon-plus')]]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//a[contains(@class,'btn')][contains(@href,'new') or contains(@href,'redirect') or contains(@href,'mvc') or contains(@href,'javascript')][.//*[name()='svg'][contains(@class,'icon-plus')]][not(contains(@class,'borderless'))] | //button[*[contains(@class,'icon-plus')]]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//a[contains(@class,'btn')][contains(@href,'new') or contains(@href,'redirect') or contains(@href,'mvc') or contains(@href,'javascript')][.//*[name()='svg'][contains(@class,'icon-plus')]][not(contains(@class,'borderless'))] | //button[*[contains(@class,'icon-plus')]]
    • Running assertElementPresent with parameters//a[contains(@class,'btn')][contains(@href,'new') or contains(@href,'redirect') or contains(@href,'mvc') or contains(@href,'javascript')][.//*[name()='svg'][contains(@class,'icon-plus')]][not(contains(@class,'borderless'))] | //button[*[contains(@class,'icon-plus')]]
    • Running assertJavaScriptErrors with parameters//a[contains(@class,'btn')][contains(@href,'new') or contains(@href,'redirect') or contains(@href,'mvc') or contains(@href,'javascript')][.//*[name()='svg'][contains(@class,'icon-plus')]][not(contains(@class,'borderless'))] | //button[*[contains(@class,'icon-plus')]]
    • Running assertLiferayErrors
  • Running AssertConsoleTextNotPresent with value1Please configure tunneling.servlet.shared.secret
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Please configure tunneling.servlet.shared.secret
    • 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;')]Please configure tunneling.servlet.shared.secret
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
    • Running assertConsoleTextNotPresent with parametersPlease configure tunneling.servlet.shared.secret

    Cause:

    Console log /home/me/dev/projects/liferay-portal/../bundles/logs/liferay.*.xml exceeded 20971520 bytes

    Steps:

    • TestCase#setUpPortalInstance --> PASSED
    • Log into Liferay using URL navigation --> PASSED
    • Add a basic site --> PASSED
    • Add a basic site --> PASSED
    • Staging#openStagingAdmin --> PASSED
    • Staging#activateStagingCP --> WARNING
      • Assert that 'PRODUCT_MENU_OPENED' is available --> PASSED
      • Assert that 'PRODUCT_MENU_CLOSED' is not available --> PASSED
      • Click on 'ANY' --> PASSED
      • AssertVisible#assertVisible --> PASSED
      • Assert that 'PRODUCT_MENU_PANEL_SITE_ADMINISTRATION_SITE_NAME' contains the value 'Test Site Name' --> PASSED
      • Check#checkHiddenToggleSwitch --> PASSED
      • Click on 'CONTENT_SELECT_ALL_CHECKBOX' --> PASSED
      • Click on 'SAVE' that should have a value of 'Save' --> PASSED
      • Assert that the text within the confirmation window equals the value 'Are you sure you want to activate local staging for Test Site Name?' and execute the confirmation --> PASSED
      • Assert that 'PROCESS_RESULT' equals the value 'SUCCESSFUL' --> PASSED
      • AssertTextNotPresent#assertTextNotPresent --> PASSED
      • AssertTextNotPresent#assertTextNotPresent --> PASSED
      • Assert that 'PLUS' is available --> PASSED
      • AssertConsoleTextNotPresent#assertConsoleTextNotPresent --> WARNING
    before0Before
    after0After
  • Running AssertConsoleTextNotPresent with value1javax.portlet.PortletException: java.lang.NullPointerException
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]javax.portlet.PortletException: java.lang.NullPointerException
    • 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;')]javax.portlet.PortletException: java.lang.NullPointerException
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
    • Running assertConsoleTextNotPresent with parametersjavax.portlet.PortletException: java.lang.NullPointerException

    Cause:

    Console log /home/me/dev/projects/liferay-portal/../bundles/logs/liferay.*.xml exceeded 20971520 bytes

    Steps:

    • TestCase#setUpPortalInstance --> PASSED
    • Log into Liferay using URL navigation --> PASSED
    • Add a basic site --> PASSED
    • Add a basic site --> PASSED
    • Staging#openStagingAdmin --> PASSED
    • Staging#activateStagingCP --> WARNING
      • Assert that 'PRODUCT_MENU_OPENED' is available --> PASSED
      • Assert that 'PRODUCT_MENU_CLOSED' is not available --> PASSED
      • Click on 'ANY' --> PASSED
      • AssertVisible#assertVisible --> PASSED
      • Assert that 'PRODUCT_MENU_PANEL_SITE_ADMINISTRATION_SITE_NAME' contains the value 'Test Site Name' --> PASSED
      • Check#checkHiddenToggleSwitch --> PASSED
      • Click on 'CONTENT_SELECT_ALL_CHECKBOX' --> PASSED
      • Click on 'SAVE' that should have a value of 'Save' --> PASSED
      • Assert that the text within the confirmation window equals the value 'Are you sure you want to activate local staging for Test Site Name?' and execute the confirmation --> PASSED
      • Assert that 'PROCESS_RESULT' equals the value 'SUCCESSFUL' --> PASSED
      • AssertTextNotPresent#assertTextNotPresent --> PASSED
      • AssertTextNotPresent#assertTextNotPresent --> PASSED
      • Assert that 'PLUS' is available --> PASSED
      • AssertConsoleTextNotPresent#assertConsoleTextNotPresent --> WARNING
      • AssertConsoleTextNotPresent#assertConsoleTextNotPresent --> WARNING
    before1Before
    after1After
  • LocalFile.PagesFinderWithStaging#AddCollectionPageViaPageFinder
  • This is the test for LPS-107774. Can create a Collection Page based on Collections or Collection Providers in Pages Tree panel of Staging site.
  • ## * GroupId: 41202
  • Running post with parametersArg: ${curl}Return: {"DDMStructureKey":"BASIC-WEB-CONTENT","DDMTemplateKey":"BASIC-WEB-CONTENT","articleId":"41243","classNameId":"0","classPK":"0","companyId":"20099","content":"<?xml version=\"1.0\"?>%0A%0A<root available-locales=\"en_US\" default-locale=\"en_US\" version=\"1.0\">%0A\t<dynamic-element index-type=\"text\" instance-id=\"Nny0E3TU\" name=\"content\" type=\"rich_text\">%0A\t\t<dynamic-content language-id=\"en_US\"><![CDATA[<p>Web Content Content<\/p>]]><\/dynamic-content>%0A\t<\/dynamic-element>%0A<\/root>","createDate":1632915866255,"ctCollectionId":"0","defaultLanguageId":"en_US","description":"","descriptionCurrentValue":"","descriptionMapAsXML":"","displayDate":1632915840000,"expirationDate":null,"externalReferenceCode":"41243","folderId":"0","groupId":"41202","id":"41244","indexable":true,"lastPublishDate":null,"layoutUuid":"","modifiedDate":1632915866264,"mvccVersion":"1","resourcePrimKey":"41245","reviewDate":null,"smallImage":false,"smallImageId":"0","smallImageURL":"","status":0,"statusByUserId":"20127","statusByUserName":"Test Test","statusDate":1632915866264,"title":"First Web Content","titleCurrentValue":"First Web Content","titleMapAsXML":"<?xml version='1.0' encoding='UTF-8'?><root available-locales=\"en_US\" default-locale=\"en_US\"><Title language-id=\"en_US\">First Web Content<\/Title><\/root>","treePath":"\/","urlTitle":"first-web-content","userId":"20127","userName":"Test Test","uuid":"3c05a2c1-2f7c-4367-f4a9-761a25780b9f","version":1.0}Finished executing commands.
  • ## * GroupId: 41202
  • Running post with parametersArg: ${curl}Return: {"DDMStructureKey":"BASIC-WEB-CONTENT","DDMTemplateKey":"BASIC-WEB-CONTENT","articleId":"41257","classNameId":"0","classPK":"0","companyId":"20099","content":"<?xml version=\"1.0\"?>%0A%0A<root available-locales=\"en_US\" default-locale=\"en_US\" version=\"1.0\">%0A\t<dynamic-element index-type=\"text\" instance-id=\"vOm4TxQL\" name=\"content\" type=\"rich_text\">%0A\t\t<dynamic-content language-id=\"en_US\"><![CDATA[<p>Web Content Content<\/p>]]><\/dynamic-content>%0A\t<\/dynamic-element>%0A<\/root>","createDate":1632915867065,"ctCollectionId":"0","defaultLanguageId":"en_US","description":"","descriptionCurrentValue":"","descriptionMapAsXML":"","displayDate":1632915840000,"expirationDate":null,"externalReferenceCode":"41257","folderId":"0","groupId":"41202","id":"41258","indexable":true,"lastPublishDate":null,"layoutUuid":"","modifiedDate":1632915867073,"mvccVersion":"1","resourcePrimKey":"41259","reviewDate":null,"smallImage":false,"smallImageId":"0","smallImageURL":"","status":0,"statusByUserId":"20127","statusByUserName":"Test Test","statusDate":1632915867073,"title":"Second Web Content","titleCurrentValue":"Second Web Content","titleMapAsXML":"<?xml version='1.0' encoding='UTF-8'?><root available-locales=\"en_US\" default-locale=\"en_US\"><Title language-id=\"en_US\">Second Web Content<\/Title><\/root>","treePath":"\/","urlTitle":"second-web-content","userId":"20127","userName":"Test Test","uuid":"63ba6e77-df79-6bf1-0ea5-f7ba96b651a4","version":1.0}Finished executing commands.
  • ## * GroupId: 41202
  • Running post with parametersArg: ${curl}Return: {"DDMStructureKey":"BASIC-WEB-CONTENT","DDMTemplateKey":"BASIC-WEB-CONTENT","articleId":"41270","classNameId":"0","classPK":"0","companyId":"20099","content":"<?xml version=\"1.0\"?>%0A%0A<root available-locales=\"en_US\" default-locale=\"en_US\" version=\"1.0\">%0A\t<dynamic-element index-type=\"text\" instance-id=\"Fk4vYzMS\" name=\"content\" type=\"rich_text\">%0A\t\t<dynamic-content language-id=\"en_US\"><![CDATA[<p>Web Content Content<\/p>]]><\/dynamic-content>%0A\t<\/dynamic-element>%0A<\/root>","createDate":1632915867801,"ctCollectionId":"0","defaultLanguageId":"en_US","description":"","descriptionCurrentValue":"","descriptionMapAsXML":"","displayDate":1632915840000,"expirationDate":null,"externalReferenceCode":"41270","folderId":"0","groupId":"41202","id":"41271","indexable":true,"lastPublishDate":null,"layoutUuid":"","modifiedDate":1632915867814,"mvccVersion":"1","resourcePrimKey":"41272","reviewDate":null,"smallImage":false,"smallImageId":"0","smallImageURL":"","status":0,"statusByUserId":"20127","statusByUserName":"Test Test","statusDate":1632915867814,"title":"Third Web Content","titleCurrentValue":"Third Web Content","titleMapAsXML":"<?xml version='1.0' encoding='UTF-8'?><root available-locales=\"en_US\" default-locale=\"en_US\"><Title language-id=\"en_US\">Third Web Content<\/Title><\/root>","treePath":"\/","urlTitle":"third-web-content","userId":"20127","userName":"Test Test","uuid":"77b9948f-b426-201e-e094-af80d29a81f5","version":1.0}Finished executing commands.
  • ## * GroupId: 41202
  • ## * GroupId: 20125
  • Running add with parametersArg: ${list}Arg: com.liferay.blogs.model.BlogsEntryReturn:
  • Running add with parametersArg: ${list}Arg: com.liferay.bookmarks.model.BookmarksEntryReturn:
  • Running add with parametersArg: ${list}Arg: com.liferay.bookmarks.model.BookmarksFolderReturn:
  • Running add with parametersArg: ${list}Arg: com.liferay.calendar.model.CalendarBookingReturn:
  • Running add with parametersArg: ${list}Arg: com.liferay.commerce.model.CommerceOrderReturn:
  • Running add with parametersArg: ${list}Arg: com.liferay.document.library.kernel.model.DLFileEntryReturn:
  • Running add with parametersArg: ${list}Arg: com.liferay.document.library.kernel.model.DLFolderReturn:
  • Running add with parametersArg: ${list}Arg: com.liferay.dynamic.data.lists.model.DDLRecordReturn:
  • Running add with parametersArg: ${list}Arg: com.liferay.knowledge.base.model.KBArticleReturn:
  • Running add with parametersArg: ${list}Arg: com.liferay.message.boards.model.MBMessageReturn:
  • Running add with parametersArg: ${list}Arg: com.liferay.translation.model.TranslationEntryReturn:
  • Running add with parametersArg: ${list}Arg: com.liferay.journal.model.JournalArticleReturn:
  • Running add with parametersArg: ${list}Arg: com.liferay.journal.model.JournalFolderReturn:
  • Running add with parametersArg: ${list}Arg: com.liferay.wiki.model.WikiPageReturn:
  • Running add with parametersArg: ${list}Arg: ${classNameId}Return:
  • Running add with parametersArg: ${list}Arg: ${classNameId}Return:
  • Running add with parametersArg: ${list}Arg: ${classNameId}Return:
  • Running add with parametersArg: ${list}Arg: ${classNameId}Return:
  • Running add with parametersArg: ${list}Arg: ${classNameId}Return:
  • Running add with parametersArg: ${list}Arg: ${classNameId}Return:
  • Running add with parametersArg: ${list}Arg: ${classNameId}Return:
  • Running add with parametersArg: ${list}Arg: ${classNameId}Return:
  • Running add with parametersArg: ${list}Arg: ${classNameId}Return:
  • Running add with parametersArg: ${list}Arg: ${classNameId}Return:
  • Running add with parametersArg: ${list}Arg: ${classNameId}Return:
  • Running add with parametersArg: ${list}Arg: ${classNameId}Return:
  • Running add with parametersArg: ${list}Arg: ${classNameId}Return:
  • Running add with parametersArg: ${list}Arg: ${classNameId}Return:
  • Running post with parametersArg: ${curl}Return: {"assetEntrySubtype":"40451","assetEntryType":"com.liferay.journal.model.JournalArticle","assetListEntryId":"41283","assetListEntryKey":"dynamic-collection","companyId":"20099","createDate":1632915874720,"ctCollectionId":"0","groupId":"41202","lastPublishDate":null,"modifiedDate":1632915874720,"mvccVersion":"0","title":"Dynamic Collection","type":0,"userId":"20127","userName":"Test Test","uuid":"962d1126-92f8-4a42-edb2-e61ace2437ed"}Finished executing commands.
  • Running IsElementNotPresent with locator1//*[@data-qa-id='productMenu']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='productMenu']
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//*[@data-qa-id='productMenu']
    • Running isNotVisible with parameters//*[@data-qa-id='productMenu']
  • Running IsElementNotPresent with locator1//span[@class='active']//*[@data-qa-id='staging']
    • 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='active']//*[@data-qa-id='staging']
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//span[@class='active']//*[@data-qa-id='staging']
    • Running isNotVisible with parameters//span[@class='active']//*[@data-qa-id='staging']
  • Running AssertVisible with locator1//span[@class='active']//*[@data-qa-id='staging']
    • 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='active']//*[@data-qa-id='staging']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//span[@class='active']//*[@data-qa-id='staging']
    • Running assertVisible with parameters//span[@class='active']//*[@data-qa-id='staging']
    • Running assertJavaScriptErrors with parameters//span[@class='active']//*[@data-qa-id='staging']
    • Running assertLiferayErrors
  • Running IsElementNotPresent with locator1//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running isNotVisible with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
  • Running AssertElementPresent with locator1//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertElementPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertLiferayErrors
  • Running AssertElementNotPresent with locator1//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running assertElementNotPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running assertLiferayErrors
  • Running IsElementPresent with locator1//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
  • Running AssertVisible with locator1//*[@data-qa-id='productMenuBody']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='productMenuBody']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//*[@data-qa-id='productMenuBody']
    • Running assertVisible with parameters//*[@data-qa-id='productMenuBody']
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='productMenuBody']
    • Running assertLiferayErrors
  • Running IsElementNotPresent with locator1//div[contains(@id,'layout-finder')]//input
    • 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,'layout-finder')]//input
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[contains(@id,'layout-finder')]//input
    • Running isElementNotPresent with parameters//div[contains(@id,'layout-finder')]//input
  • Running Click with locator1//button[contains(.,'Page Tree')]
    • 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(.,'Page Tree')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//button[contains(.,'Page Tree')]
    • Running mouseOver with parameters//button[contains(.,'Page Tree')]
    • Running click with parameters//button[contains(.,'Page Tree')]
    • Running assertJavaScriptErrors with parameters//button[contains(.,'Page Tree')]
    • Running assertLiferayErrors
  • Running Click with locator1//div[contains(@class,'page-type-selector')]//button[contains(@class,'form-control-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//div[contains(@class,'page-type-selector')]//button[contains(@class,'form-control-select')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'page-type-selector')]//button[contains(@class,'form-control-select')]
    • Running mouseOver with parameters//div[contains(@class,'page-type-selector')]//button[contains(@class,'form-control-select')]
    • Running click with parameters//div[contains(@class,'page-type-selector')]//button[contains(@class,'form-control-select')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'page-type-selector')]//button[contains(@class,'form-control-select')]
    • Running assertLiferayErrors
  • Running Click with locator1xpath=(//div | //li)[(contains(@class,'open') or contains(@class,'show')) and (contains(@class,'dropdown') or contains(.//*/@class,'dropdown'))]//*[self::a or self::span or self::button][normalize-space(text())='Public Pages']
    • 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')) and (contains(@class,'dropdown') or contains(.//*/@class,'dropdown'))]//*[self::a or self::span or self::button][normalize-space(text())='Public Pages']
    • Running assertLiferayErrors
    • Running waitForVisible with parametersxpath=(//div | //li)[(contains(@class,'open') or contains(@class,'show')) and (contains(@class,'dropdown') or contains(.//*/@class,'dropdown'))]//*[self::a or self::span or self::button][normalize-space(text())='Public Pages']
    • Running mouseOver with parametersxpath=(//div | //li)[(contains(@class,'open') or contains(@class,'show')) and (contains(@class,'dropdown') or contains(.//*/@class,'dropdown'))]//*[self::a or self::span or self::button][normalize-space(text())='Public Pages']
    • Running click with parametersxpath=(//div | //li)[(contains(@class,'open') or contains(@class,'show')) and (contains(@class,'dropdown') or contains(.//*/@class,'dropdown'))]//*[self::a or self::span or self::button][normalize-space(text())='Public Pages']
    • Running assertJavaScriptErrors with parametersxpath=(//div | //li)[(contains(@class,'open') or contains(@class,'show')) and (contains(@class,'dropdown') or contains(.//*/@class,'dropdown'))]//*[self::a or self::span or self::button][normalize-space(text())='Public Pages']
    • Running assertLiferayErrors
  • Running Click with locator1//div[contains(@class,'page-type-selector')]//button[*[name()='svg'][contains(@class,'icon-plus')]]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'page-type-selector')]//button[*[name()='svg'][contains(@class,'icon-plus')]]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'page-type-selector')]//button[*[name()='svg'][contains(@class,'icon-plus')]]
    • Running mouseOver with parameters//div[contains(@class,'page-type-selector')]//button[*[name()='svg'][contains(@class,'icon-plus')]]
    • Running click with parameters//div[contains(@class,'page-type-selector')]//button[*[name()='svg'][contains(@class,'icon-plus')]]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'page-type-selector')]//button[*[name()='svg'][contains(@class,'icon-plus')]]
    • Running assertLiferayErrors
  • Running Click with locator1xpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Add Collection Page']
    • 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())='Add Collection Page']
    • Running assertLiferayErrors
    • Running waitForVisible with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Add Collection Page']
    • Running mouseOver with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Add Collection Page']
    • Running click with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Add Collection Page']
    • Running assertJavaScriptErrors with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Add Collection Page']
    • Running assertLiferayErrors
  • Running IsElementNotPresent with locator1//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Collections'][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()='Collections'][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()='Collections'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running isNotVisible with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Collections'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
  • Running AssertElementPresent with locator1//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Collections'][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()='Collections'][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()='Collections'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running assertElementPresent with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Collections'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Collections'][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 WaitForLiferayEvent#initializeLiferayEventLog
    • Running runScript with parameters if (typeof Liferay != "undefined") { const TRACKED_EVENTS = [ 'addPortlet', 'allPortletsReady', 'allUploadsComplete', 'beforeNavigate', 'beforeScreenFlip', 'closePortlet', 'dataLayoutConfigReady', 'destroyPortlet', 'editorAPIReady', 'endNavigate', 'form:registered', 'formNavigator:reveal', 'dropdownShow', 'entitySelectionRemoved', 'exitNavigation', 'hideNavigationMenu', 'initLayout', 'inputLocalized:localeChanged', 'modalIframeLoaded', 'noticeShow', 'noticeHide', 'popupReady', 'portletDragStart', 'portletMoved', 'portletReady', 'ratings:vote', 'screenActivate', 'screenDeactivate', 'screenFlip', 'screenLoad', 'search-container:registered', 'sessionExpired', 'showNavigationMenu', 'spaRequestTimeout', 'startNavigate', 'submitForm', 'tempFileRemoved', 'toggleControls', 'updatedLayout', ]; let __LFR_TRACKED_EVENTS__ = {}; Liferay.on(TRACKED_EVENTS, function(event){ { const eventLog = __LFR_TRACKED_EVENTS__[event.type] ? __LFR_TRACKED_EVENTS__[event.type].concat(event) : [event]; __LFR_TRACKED_EVENTS__[event.type] = eventLog }; }); function getLastEvent(eventName) { return __LFR_TRACKED_EVENTS__[eventName] ? __LFR_TRACKED_EVENTS__[eventName][ __LFR_TRACKED_EVENTS__[eventName].length - 1 ] : {}; }; function getLastEventDetails(eventName){ return getLastEvent(eventName).details[0]; }; window.LFR_JS_EVENTS_LOG = { getLastEvent:getLastEvent, getLastEventDetails:getLastEventDetails, }; }
  • Running Click#mouseDownMouseUp with locator1//*[contains(@class,'card-body')][contains(.,'Dynamic Collection')]
    • 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,'card-body')][contains(.,'Dynamic Collection')]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[contains(@class,'card-body')][contains(.,'Dynamic Collection')]
    • Running waitForVisible with parameters//*[contains(@class,'card-body')][contains(.,'Dynamic Collection')]
    • Running mouseDown with parameters//*[contains(@class,'card-body')][contains(.,'Dynamic Collection')]
    • Running mouseUp with parameters//*[contains(@class,'card-body')][contains(.,'Dynamic Collection')]
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'card-body')][contains(.,'Dynamic Collection')]
    • Running assertLiferayErrors
  • Running WaitForLiferayEvent#initializeLiferayEventLog
    • Running runScript with parameters if (typeof Liferay != "undefined") { const TRACKED_EVENTS = [ 'addPortlet', 'allPortletsReady', 'allUploadsComplete', 'beforeNavigate', 'beforeScreenFlip', 'closePortlet', 'dataLayoutConfigReady', 'destroyPortlet', 'editorAPIReady', 'endNavigate', 'form:registered', 'formNavigator:reveal', 'dropdownShow', 'entitySelectionRemoved', 'exitNavigation', 'hideNavigationMenu', 'initLayout', 'inputLocalized:localeChanged', 'modalIframeLoaded', 'noticeShow', 'noticeHide', 'popupReady', 'portletDragStart', 'portletMoved', 'portletReady', 'ratings:vote', 'screenActivate', 'screenDeactivate', 'screenFlip', 'screenLoad', 'search-container:registered', 'sessionExpired', 'showNavigationMenu', 'spaRequestTimeout', 'startNavigate', 'submitForm', 'tempFileRemoved', 'toggleControls', 'updatedLayout', ]; let __LFR_TRACKED_EVENTS__ = {}; Liferay.on(TRACKED_EVENTS, function(event){ { const eventLog = __LFR_TRACKED_EVENTS__[event.type] ? __LFR_TRACKED_EVENTS__[event.type].concat(event) : [event]; __LFR_TRACKED_EVENTS__[event.type] = eventLog }; }); function getLastEvent(eventName) { return __LFR_TRACKED_EVENTS__[eventName] ? __LFR_TRACKED_EVENTS__[eventName][ __LFR_TRACKED_EVENTS__[eventName].length - 1 ] : {}; }; function getLastEventDetails(eventName){ return getLastEvent(eventName).details[0]; }; window.LFR_JS_EVENTS_LOG = { getLastEvent:getLastEvent, getLastEventDetails:getLastEventDetails, }; }
  • Running Click#mouseDownMouseUp with locator1//*[contains(@class,'card-body')][contains(.,'Blank')]
    • 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,'card-body')][contains(.,'Blank')]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[contains(@class,'card-body')][contains(.,'Blank')]
    • Running waitForVisible with parameters//*[contains(@class,'card-body')][contains(.,'Blank')]
    • Running mouseDown with parameters//*[contains(@class,'card-body')][contains(.,'Blank')]
    • Running mouseUp with parameters//*[contains(@class,'card-body')][contains(.,'Blank')]
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'card-body')][contains(.,'Blank')]
    • Running assertLiferayErrors
  • Running SelectFrame with locator1//div[contains(@class,'modal-body')]/iframe
    • Running waitForJavaScriptNoError with parameters try { var eventValue = LFR_JS_EVENTS_LOG.getLastEvent("modalIframeLoaded").src; return eventValue.includes("dialog-iframe-popup"); } catch(err) { return false; } Event "modalIframeLoaded" with attribute "src" and value "dialog-iframe-popup" not fired.
    • Running verifyJavaScript with parameters try { var eventValue = LFR_JS_EVENTS_LOG.getLastEvent("modalIframeLoaded").src; return eventValue.includes("dialog-iframe-popup"); } catch(err) { return false; } Event "modalIframeLoaded" with attribute "src" and value "dialog-iframe-popup" not fired.
    • Running waitForVisible with parameters//div[contains(@class,'modal-body')]/iframe
    • Running mouseOver with parameters//div[contains(@class,'modal-body')]/iframe
    • Running selectFrame with parameters//div[contains(@class,'modal-body')]/iframe
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'modal-body')]/iframe
    • 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 parameters//div[contains(@class,'modal-body')]/iframe
    • Running assertLiferayErrors
  • Running Click with locator1//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'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[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running mouseOver with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running click with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running assertJavaScriptErrors with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running assertLiferayErrors
  • Running Type with locator1//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')] with value1Test Collection Page Name 1
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Test Collection Page Name 1
    • 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;')]Test Collection Page Name 1
    • Running assertJavaScriptErrors with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]Test Collection Page Name 1
    • Running waitForEditable with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running mouseOver with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running clickAt with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running pause with parameters1000
    • Running type with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]Test Collection Page Name 1
    • Running pause with parameters1000
    • Running clickAt with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running pause with parameters1000
    • Running assertJavaScriptErrors with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running assertLiferayErrors
  • Running Click#mouseDownMouseUp with locator1//*[not(self::div)][contains(@class,'btn')][normalize-space()='Add'][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()='Add'][not(contains(@class,'navbar'))]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Add'][not(contains(@class,'navbar'))]
    • Running waitForVisible with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Add'][not(contains(@class,'navbar'))]
    • Running mouseDown with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Add'][not(contains(@class,'navbar'))]
    • Running mouseUp with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Add'][not(contains(@class,'navbar'))]
    • Running assertJavaScriptErrors with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Add'][not(contains(@class,'navbar'))]
    • Running assertLiferayErrors
  • Running SelectFrame#selectFrameTop
    • Running selectFrame with parametersrelative=top
    • Running assertJavaScriptErrors with parameters
    • 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 parameters
    • 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 AssertTextEquals#assertPartialText with locator1//*[@data-qa-id='controlMenu']//span[contains(@class,'text-truncate')] with value1Collection Page
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Collection Page
    • 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;')]Collection Page
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='controlMenu']//span[contains(@class,'text-truncate')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//*[@data-qa-id='controlMenu']//span[contains(@class,'text-truncate')]Collection Page
    • Running waitForPartialTextCaseInsensitive with parameters//*[@data-qa-id='controlMenu']//span[contains(@class,'text-truncate')]Collection Page
    • Running assertPartialTextCaseInsensitive with parameters//*[@data-qa-id='controlMenu']//span[contains(@class,'text-truncate')]Collection Page
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='controlMenu']//span[contains(@class,'text-truncate')]
    • Running assertLiferayErrors
  • Running AssertVisible with locator1xpath=(//div[contains(@class,'page-editor__topper__bar') and contains(.,'Container')]//following-sibling::div[contains(@class,'page-editor__topper__content')])[1]/div[contains(@class,'page-editor__container')]//div[contains(.,'Dynamic Collection') and contains(@id,'fragment-')]
    • 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(@class,'page-editor__topper__bar') and contains(.,'Container')]//following-sibling::div[contains(@class,'page-editor__topper__content')])[1]/div[contains(@class,'page-editor__container')]//div[contains(.,'Dynamic Collection') and contains(@id,'fragment-')]
    • Running assertLiferayErrors
    • Running waitForVisible with parametersxpath=(//div[contains(@class,'page-editor__topper__bar') and contains(.,'Container')]//following-sibling::div[contains(@class,'page-editor__topper__content')])[1]/div[contains(@class,'page-editor__container')]//div[contains(.,'Dynamic Collection') and contains(@id,'fragment-')]
    • Running assertVisible with parametersxpath=(//div[contains(@class,'page-editor__topper__bar') and contains(.,'Container')]//following-sibling::div[contains(@class,'page-editor__topper__content')])[1]/div[contains(@class,'page-editor__container')]//div[contains(.,'Dynamic Collection') and contains(@id,'fragment-')]
    • Running assertJavaScriptErrors with parametersxpath=(//div[contains(@class,'page-editor__topper__bar') and contains(.,'Container')]//following-sibling::div[contains(@class,'page-editor__topper__content')])[1]/div[contains(@class,'page-editor__container')]//div[contains(.,'Dynamic Collection') and contains(@id,'fragment-')]
    • Running assertLiferayErrors
  • Running AssertVisible with locator1//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][1]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Third Web Content')]
    • 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,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][1]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Third Web Content')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][1]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Third Web Content')]
    • Running assertVisible with parameters//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][1]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Third Web Content')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][1]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Third Web Content')]
    • Running assertLiferayErrors
  • Running AssertVisible with locator1//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][2]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Second Web Content')]
    • 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,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][2]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Second Web Content')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][2]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Second Web Content')]
    • Running assertVisible with parameters//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][2]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Second Web Content')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][2]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Second Web Content')]
    • Running assertLiferayErrors
  • Running AssertVisible with locator1//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][3]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'First Web Content')]
    • 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,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][3]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'First Web Content')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][3]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'First Web Content')]
    • Running assertVisible with parameters//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][3]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'First Web Content')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][3]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'First Web Content')]
    • Running assertLiferayErrors
  • Running AssertElementPresent with locator1//div[contains(@class,'pages-tree')]//*[contains(@class,'tree-node')]//a[normalize-space()='Test Collection Page Name 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 parameters//div[contains(@class,'pages-tree')]//*[contains(@class,'tree-node')]//a[normalize-space()='Test Collection Page Name 1*']
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//div[contains(@class,'pages-tree')]//*[contains(@class,'tree-node')]//a[normalize-space()='Test Collection Page Name 1*']
    • Running assertElementPresent with parameters//div[contains(@class,'pages-tree')]//*[contains(@class,'tree-node')]//a[normalize-space()='Test Collection Page Name 1*']
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'pages-tree')]//*[contains(@class,'tree-node')]//a[normalize-space()='Test Collection Page Name 1*']
    • Running assertLiferayErrors
  • Running IsElementNotPresent with locator1//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running isNotVisible with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
  • Running AssertElementPresent with locator1//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertElementPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'open') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'closed'))]
    • Running assertLiferayErrors
  • Running AssertElementNotPresent with locator1//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running assertElementNotPresent with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'sidenavSliderId') and contains(@class,'closed') and not(contains(@class,'sidenav-transition')) and not(contains(@class,'open'))]
    • Running assertLiferayErrors
  • Running IsElementPresent with locator1//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
  • Running Click with locator1//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running mouseOver with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running click with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running assertJavaScriptErrors with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Back to Menu'][not(contains(@class,'navbar'))]
    • Running assertLiferayErrors
  • Running AssertVisible with locator1//*[@data-qa-id='productMenuBody']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='productMenuBody']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//*[@data-qa-id='productMenuBody']
    • Running assertVisible with parameters//*[@data-qa-id='productMenuBody']
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='productMenuBody']
    • Running assertLiferayErrors
  • Running IsElementNotPresent with locator1//div[contains(@id,'layout-finder')]//input
    • 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,'layout-finder')]//input
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[contains(@id,'layout-finder')]//input
    • Running isElementNotPresent with parameters//div[contains(@id,'layout-finder')]//input
  • Running Click with locator1//button[contains(.,'Page Tree')]
    • 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(.,'Page Tree')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//button[contains(.,'Page Tree')]
    • Running mouseOver with parameters//button[contains(.,'Page Tree')]
    • Running click with parameters//button[contains(.,'Page Tree')]
    • Running assertJavaScriptErrors with parameters//button[contains(.,'Page Tree')]
    • Running assertLiferayErrors
  • Running Click with locator1//div[contains(@class,'page-type-selector')]//button[contains(@class,'form-control-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//div[contains(@class,'page-type-selector')]//button[contains(@class,'form-control-select')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'page-type-selector')]//button[contains(@class,'form-control-select')]
    • Running mouseOver with parameters//div[contains(@class,'page-type-selector')]//button[contains(@class,'form-control-select')]
    • Running click with parameters//div[contains(@class,'page-type-selector')]//button[contains(@class,'form-control-select')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'page-type-selector')]//button[contains(@class,'form-control-select')]
    • Running assertLiferayErrors
  • Running Click with locator1xpath=(//div | //li)[(contains(@class,'open') or contains(@class,'show')) and (contains(@class,'dropdown') or contains(.//*/@class,'dropdown'))]//*[self::a or self::span or self::button][normalize-space(text())='Public Pages']
    • 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')) and (contains(@class,'dropdown') or contains(.//*/@class,'dropdown'))]//*[self::a or self::span or self::button][normalize-space(text())='Public Pages']
    • Running assertLiferayErrors
    • Running waitForVisible with parametersxpath=(//div | //li)[(contains(@class,'open') or contains(@class,'show')) and (contains(@class,'dropdown') or contains(.//*/@class,'dropdown'))]//*[self::a or self::span or self::button][normalize-space(text())='Public Pages']
    • Running mouseOver with parametersxpath=(//div | //li)[(contains(@class,'open') or contains(@class,'show')) and (contains(@class,'dropdown') or contains(.//*/@class,'dropdown'))]//*[self::a or self::span or self::button][normalize-space(text())='Public Pages']
    • Running click with parametersxpath=(//div | //li)[(contains(@class,'open') or contains(@class,'show')) and (contains(@class,'dropdown') or contains(.//*/@class,'dropdown'))]//*[self::a or self::span or self::button][normalize-space(text())='Public Pages']
    • Running assertJavaScriptErrors with parametersxpath=(//div | //li)[(contains(@class,'open') or contains(@class,'show')) and (contains(@class,'dropdown') or contains(.//*/@class,'dropdown'))]//*[self::a or self::span or self::button][normalize-space(text())='Public Pages']
    • Running assertLiferayErrors
  • Running Click with locator1//div[contains(@class,'page-type-selector')]//button[*[name()='svg'][contains(@class,'icon-plus')]]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'page-type-selector')]//button[*[name()='svg'][contains(@class,'icon-plus')]]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'page-type-selector')]//button[*[name()='svg'][contains(@class,'icon-plus')]]
    • Running mouseOver with parameters//div[contains(@class,'page-type-selector')]//button[*[name()='svg'][contains(@class,'icon-plus')]]
    • Running click with parameters//div[contains(@class,'page-type-selector')]//button[*[name()='svg'][contains(@class,'icon-plus')]]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'page-type-selector')]//button[*[name()='svg'][contains(@class,'icon-plus')]]
    • Running assertLiferayErrors
  • Running Click with locator1xpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Add Collection Page']
    • 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())='Add Collection Page']
    • Running assertLiferayErrors
    • Running waitForVisible with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Add Collection Page']
    • Running mouseOver with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Add Collection Page']
    • Running click with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Add Collection Page']
    • Running assertJavaScriptErrors with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Add Collection Page']
    • Running assertLiferayErrors
  • Running IsElementNotPresent with locator1//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Collection Providers'][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()='Collection Providers'][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()='Collection Providers'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running isElementNotPresent with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Collection Providers'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
  • Running AssertClick#assertPartialTextClickAt with locator1//*[contains(@class,'nav-link') and normalize-space()='Collection Providers'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))] with value1Collection Providers
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Collection Providers
    • 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;')]Collection Providers
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'nav-link') and normalize-space()='Collection Providers'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Collection Providers
    • 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;')]Collection Providers
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'nav-link') and normalize-space()='Collection Providers'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//*[contains(@class,'nav-link') and normalize-space()='Collection Providers'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]Collection Providers
    • Running waitForPartialTextCaseInsensitive with parameters//*[contains(@class,'nav-link') and normalize-space()='Collection Providers'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]Collection Providers
    • Running assertPartialTextCaseInsensitive with parameters//*[contains(@class,'nav-link') and normalize-space()='Collection Providers'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]Collection Providers
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'nav-link') and normalize-space()='Collection Providers'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running assertLiferayErrors
    • Running mouseOver with parameters//*[contains(@class,'nav-link') and normalize-space()='Collection Providers'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running clickAt with parameters//*[contains(@class,'nav-link') and normalize-space()='Collection Providers'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'nav-link') and normalize-space()='Collection Providers'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running assertLiferayErrors
  • Running AssertElementPresent with locator1//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Collection Providers'][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()='Collection Providers'][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()='Collection Providers'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running assertElementPresent with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Collection Providers'][not(contains(@id,'ProductMenu') or contains(@href,'site_administration'))]
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Collection Providers'][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 WaitForLiferayEvent#initializeLiferayEventLog
    • Running runScript with parameters if (typeof Liferay != "undefined") { const TRACKED_EVENTS = [ 'addPortlet', 'allPortletsReady', 'allUploadsComplete', 'beforeNavigate', 'beforeScreenFlip', 'closePortlet', 'dataLayoutConfigReady', 'destroyPortlet', 'editorAPIReady', 'endNavigate', 'form:registered', 'formNavigator:reveal', 'dropdownShow', 'entitySelectionRemoved', 'exitNavigation', 'hideNavigationMenu', 'initLayout', 'inputLocalized:localeChanged', 'modalIframeLoaded', 'noticeShow', 'noticeHide', 'popupReady', 'portletDragStart', 'portletMoved', 'portletReady', 'ratings:vote', 'screenActivate', 'screenDeactivate', 'screenFlip', 'screenLoad', 'search-container:registered', 'sessionExpired', 'showNavigationMenu', 'spaRequestTimeout', 'startNavigate', 'submitForm', 'tempFileRemoved', 'toggleControls', 'updatedLayout', ]; let __LFR_TRACKED_EVENTS__ = {}; Liferay.on(TRACKED_EVENTS, function(event){ { const eventLog = __LFR_TRACKED_EVENTS__[event.type] ? __LFR_TRACKED_EVENTS__[event.type].concat(event) : [event]; __LFR_TRACKED_EVENTS__[event.type] = eventLog }; }); function getLastEvent(eventName) { return __LFR_TRACKED_EVENTS__[eventName] ? __LFR_TRACKED_EVENTS__[eventName][ __LFR_TRACKED_EVENTS__[eventName].length - 1 ] : {}; }; function getLastEventDetails(eventName){ return getLastEvent(eventName).details[0]; }; window.LFR_JS_EVENTS_LOG = { getLastEvent:getLastEvent, getLastEventDetails:getLastEventDetails, }; }
  • Running Click#mouseDownMouseUp with locator1//*[contains(@class,'card-body')][contains(.,'Most Viewed Assets')]
    • 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,'card-body')][contains(.,'Most Viewed Assets')]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[contains(@class,'card-body')][contains(.,'Most Viewed Assets')]
    • Running waitForVisible with parameters//*[contains(@class,'card-body')][contains(.,'Most Viewed Assets')]
    • Running mouseDown with parameters//*[contains(@class,'card-body')][contains(.,'Most Viewed Assets')]
    • Running mouseUp with parameters//*[contains(@class,'card-body')][contains(.,'Most Viewed Assets')]
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'card-body')][contains(.,'Most Viewed Assets')]
    • Running assertLiferayErrors
  • Running WaitForLiferayEvent#initializeLiferayEventLog
    • Running runScript with parameters if (typeof Liferay != "undefined") { const TRACKED_EVENTS = [ 'addPortlet', 'allPortletsReady', 'allUploadsComplete', 'beforeNavigate', 'beforeScreenFlip', 'closePortlet', 'dataLayoutConfigReady', 'destroyPortlet', 'editorAPIReady', 'endNavigate', 'form:registered', 'formNavigator:reveal', 'dropdownShow', 'entitySelectionRemoved', 'exitNavigation', 'hideNavigationMenu', 'initLayout', 'inputLocalized:localeChanged', 'modalIframeLoaded', 'noticeShow', 'noticeHide', 'popupReady', 'portletDragStart', 'portletMoved', 'portletReady', 'ratings:vote', 'screenActivate', 'screenDeactivate', 'screenFlip', 'screenLoad', 'search-container:registered', 'sessionExpired', 'showNavigationMenu', 'spaRequestTimeout', 'startNavigate', 'submitForm', 'tempFileRemoved', 'toggleControls', 'updatedLayout', ]; let __LFR_TRACKED_EVENTS__ = {}; Liferay.on(TRACKED_EVENTS, function(event){ { const eventLog = __LFR_TRACKED_EVENTS__[event.type] ? __LFR_TRACKED_EVENTS__[event.type].concat(event) : [event]; __LFR_TRACKED_EVENTS__[event.type] = eventLog }; }); function getLastEvent(eventName) { return __LFR_TRACKED_EVENTS__[eventName] ? __LFR_TRACKED_EVENTS__[eventName][ __LFR_TRACKED_EVENTS__[eventName].length - 1 ] : {}; }; function getLastEventDetails(eventName){ return getLastEvent(eventName).details[0]; }; window.LFR_JS_EVENTS_LOG = { getLastEvent:getLastEvent, getLastEventDetails:getLastEventDetails, }; }
  • Running Click#mouseDownMouseUp with locator1//*[contains(@class,'card-body')][contains(.,'Blank')]
    • 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,'card-body')][contains(.,'Blank')]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[contains(@class,'card-body')][contains(.,'Blank')]
    • Running waitForVisible with parameters//*[contains(@class,'card-body')][contains(.,'Blank')]
    • Running mouseDown with parameters//*[contains(@class,'card-body')][contains(.,'Blank')]
    • Running mouseUp with parameters//*[contains(@class,'card-body')][contains(.,'Blank')]
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'card-body')][contains(.,'Blank')]
    • Running assertLiferayErrors
  • Running SelectFrame with locator1//div[contains(@class,'modal-body')]/iframe
    • Running waitForJavaScriptNoError with parameters try { var eventValue = LFR_JS_EVENTS_LOG.getLastEvent("modalIframeLoaded").src; return eventValue.includes("dialog-iframe-popup"); } catch(err) { return false; } Event "modalIframeLoaded" with attribute "src" and value "dialog-iframe-popup" not fired.
    • Running verifyJavaScript with parameters try { var eventValue = LFR_JS_EVENTS_LOG.getLastEvent("modalIframeLoaded").src; return eventValue.includes("dialog-iframe-popup"); } catch(err) { return false; } Event "modalIframeLoaded" with attribute "src" and value "dialog-iframe-popup" not fired.
    • Running waitForVisible with parameters//div[contains(@class,'modal-body')]/iframe
    • Running mouseOver with parameters//div[contains(@class,'modal-body')]/iframe
    • Running selectFrame with parameters//div[contains(@class,'modal-body')]/iframe
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'modal-body')]/iframe
    • 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 parameters//div[contains(@class,'modal-body')]/iframe
    • Running assertLiferayErrors
  • Running Click with locator1//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'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[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running mouseOver with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running click with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running assertJavaScriptErrors with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running assertLiferayErrors
  • Running Type with locator1//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')] with value1Test Collection Page Name 2
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Test Collection Page Name 2
    • 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;')]Test Collection Page Name 2
    • Running assertJavaScriptErrors with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]Test Collection Page Name 2
    • Running waitForEditable with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running mouseOver with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running clickAt with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running pause with parameters1000
    • Running type with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]Test Collection Page Name 2
    • Running pause with parameters1000
    • Running clickAt with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running pause with parameters1000
    • Running assertJavaScriptErrors with parameters//div[label[contains(.,'Name')]]//input[@type='text'] | //div[contains(@class,'form-group')]//input[contains(@id,'name')]
    • Running assertLiferayErrors
  • Running Click#mouseDownMouseUp with locator1//*[not(self::div)][contains(@class,'btn')][normalize-space()='Add'][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()='Add'][not(contains(@class,'navbar'))]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Add'][not(contains(@class,'navbar'))]
    • Running waitForVisible with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Add'][not(contains(@class,'navbar'))]
    • Running mouseDown with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Add'][not(contains(@class,'navbar'))]
    • Running mouseUp with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Add'][not(contains(@class,'navbar'))]
    • Running assertJavaScriptErrors with parameters//*[not(self::div)][contains(@class,'btn')][normalize-space()='Add'][not(contains(@class,'navbar'))]
    • Running assertLiferayErrors
  • Running SelectFrame#selectFrameTop
    • Running selectFrame with parametersrelative=top
    • Running assertJavaScriptErrors with parameters
    • 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 parameters
    • 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 AssertTextEquals#assertPartialText with locator1//*[@data-qa-id='controlMenu']//span[contains(@class,'text-truncate')] with value1Collection Page
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Collection Page
    • 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;')]Collection Page
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='controlMenu']//span[contains(@class,'text-truncate')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//*[@data-qa-id='controlMenu']//span[contains(@class,'text-truncate')]Collection Page
    • Running waitForPartialTextCaseInsensitive with parameters//*[@data-qa-id='controlMenu']//span[contains(@class,'text-truncate')]Collection Page
    • Running assertPartialTextCaseInsensitive with parameters//*[@data-qa-id='controlMenu']//span[contains(@class,'text-truncate')]Collection Page
    • Running assertJavaScriptErrors with parameters//*[@data-qa-id='controlMenu']//span[contains(@class,'text-truncate')]
    • Running assertLiferayErrors
  • Running AssertVisible with locator1xpath=(//div[contains(@class,'page-editor__topper__bar') and contains(.,'Container')]//following-sibling::div[contains(@class,'page-editor__topper__content')])[1]/div[contains(@class,'page-editor__container')]//div[contains(.,'Most Viewed Assets') and contains(@id,'fragment-')]
    • 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(@class,'page-editor__topper__bar') and contains(.,'Container')]//following-sibling::div[contains(@class,'page-editor__topper__content')])[1]/div[contains(@class,'page-editor__container')]//div[contains(.,'Most Viewed Assets') and contains(@id,'fragment-')]
    • Running assertLiferayErrors
    • Running waitForVisible with parametersxpath=(//div[contains(@class,'page-editor__topper__bar') and contains(.,'Container')]//following-sibling::div[contains(@class,'page-editor__topper__content')])[1]/div[contains(@class,'page-editor__container')]//div[contains(.,'Most Viewed Assets') and contains(@id,'fragment-')]
    • Running assertVisible with parametersxpath=(//div[contains(@class,'page-editor__topper__bar') and contains(.,'Container')]//following-sibling::div[contains(@class,'page-editor__topper__content')])[1]/div[contains(@class,'page-editor__container')]//div[contains(.,'Most Viewed Assets') and contains(@id,'fragment-')]
    • Running assertJavaScriptErrors with parametersxpath=(//div[contains(@class,'page-editor__topper__bar') and contains(.,'Container')]//following-sibling::div[contains(@class,'page-editor__topper__content')])[1]/div[contains(@class,'page-editor__container')]//div[contains(.,'Most Viewed Assets') and contains(@id,'fragment-')]
    • Running assertLiferayErrors
  • Running AssertVisible with locator1//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][1]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Third Web Content')]
    • 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,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][1]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Third Web Content')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][1]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Third Web Content')]
    • Running assertVisible with parameters//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][1]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Third Web Content')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][1]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Third Web Content')]
    • Running assertLiferayErrors
  • Running AssertVisible with locator1//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][2]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Second Web Content')]
    • 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,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][2]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Second Web Content')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][2]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Second Web Content')]
    • Running assertVisible with parameters//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][2]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Second Web Content')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][2]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'Second Web Content')]
    • Running assertLiferayErrors
  • Running AssertVisible with locator1//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][3]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'First Web Content')]
    • 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,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][3]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'First Web Content')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][3]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'First Web Content')]
    • Running assertVisible with parameters//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][3]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'First Web Content')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'page-editor__topper') and contains(.,'Collection Display')]//div[contains(@class,'page-editor__collection')]/div[@class='row'][3]/div[contains(@class,'col')][1]//*[contains(@class,'item__title') and contains(.,'First Web Content')]
    • Running assertLiferayErrors
  • Running AssertElementPresent with locator1//div[contains(@class,'pages-tree')]//*[contains(@class,'tree-node')]//a[normalize-space()='Test Collection Page Name 2*']
    • 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,'pages-tree')]//*[contains(@class,'tree-node')]//a[normalize-space()='Test Collection Page Name 2*']
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//div[contains(@class,'pages-tree')]//*[contains(@class,'tree-node')]//a[normalize-space()='Test Collection Page Name 2*']
    • Running assertElementPresent with parameters//div[contains(@class,'pages-tree')]//*[contains(@class,'tree-node')]//a[normalize-space()='Test Collection Page Name 2*']
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'pages-tree')]//*[contains(@class,'tree-node')]//a[normalize-space()='Test Collection Page Name 2*']
    • Running assertLiferayErrors
  • LocalFile.PagesFinderWithStaging#tear-down
  • ## * GroupId: 41192
  • Running post with parametersArg: ${curl}Return: {}Finished executing commands.
  • ## * GroupId: 41194
  • Running post with parametersArg: ${curl}Return: {}Finished executing commands.
  • LocalFile.PagesFinderWithStaging#AddCollectionPageViaPageFinder

    • 8
      setUp {
      • 9
        TestCase.setUpPortalInstance();
        • 77
          var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
        • 78
          var testPortalInstance = PropsUtil.get("test.portal.instance");
        • 80
          if (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}"))) {
          • 81
            HeadlessPortalInstanceAPI.cleanAllPortalInstances(authenticationMethod = "${authenticationMethod}");
            • 65
              var portalInstanceJSON = HeadlessPortalInstanceAPI._getPortalInstances(authenticationMethod = "${authenticationMethod}");
              • 5
                var portalURL = JSONCompany.getPortalURL();
                • 57
                  var portalURL = PropsUtil.get("portal.url");
                • 59
                  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}";
            • 67
              var portalInstanceIds = JSONUtil.getWithJSONPath("${portalInstanceJSON}","$.items..portalInstanceId");
            • 69
              for (var portalInstanceId : list "${portalInstanceIds}") {
              • 70
                if ("${portalInstanceId}" != "liferay.com") {
                • 71
                  HeadlessPortalInstanceAPI.deletePortalInstance( authenticationMethod = "${authenticationMethod}", portalInstanceId = "${portalInstanceId}");
                  • 80
                    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}'");
                        }
                      }
                  • 82
                    var portalURL = JSONCompany.getPortalURL();
                    • 57
                      var portalURL = PropsUtil.get("portal.url");
                    • 59
                      return "${portalURL}";
                  • 84
                    var portalInstanceId = StringUtil.replace("${portalInstanceId}", " ", "%20");
                  • 86
                    if ("${authenticationMethod}" == "By Screen Name") {
                    • 87
                      var userName = "test";
                    }
                  • 89
                    else {
                    • 90
                      var userName = "[email protected]";
                    }
                  • 93
                    var curl = ''' ${portalURL}/o/headless-portal-instances/v1.0/portal-instances/${portalInstanceId} \ -u ${userName}:test \ -H Content-Type: application/json ''';
                  • 99
                    JSONCurlUtil.delete("${curl}");
                }
              }
          • 83
            if ("${testPortalInstance}" == "true") {
            • 84
              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.getPortalURL();
                  • 57
                    var portalURL = PropsUtil.get("portal.url");
                  • 59
                    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}");
            }
          }
      • 11
        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();
            • 353
              WaitForSPARefresh();
            • 355
              var baseURL = "${baseURL}";
            • 357
              if (contains("${baseURL}", "{baseURL}")) {
              • 358
                var baseURL = PropsUtil.get("portal.url");
              }
            • 361
              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}");
                • 63
                  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}'");
                      }
                    }
                • 65
                  var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                • 66
                  var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                • 68
                  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();
                    • 41
                      var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                    • 42
                      var testPortalInstance = PropsUtil.get("test.portal.instance");
                    • 44
                      if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                      • 45
                        var portalURL = JSONCompany.getPortalURL();
                        • 57
                          var portalURL = PropsUtil.get("portal.url");
                        • 59
                          return "${portalURL}";
                      • 47
                        var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                        • 63
                          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}'");
                              }
                            }
                        • 65
                          var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                        • 66
                          var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                        • 68
                          return "${portalInstanceName}";
                      • 49
                        return "${portalInstanceName}";
                      }
                    • 51
                      else {
                      • 52
                        return "localhost";
                      }
                  }
                • 8
                  if (!(isSet(portalURL))) {
                  • 9
                    var portalURL = JSONCompany.getPortalURL();
                    • 57
                      var portalURL = PropsUtil.get("portal.url");
                    • 59
                      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();
                  • 57
                    var portalURL = PropsUtil.get("portal.url");
                  • 59
                    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();
                • 57
                  var portalURL = PropsUtil.get("portal.url");
                • 59
                  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();
                • 353
                  WaitForSPARefresh();
                • 355
                  var baseURL = "${baseURL}";
                • 357
                  if (contains("${baseURL}", "{baseURL}")) {
                  • 358
                    var baseURL = PropsUtil.get("portal.url");
                  }
                • 361
                  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();
          }
      • 13
        JSONGroup.addGroup(groupName = "Test Site Name");
        • 23
          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}'");
              }
            }
        • 25
          var groupDescriptionMap = JSONGroupSetter.setGroupDescriptionMap( groupDescription = "${groupDescription}");
          • 19
            if (isSet(groupDescription)) {
            • 20
              var groupDescription = URLUtil.encodeUTF8("${groupDescription}");
            • 22
              var groupDescriptionMap = '''{"en_US":"${groupDescriptionEncoded}"}''';
            }
          • 24
            else {
            • 25
              var groupDescriptionMap = "{}";
            }
          • 28
            return "${groupDescriptionMap}";
        • 28
          var groupNameMap = JSONGroupSetter.setGroupNameMap( groupName = "${groupName}");
          • 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
            var groupNameMap = URLUtil.encodeUTF8("${groupName}");
          • 48
            var groupNameMap = '''{"en_US":"${groupName}"}''';
          • 50
            return "${groupNameMap}";
        • 31
          var parentGroupId = JSONGroupSetter.setParentGroupId(groupName = "${parentGroupName}");
          • 54
            if (isSet(parentGroupName)) {
            • 55
              var parentGroupId = JSONGroupAPI._getParentGroupIdByName(groupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
              • 270
                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}'");
                    }
                  }
              • 272
                var companyId = JSONCompany.getCompanyId();
                • 4
                  if (!(isSet(portalInstanceName))) {
                  • 5
                    var portalInstanceName = JSONCompany.getPortalInstanceName();
                    • 41
                      var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                    • 42
                      var testPortalInstance = PropsUtil.get("test.portal.instance");
                    • 44
                      if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                      • 45
                        var portalURL = JSONCompany.getPortalURL();
                        • 57
                          var portalURL = PropsUtil.get("portal.url");
                        • 59
                          return "${portalURL}";
                      • 47
                        var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                        • 63
                          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}'");
                              }
                            }
                        • 65
                          var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                        • 66
                          var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                        • 68
                          return "${portalInstanceName}";
                      • 49
                        return "${portalInstanceName}";
                      }
                    • 51
                      else {
                      • 52
                        return "localhost";
                      }
                  }
                • 8
                  if (!(isSet(portalURL))) {
                  • 9
                    var portalURL = JSONCompany.getPortalURL();
                    • 57
                      var portalURL = PropsUtil.get("portal.url");
                    • 59
                      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}";
              • 274
                var grandParentGroupId = JSONGroupSetter.setGrandParentGroupId(grandParentGroupName = "${grandParentGroupName}");
                • 4
                  if (isSet(grandParentGroupName)) {
                  • 5
                    if (!(isSet(site))) {
                    • 6
                      var site = "true";
                    }
                  • 9
                    var grandParentGroupId = JSONGroupAPI._getGrandParentGroupIdByName(groupName = "${grandParentGroupName}", site = "${site}");
                    • 171
                      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}'");
                          }
                        }
                    • 173
                      var companyId = JSONCompany.getCompanyId();
                      • 4
                        if (!(isSet(portalInstanceName))) {
                        • 5
                          var portalInstanceName = JSONCompany.getPortalInstanceName();
                          • 41
                            var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                          • 42
                            var testPortalInstance = PropsUtil.get("test.portal.instance");
                          • 44
                            if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                            • 45
                              var portalURL = JSONCompany.getPortalURL();
                              • 57
                                var portalURL = PropsUtil.get("portal.url");
                              • 59
                                return "${portalURL}";
                            • 47
                              var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                              • 63
                                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}'");
                                    }
                                  }
                              • 65
                                var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                              • 66
                                var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                              • 68
                                return "${portalInstanceName}";
                            • 49
                              return "${portalInstanceName}";
                            }
                          • 51
                            else {
                            • 52
                              return "localhost";
                            }
                        }
                      • 8
                        if (!(isSet(portalURL))) {
                        • 9
                          var portalURL = JSONCompany.getPortalURL();
                          • 57
                            var portalURL = PropsUtil.get("portal.url");
                          • 59
                            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}";
                    • 175
                      var portalURL = JSONCompany.getPortalURL();
                      • 57
                        var portalURL = PropsUtil.get("portal.url");
                      • 59
                        return "${portalURL}";
                    • 177
                      if (!(isSet(site))) {
                      • 178
                        var site = "true";
                      }
                    • 181
                      var curl = ''' ${portalURL}/api/jsonws/group/get-groups \ -u [email protected]:test \ -d companyId=${companyId} \ -d parentGroupId=0 \ -d site=${site} ''';
                    • 189
                      var groupId = JSONCurlUtil.post("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                    • 191
                      if ("${groupId}" == "") {
                      • 192
                        fail("FAIL. Cannot find group.");
                      }
                    • 195
                      return "${groupId}";
                  }
                • 11
                  else {
                  • 12
                    var grandParentGroupId = "0";
                  }
                • 15
                  return "${grandParentGroupId}";
              • 276
                var portalURL = JSONCompany.getPortalURL();
                • 57
                  var portalURL = PropsUtil.get("portal.url");
                • 59
                  return "${portalURL}";
              • 278
                var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${grandParentGroupId}/site/true \ -u [email protected]:test ''';
              • 283
                var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
              • 285
                if ("${groupId}" == "") {
                • 286
                  fail("FAIL. Cannot find group.");
                }
              • 289
                return "${groupId}";
            }
          • 57
            else {
            • 58
              var parentGroupId = "0";
            }
          • 61
            return "${parentGroupId}";
        • 33
          JSONGroupAPI._addGroup( groupDescriptionMap = "${groupDescriptionMap}", groupNameMap = "${groupNameMap}", manualMembership = "${manualMembership}", parentGroupId = "${parentGroupId}", portalURL = "${portalURL}", type = "${type}");
          • 5
            Variables.assertDefined(parameterList = "${groupNameMap}");
            • 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();
              • 57
                var portalURL = PropsUtil.get("portal.url");
              • 59
                return "${portalURL}";
            }
          • 11
            if ("${type}" == "Private") {
            • 12
              var type = "3";
            }
          • 14
            else if ("${type}" == "Restricted") {
            • 15
              var type = "2";
            }
          • 17
            else {
            • 18
              var type = "1";
            }
          • 21
            if ("${manualMembership}" == "false") {
            • 22
              var manualMembership = "false";
            }
          • 24
            else {
            • 25
              var manualMembership = "true";
            }
          • 28
            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 ''';
          • 44
            com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
      • 15
        JSONGroup.addGroup(groupName = "Site Name");
        • 23
          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}'");
              }
            }
        • 25
          var groupDescriptionMap = JSONGroupSetter.setGroupDescriptionMap( groupDescription = "${groupDescription}");
          • 19
            if (isSet(groupDescription)) {
            • 20
              var groupDescription = URLUtil.encodeUTF8("${groupDescription}");
            • 22
              var groupDescriptionMap = '''{"en_US":"${groupDescriptionEncoded}"}''';
            }
          • 24
            else {
            • 25
              var groupDescriptionMap = "{}";
            }
          • 28
            return "${groupDescriptionMap}";
        • 28
          var groupNameMap = JSONGroupSetter.setGroupNameMap( groupName = "${groupName}");
          • 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
            var groupNameMap = URLUtil.encodeUTF8("${groupName}");
          • 48
            var groupNameMap = '''{"en_US":"${groupName}"}''';
          • 50
            return "${groupNameMap}";
        • 31
          var parentGroupId = JSONGroupSetter.setParentGroupId(groupName = "${parentGroupName}");
          • 54
            if (isSet(parentGroupName)) {
            • 55
              var parentGroupId = JSONGroupAPI._getParentGroupIdByName(groupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
              • 270
                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}'");
                    }
                  }
              • 272
                var companyId = JSONCompany.getCompanyId();
                • 4
                  if (!(isSet(portalInstanceName))) {
                  • 5
                    var portalInstanceName = JSONCompany.getPortalInstanceName();
                    • 41
                      var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                    • 42
                      var testPortalInstance = PropsUtil.get("test.portal.instance");
                    • 44
                      if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                      • 45
                        var portalURL = JSONCompany.getPortalURL();
                        • 57
                          var portalURL = PropsUtil.get("portal.url");
                        • 59
                          return "${portalURL}";
                      • 47
                        var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                        • 63
                          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}'");
                              }
                            }
                        • 65
                          var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                        • 66
                          var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                        • 68
                          return "${portalInstanceName}";
                      • 49
                        return "${portalInstanceName}";
                      }
                    • 51
                      else {
                      • 52
                        return "localhost";
                      }
                  }
                • 8
                  if (!(isSet(portalURL))) {
                  • 9
                    var portalURL = JSONCompany.getPortalURL();
                    • 57
                      var portalURL = PropsUtil.get("portal.url");
                    • 59
                      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}";
              • 274
                var grandParentGroupId = JSONGroupSetter.setGrandParentGroupId(grandParentGroupName = "${grandParentGroupName}");
                • 4
                  if (isSet(grandParentGroupName)) {
                  • 5
                    if (!(isSet(site))) {
                    • 6
                      var site = "true";
                    }
                  • 9
                    var grandParentGroupId = JSONGroupAPI._getGrandParentGroupIdByName(groupName = "${grandParentGroupName}", site = "${site}");
                    • 171
                      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}'");
                          }
                        }
                    • 173
                      var companyId = JSONCompany.getCompanyId();
                      • 4
                        if (!(isSet(portalInstanceName))) {
                        • 5
                          var portalInstanceName = JSONCompany.getPortalInstanceName();
                          • 41
                            var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                          • 42
                            var testPortalInstance = PropsUtil.get("test.portal.instance");
                          • 44
                            if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                            • 45
                              var portalURL = JSONCompany.getPortalURL();
                              • 57
                                var portalURL = PropsUtil.get("portal.url");
                              • 59
                                return "${portalURL}";
                            • 47
                              var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                              • 63
                                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}'");
                                    }
                                  }
                              • 65
                                var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                              • 66
                                var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                              • 68
                                return "${portalInstanceName}";
                            • 49
                              return "${portalInstanceName}";
                            }
                          • 51
                            else {
                            • 52
                              return "localhost";
                            }
                        }
                      • 8
                        if (!(isSet(portalURL))) {
                        • 9
                          var portalURL = JSONCompany.getPortalURL();
                          • 57
                            var portalURL = PropsUtil.get("portal.url");
                          • 59
                            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}";
                    • 175
                      var portalURL = JSONCompany.getPortalURL();
                      • 57
                        var portalURL = PropsUtil.get("portal.url");
                      • 59
                        return "${portalURL}";
                    • 177
                      if (!(isSet(site))) {
                      • 178
                        var site = "true";
                      }
                    • 181
                      var curl = ''' ${portalURL}/api/jsonws/group/get-groups \ -u [email protected]:test \ -d companyId=${companyId} \ -d parentGroupId=0 \ -d site=${site} ''';
                    • 189
                      var groupId = JSONCurlUtil.post("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                    • 191
                      if ("${groupId}" == "") {
                      • 192
                        fail("FAIL. Cannot find group.");
                      }
                    • 195
                      return "${groupId}";
                  }
                • 11
                  else {
                  • 12
                    var grandParentGroupId = "0";
                  }
                • 15
                  return "${grandParentGroupId}";
              • 276
                var portalURL = JSONCompany.getPortalURL();
                • 57
                  var portalURL = PropsUtil.get("portal.url");
                • 59
                  return "${portalURL}";
              • 278
                var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${grandParentGroupId}/site/true \ -u [email protected]:test ''';
              • 283
                var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
              • 285
                if ("${groupId}" == "") {
                • 286
                  fail("FAIL. Cannot find group.");
                }
              • 289
                return "${groupId}";
            }
          • 57
            else {
            • 58
              var parentGroupId = "0";
            }
          • 61
            return "${parentGroupId}";
        • 33
          JSONGroupAPI._addGroup( groupDescriptionMap = "${groupDescriptionMap}", groupNameMap = "${groupNameMap}", manualMembership = "${manualMembership}", parentGroupId = "${parentGroupId}", portalURL = "${portalURL}", type = "${type}");
          • 5
            Variables.assertDefined(parameterList = "${groupNameMap}");
            • 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();
              • 57
                var portalURL = PropsUtil.get("portal.url");
              • 59
                return "${portalURL}";
            }
          • 11
            if ("${type}" == "Private") {
            • 12
              var type = "3";
            }
          • 14
            else if ("${type}" == "Restricted") {
            • 15
              var type = "2";
            }
          • 17
            else {
            • 18
              var type = "1";
            }
          • 21
            if ("${manualMembership}" == "false") {
            • 22
              var manualMembership = "false";
            }
          • 24
            else {
            • 25
              var manualMembership = "true";
            }
          • 28
            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 ''';
          • 44
            com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
      • 17
        Staging.openStagingAdmin(siteURLKey = "test-site-name");
        • 786
          Navigator.openWithAppendToBaseURL(urlAppend = "group/${siteURLKey}/~/control_panel/manage?p_p_id=com_liferay_staging_processes_web_portlet_StagingProcessesPortlet");
          • 365
            var baseURL = "${baseURL}";
          • 367
            if (contains("${baseURL}", "{baseURL}")) {
            • 368
              var baseURL = PropsUtil.get("portal.url");
            }
          • 371
            Open(locator1 = "${baseURL}/${urlAppend}");
      • 19
        Staging.activateStagingCP(siteName = "Test Site Name");
        • 4
          ProductMenuHelper.openProductMenu();
          • 46
            if ((IsElementNotPresent(locator1 = "ProductMenu#PRODUCT_MENU_OPENED")) && (IsElementPresent(locator1 = "ProductMenu#PRODUCT_MENU_CLOSED"))) {
            • 47
              Click(locator1 = "ProductMenu#TOGGLE");
            }
          • 50
            AssertElementPresent(locator1 = "ProductMenu#PRODUCT_MENU_OPENED");
          • 52
            AssertElementNotPresent(locator1 = "ProductMenu#PRODUCT_MENU_CLOSED");
          • 54
            if (IsElementPresent(key_text = "Back to Menu", locator1 = "Button#ANY")) {
            • 55
              Click( key_text = "Back to Menu", locator1 = "Button#ANY");
            }
          • 60
            AssertVisible(locator1 = "ProductMenu#PRODUCT_MENU_BODY");
        • 6
          AssertTextEquals.assertPartialText( locator1 = "ProductMenu#PRODUCT_MENU_PANEL_SITE_ADMINISTRATION_SITE_NAME", value1 = "${siteName}");
        • 10
          Pause(locator1 = "3000");
        • 12
          if (isSet(remoteStaging)) {
          • 13
            Check.checkHiddenToggleSwitch(locator1 = "SiteSettingsStaging#STAGING_REMOTE_LIVE");
          • 15
            Type( locator1 = "SiteSettingsStaging#REMOTE_STAGING_IP", value1 = "localhost");
          • 19
            Type( locator1 = "SiteSettingsStaging#REMOTE_STAGING_PORT", value1 = "${remotePort}");
          • 23
            Type( locator1 = "SiteSettingsStaging#REMOTE_STAGING_SITE_ID", value1 = "${siteID}");
          }
        • 28
          if (!(isSet(remoteStaging))) {
          • 29
            Check.checkHiddenToggleSwitch(locator1 = "SiteSettingsStaging#STAGING_LOCAL_LIVE");
          }
        • 32
          if ("${pageVersioningEnabled}" == "true") {
          • 33
            Click(locator1 = "Checkbox#ENABLED_ON_PUBLIC_PAGES");
          • 35
            Click(locator1 = "Checkbox#ENABLED_ON_PRIVATE_PAGES");
          }
        • 38
          Click(locator1 = "SiteSettingsStaging#CONTENT_SELECT_ALL_CHECKBOX");
        • 40
          if (isSet(noContent)) {
          • 41
            Click(locator1 = "SiteSettingsStaging#CONTENT_SELECT_ALL_CHECKBOX");
          }
        • 44
          if (isSet(uncheckContent)) {
          • 45
            var key_contentName = "${uncheckContent}";
          • 47
            Click(locator1 = "SiteSettingsStaging#CONTENT_CHECKBOX");
          }
        • 50
          if (isSet(isNotEditable)) {
          • 51
            var key_contentName = "${isNotEditable}";
          • 53
            AssertNotEditable(locator1 = "SiteSettingsStaging#CONTENT_CHECKBOX");
          }
        • 56
          if (isSet(recycleBinNotification)) {
          • 57
            AssertTextPresent( locator1 = "Message#ERROR_3_ALT", value1 = "The recycle bin of this site will be automatically emptied before turning on local staging. Make sure to manually restore anything you don't want to delete permanently before you continue.");
          }
        • 62
          if (isSet(remoteStaging)) {
          • 63
            Staging.saveRemoteStagingConfiguration(siteName = "${siteName}");
            • 1080
              AssertClickNoError( locator1 = "Button#SAVE", value1 = "Save");
            • 1084
              AssertConfirm(value1 = "Are you sure you want to activate remote staging for ${siteName}?");
            • 1086
              while (IsElementNotPresent(locator1 = "Message#SUCCESS")) {
              • 1087
                Pause(locator1 = "1000");
              }
            • 1090
              if (IsElementPresent(locator1 = "Button#CLOSE_MESSAGE")) {
              • 1091
                Click(locator1 = "Button#CLOSE_MESSAGE");
              }
          }
        • 66
          if (!(isSet(remoteStaging))) {
          • 67
            Staging.saveLocalStagingConfiguration(siteName = "${siteName}");
            • 1050
              AssertClickNoError( locator1 = "Button#SAVE", value1 = "Save");
            • 1054
              AssertConfirm(value1 = "Are you sure you want to activate local staging for ${siteName}?");
            • 1056
              while (IsElementNotPresent(locator1 = "Staging#PROCESS_SUCCESSFUL")) {
              • 1057
                Pause(locator1 = "1000");
              }
            • 1060
              AssertTextEquals( locator1 = "Staging#PROCESS_RESULT", value1 = "SUCCESSFUL");
          }
        • 70
          AssertTextNotPresent( locator1 = "Message#ERROR", value1 = "The tunneling servlet shared secret is not set.");
        • 74
          AssertTextNotPresent( locator1 = "Message#ERROR", value1 = "Your request failed to complete.");
        • 78
          AssertElementPresent(locator1 = "Button#PLUS");
        • 80
          AssertConsoleTextNotPresent(value1 = "Please configure tunneling.servlet.shared.secret");
        • 82
          AssertConsoleTextNotPresent(value1 = "javax.portlet.PortletException: java.lang.NullPointerException");
      }
    • 37
      test AddCollectionPageViaPageFinder {
      • 35
        @description = "This is the test for LPS-107774. Can create a Collection Page based on Collections or Collection Providers in Pages Tree panel of Staging site."
      • 38
        task ("Add three Web Content Articles based on Basic Web Content") {
        • 39
          for (var entryTitle : list "First Web Content,Second Web Content,Third Web Content") {
          • 40
            JSONWebcontent.addWebContent( content = "Web Content Content", groupName = "Test Site Name (Staging)", site = "false", title = "${entryTitle}");
            • 62
              Variables.assertDefined(parameterList = "${content},${groupName},${title}");
              • 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
              var groupId = JSONWebcontentSetter.setGroupId(groupName = "${groupName}", site = "${site}");
              • 66
                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}'");
                    }
                  }
              • 68
                if (!(isSet(site))) {
                • 69
                  var site = "true";
                }
              • 72
                var groupId = JSONGroupAPI._getGroupIdByName(groupName = "${groupName}", site = "${site}");
                • 224
                  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}'");
                      }
                    }
                • 226
                  if (!(isSet(portalURL))) {
                  • 227
                    var portalURL = JSONCompany.getPortalURL();
                    • 57
                      var portalURL = PropsUtil.get("portal.url");
                    • 59
                      return "${portalURL}";
                  }
                • 230
                  var companyId = JSONCompany.getCompanyId(portalURL = "${portalURL}");
                  • 4
                    if (!(isSet(portalInstanceName))) {
                    • 5
                      var portalInstanceName = JSONCompany.getPortalInstanceName();
                      • 41
                        var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                      • 42
                        var testPortalInstance = PropsUtil.get("test.portal.instance");
                      • 44
                        if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                        • 45
                          var portalURL = JSONCompany.getPortalURL();
                          • 57
                            var portalURL = PropsUtil.get("portal.url");
                          • 59
                            return "${portalURL}";
                        • 47
                          var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                          • 63
                            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}'");
                                }
                              }
                          • 65
                            var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                          • 66
                            var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                          • 68
                            return "${portalInstanceName}";
                        • 49
                          return "${portalInstanceName}";
                        }
                      • 51
                        else {
                        • 52
                          return "localhost";
                        }
                    }
                  • 8
                    if (!(isSet(portalURL))) {
                    • 9
                      var portalURL = JSONCompany.getPortalURL();
                      • 57
                        var portalURL = PropsUtil.get("portal.url");
                      • 59
                        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}";
                • 232
                  var parentGroupId = JSONGroupSetter.setParentGroupId(parentGroupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                  • 54
                    if (isSet(parentGroupName)) {
                    • 55
                      var parentGroupId = JSONGroupAPI._getParentGroupIdByName(groupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                      • 270
                        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}'");
                            }
                          }
                      • 272
                        var companyId = JSONCompany.getCompanyId();
                        • 4
                          if (!(isSet(portalInstanceName))) {
                          • 5
                            var portalInstanceName = JSONCompany.getPortalInstanceName();
                            • 41
                              var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                            • 42
                              var testPortalInstance = PropsUtil.get("test.portal.instance");
                            • 44
                              if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                              • 45
                                var portalURL = JSONCompany.getPortalURL();
                                • 57
                                  var portalURL = PropsUtil.get("portal.url");
                                • 59
                                  return "${portalURL}";
                              • 47
                                var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                                • 63
                                  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}'");
                                      }
                                    }
                                • 65
                                  var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                                • 66
                                  var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                                • 68
                                  return "${portalInstanceName}";
                              • 49
                                return "${portalInstanceName}";
                              }
                            • 51
                              else {
                              • 52
                                return "localhost";
                              }
                          }
                        • 8
                          if (!(isSet(portalURL))) {
                          • 9
                            var portalURL = JSONCompany.getPortalURL();
                            • 57
                              var portalURL = PropsUtil.get("portal.url");
                            • 59
                              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}";
                      • 274
                        var grandParentGroupId = JSONGroupSetter.setGrandParentGroupId(grandParentGroupName = "${grandParentGroupName}");
                        • 4
                          if (isSet(grandParentGroupName)) {
                          • 5
                            if (!(isSet(site))) {
                            • 6
                              var site = "true";
                            }
                          • 9
                            var grandParentGroupId = JSONGroupAPI._getGrandParentGroupIdByName(groupName = "${grandParentGroupName}", site = "${site}");
                            • 171
                              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}'");
                                  }
                                }
                            • 173
                              var companyId = JSONCompany.getCompanyId();
                              • 4
                                if (!(isSet(portalInstanceName))) {
                                • 5
                                  var portalInstanceName = JSONCompany.getPortalInstanceName();
                                  • 41
                                    var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                                  • 42
                                    var testPortalInstance = PropsUtil.get("test.portal.instance");
                                  • 44
                                    if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                                    • 45
                                      var portalURL = JSONCompany.getPortalURL();
                                      • 57
                                        var portalURL = PropsUtil.get("portal.url");
                                      • 59
                                        return "${portalURL}";
                                    • 47
                                      var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                                      • 63
                                        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}'");
                                            }
                                          }
                                      • 65
                                        var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                                      • 66
                                        var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                                      • 68
                                        return "${portalInstanceName}";
                                    • 49
                                      return "${portalInstanceName}";
                                    }
                                  • 51
                                    else {
                                    • 52
                                      return "localhost";
                                    }
                                }
                              • 8
                                if (!(isSet(portalURL))) {
                                • 9
                                  var portalURL = JSONCompany.getPortalURL();
                                  • 57
                                    var portalURL = PropsUtil.get("portal.url");
                                  • 59
                                    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}";
                            • 175
                              var portalURL = JSONCompany.getPortalURL();
                              • 57
                                var portalURL = PropsUtil.get("portal.url");
                              • 59
                                return "${portalURL}";
                            • 177
                              if (!(isSet(site))) {
                              • 178
                                var site = "true";
                              }
                            • 181
                              var curl = ''' ${portalURL}/api/jsonws/group/get-groups \ -u [email protected]:test \ -d companyId=${companyId} \ -d parentGroupId=0 \ -d site=${site} ''';
                            • 189
                              var groupId = JSONCurlUtil.post("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                            • 191
                              if ("${groupId}" == "") {
                              • 192
                                fail("FAIL. Cannot find group.");
                              }
                            • 195
                              return "${groupId}";
                          }
                        • 11
                          else {
                          • 12
                            var grandParentGroupId = "0";
                          }
                        • 15
                          return "${grandParentGroupId}";
                      • 276
                        var portalURL = JSONCompany.getPortalURL();
                        • 57
                          var portalURL = PropsUtil.get("portal.url");
                        • 59
                          return "${portalURL}";
                      • 278
                        var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${grandParentGroupId}/site/true \ -u [email protected]:test ''';
                      • 283
                        var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                      • 285
                        if ("${groupId}" == "") {
                        • 286
                          fail("FAIL. Cannot find group.");
                        }
                      • 289
                        return "${groupId}";
                    }
                  • 57
                    else {
                    • 58
                      var parentGroupId = "0";
                    }
                  • 61
                    return "${parentGroupId}";
                • 234
                  var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${parentGroupId}/site/${site} \ -u [email protected]:test ''';
                • 239
                  var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                • 241
                  if ("${groupId}" == "") {
                  • 242
                    fail("FAIL. Cannot find group.");
                  }
                • 245
                  echo("## * GroupId: ${groupId}");
                • 247
                  return "${groupId}";
              • 74
                return "${groupId}";
            • 66
              var contentXML = JSONWebcontentSetter.setContentXML( content = "${content}", source = "${source}");
              • 22
                JSONUtil2._exclusiveOrCheck( A = "${content}", B = "${contentMap}", failMessage = "Please only set 'content' or only 'contentMap' but not both or none.");
                • 113
                  if (((isSet(A)) && (isSet(B))) || ((!(isSet(B))) && (!(isSet(A))))) {
                  • 114
                    fail("${failMessage}");
                  }
              • 27
                if (isSet(contentMap)) {
                • 28
                  var contentXML = JSONWebcontentUtil._localizedConvertToXML(contentMap = "${contentMap}");
                  • 19
                    Variables.assertDefined(parameterList = "${contentMap}");
                    • 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}'");
                        }
                      }
                  • 23
                    var localeList = "";
                  • 25
                    for (var i : list "${contentMap}") {
                    • 26
                      var locale = StringUtil.extractFirst("${i}", ":");
                    • 27
                      var localeList = "${localeList},${locale}";
                    }
                  • 30
                    var localeList = RegexUtil.replace("${localeList}", ",(.*)", "1");
                  • 34
                    var dynamicContent = "";
                  • 36
                    for (var i : list "${contentMap}") {
                    • 37
                      var locale = StringUtil.extractFirst("${i}", ":");
                    • 38
                      var translated = StringUtil.extractLast("${i}", ":");
                    • 40
                      var dynamicContent = '''${dynamicContent} ${translated}''';
                    }
                  • 45
                    var contentXML = ''' ${dynamicContent} ''';
                  • 47
                    return "${contentXML}";
                }
              • 30
                else {
                • 31
                  var contentXML = JSONWebcontentUtil._convertToXML( content = "${content}", source = "${source}");
                  • 5
                    Variables.assertDefined(parameterList = "${content}");
                    • 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(source)) {
                    • 8
                      var contentXML = '''%0A%09%0A%09%09%0A%09%09%09%0A%09%09%0A%09%0A''';
                    }
                  • 10
                    else {
                    • 11
                      var contentXML = '''%0A%09%0A%09%09%0A%09%09%09${content}

                      ]]>%0A%09%09
                      %0A%09
                      %0A
                      ''';
                    }
                  • 14
                    return "${contentXML}";
                }
              • 36
                return "${contentXML}";
            • 70
              var descriptionMap = JSONWebcontentSetter.setDescriptionMap(description = "${description}");
              • 40
                if (isSet(description)) {
                • 41
                  var descriptionMap = '''{"en_US":"%3Cp%3E${description}%3C%2Fp%3E"}''';
                }
              • 43
                else {
                • 44
                  var descriptionMap = "{}";
                }
              • 47
                return "${descriptionMap}";
            • 72
              var folderId = JSONWebcontentSetter.setFolderId( folderName = "${folderName}", groupId = "${groupId}");
              • 51
                if (isSet(folderName)) {
                • 52
                  Variables.assertDefined(parameterList = "${groupId}");
                  • 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}'");
                      }
                    }
                • 54
                  var folderId = JSONWebcontentAPI._getFolderIdByFolderName( folderName = "${folderName}", groupId = "${groupId}");
                  • 107
                    Variables.assertDefined(parameterList = "${groupId},${folderName}");
                    • 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}'");
                        }
                      }
                  • 109
                    var portalURL = JSONCompany.getPortalURL();
                    • 57
                      var portalURL = PropsUtil.get("portal.url");
                    • 59
                      return "${portalURL}";
                  • 111
                    var curl = ''' ${portalURL}/api/jsonws/journal.journalfolder/get-folders \ -u [email protected]:test \ -d groupId=${groupId} ''';
                  • 117
                    var folderId = JSONCurlUtil.post("${curl}", "$.[?(@['name'] == '${folderName}')]['folderId']");
                  • 119
                    if ("${folderId}" == "") {
                    • 120
                      fail("FAIL. Cannot find folder.");
                    }
                  • 122
                    else {
                    • 123
                      return "${folderId}";
                    }
                }
              • 58
                else {
                • 59
                  var folderId = "0";
                }
              • 62
                return "${folderId}";
            • 76
              var serviceContext = JSONWebcontentSetter.setServiceContext( assetCategoryIds = "${assetCategoryIds}", assetTagNames = "${assetTagNames}", serviceContext = "${serviceContext}", workflowAction = "${workflowAction}");
              • 78
                if (!(isSet(serviceContext))) {
                • 79
                  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}");
                        • 224
                          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}'");
                              }
                            }
                        • 226
                          if (!(isSet(portalURL))) {
                          • 227
                            var portalURL = JSONCompany.getPortalURL();
                            • 57
                              var portalURL = PropsUtil.get("portal.url");
                            • 59
                              return "${portalURL}";
                          }
                        • 230
                          var companyId = JSONCompany.getCompanyId(portalURL = "${portalURL}");
                          • 4
                            if (!(isSet(portalInstanceName))) {
                            • 5
                              var portalInstanceName = JSONCompany.getPortalInstanceName();
                              • 41
                                var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                              • 42
                                var testPortalInstance = PropsUtil.get("test.portal.instance");
                              • 44
                                if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                                • 45
                                  var portalURL = JSONCompany.getPortalURL();
                                  • 57
                                    var portalURL = PropsUtil.get("portal.url");
                                  • 59
                                    return "${portalURL}";
                                • 47
                                  var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                                  • 63
                                    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}'");
                                        }
                                      }
                                  • 65
                                    var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                                  • 66
                                    var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                                  • 68
                                    return "${portalInstanceName}";
                                • 49
                                  return "${portalInstanceName}";
                                }
                              • 51
                                else {
                                • 52
                                  return "localhost";
                                }
                            }
                          • 8
                            if (!(isSet(portalURL))) {
                            • 9
                              var portalURL = JSONCompany.getPortalURL();
                              • 57
                                var portalURL = PropsUtil.get("portal.url");
                              • 59
                                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}";
                        • 232
                          var parentGroupId = JSONGroupSetter.setParentGroupId(parentGroupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                          • 54
                            if (isSet(parentGroupName)) {
                            • 55
                              var parentGroupId = JSONGroupAPI._getParentGroupIdByName(groupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                              • 270
                                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}'");
                                    }
                                  }
                              • 272
                                var companyId = JSONCompany.getCompanyId();
                                • 4
                                  if (!(isSet(portalInstanceName))) {
                                  • 5
                                    var portalInstanceName = JSONCompany.getPortalInstanceName();
                                    • 41
                                      var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                                    • 42
                                      var testPortalInstance = PropsUtil.get("test.portal.instance");
                                    • 44
                                      if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                                      • 45
                                        var portalURL = JSONCompany.getPortalURL();
                                        • 57
                                          var portalURL = PropsUtil.get("portal.url");
                                        • 59
                                          return "${portalURL}";
                                      • 47
                                        var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                                        • 63
                                          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}'");
                                              }
                                            }
                                        • 65
                                          var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                                        • 66
                                          var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                                        • 68
                                          return "${portalInstanceName}";
                                      • 49
                                        return "${portalInstanceName}";
                                      }
                                    • 51
                                      else {
                                      • 52
                                        return "localhost";
                                      }
                                  }
                                • 8
                                  if (!(isSet(portalURL))) {
                                  • 9
                                    var portalURL = JSONCompany.getPortalURL();
                                    • 57
                                      var portalURL = PropsUtil.get("portal.url");
                                    • 59
                                      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}";
                              • 274
                                var grandParentGroupId = JSONGroupSetter.setGrandParentGroupId(grandParentGroupName = "${grandParentGroupName}");
                                • 4
                                  if (isSet(grandParentGroupName)) {
                                  • 5
                                    if (!(isSet(site))) {
                                    • 6
                                      var site = "true";
                                    }
                                  • 9
                                    var grandParentGroupId = JSONGroupAPI._getGrandParentGroupIdByName(groupName = "${grandParentGroupName}", site = "${site}");
                                    • 171
                                      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}'");
                                          }
                                        }
                                    • 173
                                      var companyId = JSONCompany.getCompanyId();
                                      • 4
                                        if (!(isSet(portalInstanceName))) {
                                        • 5
                                          var portalInstanceName = JSONCompany.getPortalInstanceName();
                                          • 41
                                            var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                                          • 42
                                            var testPortalInstance = PropsUtil.get("test.portal.instance");
                                          • 44
                                            if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                                            • 45
                                              var portalURL = JSONCompany.getPortalURL();
                                              • 57
                                                var portalURL = PropsUtil.get("portal.url");
                                              • 59
                                                return "${portalURL}";
                                            • 47
                                              var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                                              • 63
                                                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}'");
                                                    }
                                                  }
                                              • 65
                                                var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                                              • 66
                                                var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                                              • 68
                                                return "${portalInstanceName}";
                                            • 49
                                              return "${portalInstanceName}";
                                            }
                                          • 51
                                            else {
                                            • 52
                                              return "localhost";
                                            }
                                        }
                                      • 8
                                        if (!(isSet(portalURL))) {
                                        • 9
                                          var portalURL = JSONCompany.getPortalURL();
                                          • 57
                                            var portalURL = PropsUtil.get("portal.url");
                                          • 59
                                            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}";
                                    • 175
                                      var portalURL = JSONCompany.getPortalURL();
                                      • 57
                                        var portalURL = PropsUtil.get("portal.url");
                                      • 59
                                        return "${portalURL}";
                                    • 177
                                      if (!(isSet(site))) {
                                      • 178
                                        var site = "true";
                                      }
                                    • 181
                                      var curl = ''' ${portalURL}/api/jsonws/group/get-groups \ -u [email protected]:test \ -d companyId=${companyId} \ -d parentGroupId=0 \ -d site=${site} ''';
                                    • 189
                                      var groupId = JSONCurlUtil.post("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                                    • 191
                                      if ("${groupId}" == "") {
                                      • 192
                                        fail("FAIL. Cannot find group.");
                                      }
                                    • 195
                                      return "${groupId}";
                                  }
                                • 11
                                  else {
                                  • 12
                                    var grandParentGroupId = "0";
                                  }
                                • 15
                                  return "${grandParentGroupId}";
                              • 276
                                var portalURL = JSONCompany.getPortalURL();
                                • 57
                                  var portalURL = PropsUtil.get("portal.url");
                                • 59
                                  return "${portalURL}";
                              • 278
                                var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${grandParentGroupId}/site/true \ -u [email protected]:test ''';
                              • 283
                                var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                              • 285
                                if ("${groupId}" == "") {
                                • 286
                                  fail("FAIL. Cannot find group.");
                                }
                              • 289
                                return "${groupId}";
                            }
                          • 57
                            else {
                            • 58
                              var parentGroupId = "0";
                            }
                          • 61
                            return "${parentGroupId}";
                        • 234
                          var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${parentGroupId}/site/${site} \ -u [email protected]:test ''';
                        • 239
                          var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                        • 241
                          if ("${groupId}" == "") {
                          • 242
                            fail("FAIL. Cannot find group.");
                          }
                        • 245
                          echo("## * GroupId: ${groupId}");
                        • 247
                          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}";
                }
              • 87
                return "${serviceContext}";
            • 82
              var titleMap = JSONWebcontentSetter.setTitleMap(title = "${title}");
              • 109
                JSONUtil2._exclusiveOrCheck( A = "${title}", B = "${titleMap}", failMessage = "Please only set 'title' or only 'titleMap' but not both or none.");
                • 113
                  if (((isSet(A)) && (isSet(B))) || ((!(isSet(B))) && (!(isSet(A))))) {
                  • 114
                    fail("${failMessage}");
                  }
              • 114
                if (isSet(titleMap)) {
                • 115
                  var titleMap = JSONUtil2._convertLocalizedListToMap(listMap = "${titleMap}");
                  • 94
                    var localizedMap = "{";
                  • 96
                    for (var i : list "${listMap}") {
                    • 97
                      var locale = StringUtil.extractFirst("${i}", ":");
                    • 98
                      var translated = StringUtil.extractLast("${i}", ":");
                    • 100
                      var localizedMap = '''${localizedMap}"${locale}":"${translated}",''';
                    }
                  • 105
                    var localizedMap = RegexUtil.replace("${localizedMap}", "(.*)(?=,)", "1");
                  • 106
                    var localizedMap = "${localizedMap}}";
                  • 108
                    return "${localizedMap}";
                }
              • 117
                else {
                • 118
                  var titleMap = '''{"en_US":"${title}"}''';
                }
              • 121
                return "${titleMap}";
            • 84
              JSONWebcontentAPI._addWebContent( contentXML = "${contentXML}", descriptionMap = "${descriptionMap}", folderId = "${folderId}", groupId = "${groupId}", serviceContext = "${serviceContext}", titleMap = "${titleMap}", userEmailAddress = "${userEmailAddress}", userPassword = "${userPassword}");
              • 38
                Variables.assertDefined(parameterList = "${groupId},${folderId},${titleMap},${descriptionMap},${contentXML},${serviceContext}");
                • 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}'");
                    }
                  }
              • 40
                var portalURL = JSONCompany.getPortalURL();
                • 57
                  var portalURL = PropsUtil.get("portal.url");
                • 59
                  return "${portalURL}";
              • 42
                if (!(isSet(userEmailAddress))) {
                • 43
                  var userEmailAddress = "[email protected]";
                }
              • 46
                if (!(isSet(userPassword))) {
                • 47
                  var userPassword = "test";
                }
              • 50
                var curl = ''' ${portalURL}/api/jsonws/journal.journalarticle/add-article \ -u ${userEmailAddress}:${userPassword} \ -d externalReferenceCode= \ -d groupId=${groupId} \ -d folderId=${folderId} \ -d titleMap=${titleMap} \ -d descriptionMap=${descriptionMap} \ -d content=${contentXML} \ -d ddmStructureKey=BASIC-WEB-CONTENT \ -d ddmTemplateKey=BASIC-WEB-CONTENT \ -d serviceContext=${serviceContext} ''';
              • 64
                com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
          }
        }
      • 48
        task ("Add a dynamic Collections and select Web Content Article as Asset Entry Type") {
        • 49
          JSONAssetlist.addDynamicAssetListEntryWithItemType( groupName = "Test Site Name (Staging)", itemSubtype = "Basic Web Content", itemType = "Web Content Article", site = "false", title = "Dynamic Collection");
          • 17
            Variables.assertDefined(parameterList = "${groupName},${itemType},${title}");
            • 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 groupId = JSONAssetlistSetter.setGroupId(groupName = "${groupName}", site = "${site}");
            • 4
              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}'");
                  }
                }
            • 6
              if (!(isSet(site))) {
              • 7
                var site = "true";
              }
            • 10
              var groupId = JSONGroupAPI._getGroupIdByName(groupName = "${groupName}", site = "${site}");
              • 224
                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}'");
                    }
                  }
              • 226
                if (!(isSet(portalURL))) {
                • 227
                  var portalURL = JSONCompany.getPortalURL();
                  • 57
                    var portalURL = PropsUtil.get("portal.url");
                  • 59
                    return "${portalURL}";
                }
              • 230
                var companyId = JSONCompany.getCompanyId(portalURL = "${portalURL}");
                • 4
                  if (!(isSet(portalInstanceName))) {
                  • 5
                    var portalInstanceName = JSONCompany.getPortalInstanceName();
                    • 41
                      var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                    • 42
                      var testPortalInstance = PropsUtil.get("test.portal.instance");
                    • 44
                      if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                      • 45
                        var portalURL = JSONCompany.getPortalURL();
                        • 57
                          var portalURL = PropsUtil.get("portal.url");
                        • 59
                          return "${portalURL}";
                      • 47
                        var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                        • 63
                          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}'");
                              }
                            }
                        • 65
                          var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                        • 66
                          var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                        • 68
                          return "${portalInstanceName}";
                      • 49
                        return "${portalInstanceName}";
                      }
                    • 51
                      else {
                      • 52
                        return "localhost";
                      }
                  }
                • 8
                  if (!(isSet(portalURL))) {
                  • 9
                    var portalURL = JSONCompany.getPortalURL();
                    • 57
                      var portalURL = PropsUtil.get("portal.url");
                    • 59
                      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}";
              • 232
                var parentGroupId = JSONGroupSetter.setParentGroupId(parentGroupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                • 54
                  if (isSet(parentGroupName)) {
                  • 55
                    var parentGroupId = JSONGroupAPI._getParentGroupIdByName(groupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                    • 270
                      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}'");
                          }
                        }
                    • 272
                      var companyId = JSONCompany.getCompanyId();
                      • 4
                        if (!(isSet(portalInstanceName))) {
                        • 5
                          var portalInstanceName = JSONCompany.getPortalInstanceName();
                          • 41
                            var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                          • 42
                            var testPortalInstance = PropsUtil.get("test.portal.instance");
                          • 44
                            if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                            • 45
                              var portalURL = JSONCompany.getPortalURL();
                              • 57
                                var portalURL = PropsUtil.get("portal.url");
                              • 59
                                return "${portalURL}";
                            • 47
                              var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                              • 63
                                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}'");
                                    }
                                  }
                              • 65
                                var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                              • 66
                                var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                              • 68
                                return "${portalInstanceName}";
                            • 49
                              return "${portalInstanceName}";
                            }
                          • 51
                            else {
                            • 52
                              return "localhost";
                            }
                        }
                      • 8
                        if (!(isSet(portalURL))) {
                        • 9
                          var portalURL = JSONCompany.getPortalURL();
                          • 57
                            var portalURL = PropsUtil.get("portal.url");
                          • 59
                            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}";
                    • 274
                      var grandParentGroupId = JSONGroupSetter.setGrandParentGroupId(grandParentGroupName = "${grandParentGroupName}");
                      • 4
                        if (isSet(grandParentGroupName)) {
                        • 5
                          if (!(isSet(site))) {
                          • 6
                            var site = "true";
                          }
                        • 9
                          var grandParentGroupId = JSONGroupAPI._getGrandParentGroupIdByName(groupName = "${grandParentGroupName}", site = "${site}");
                          • 171
                            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}'");
                                }
                              }
                          • 173
                            var companyId = JSONCompany.getCompanyId();
                            • 4
                              if (!(isSet(portalInstanceName))) {
                              • 5
                                var portalInstanceName = JSONCompany.getPortalInstanceName();
                                • 41
                                  var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                                • 42
                                  var testPortalInstance = PropsUtil.get("test.portal.instance");
                                • 44
                                  if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                                  • 45
                                    var portalURL = JSONCompany.getPortalURL();
                                    • 57
                                      var portalURL = PropsUtil.get("portal.url");
                                    • 59
                                      return "${portalURL}";
                                  • 47
                                    var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                                    • 63
                                      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}'");
                                          }
                                        }
                                    • 65
                                      var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                                    • 66
                                      var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                                    • 68
                                      return "${portalInstanceName}";
                                  • 49
                                    return "${portalInstanceName}";
                                  }
                                • 51
                                  else {
                                  • 52
                                    return "localhost";
                                  }
                              }
                            • 8
                              if (!(isSet(portalURL))) {
                              • 9
                                var portalURL = JSONCompany.getPortalURL();
                                • 57
                                  var portalURL = PropsUtil.get("portal.url");
                                • 59
                                  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}";
                          • 175
                            var portalURL = JSONCompany.getPortalURL();
                            • 57
                              var portalURL = PropsUtil.get("portal.url");
                            • 59
                              return "${portalURL}";
                          • 177
                            if (!(isSet(site))) {
                            • 178
                              var site = "true";
                            }
                          • 181
                            var curl = ''' ${portalURL}/api/jsonws/group/get-groups \ -u [email protected]:test \ -d companyId=${companyId} \ -d parentGroupId=0 \ -d site=${site} ''';
                          • 189
                            var groupId = JSONCurlUtil.post("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                          • 191
                            if ("${groupId}" == "") {
                            • 192
                              fail("FAIL. Cannot find group.");
                            }
                          • 195
                            return "${groupId}";
                        }
                      • 11
                        else {
                        • 12
                          var grandParentGroupId = "0";
                        }
                      • 15
                        return "${grandParentGroupId}";
                    • 276
                      var portalURL = JSONCompany.getPortalURL();
                      • 57
                        var portalURL = PropsUtil.get("portal.url");
                      • 59
                        return "${portalURL}";
                    • 278
                      var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${grandParentGroupId}/site/true \ -u [email protected]:test ''';
                    • 283
                      var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                    • 285
                      if ("${groupId}" == "") {
                      • 286
                        fail("FAIL. Cannot find group.");
                      }
                    • 289
                      return "${groupId}";
                  }
                • 57
                  else {
                  • 58
                    var parentGroupId = "0";
                  }
                • 61
                  return "${parentGroupId}";
              • 234
                var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${parentGroupId}/site/${site} \ -u [email protected]:test ''';
              • 239
                var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
              • 241
                if ("${groupId}" == "") {
                • 242
                  fail("FAIL. Cannot find group.");
                }
              • 245
                echo("## * GroupId: ${groupId}");
              • 247
                return "${groupId}";
            • 12
              return "${groupId}";
          • 21
            JSONAssetlistAPI._addDynamicAssetListEntry( groupId = "${groupId}", itemSubtype = "${itemSubtype}", itemType = "${itemType}", title = "${title}");
            • 24
              Variables.assertDefined(parameterList = "${groupId},${itemType},${title}");
              • 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}'");
                  }
                }
            • 26
              var portalURL = JSONCompany.getPortalURL();
              • 57
                var portalURL = PropsUtil.get("portal.url");
              • 59
                return "${portalURL}";
            • 28
              var userId = JSONUserAPI._getUserIdByEmailAddress(userEmailAddress = "[email protected]");
              • 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();
                    • 41
                      var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                    • 42
                      var testPortalInstance = PropsUtil.get("test.portal.instance");
                    • 44
                      if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                      • 45
                        var portalURL = JSONCompany.getPortalURL();
                        • 57
                          var portalURL = PropsUtil.get("portal.url");
                        • 59
                          return "${portalURL}";
                      • 47
                        var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                        • 63
                          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}'");
                              }
                            }
                        • 65
                          var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                        • 66
                          var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                        • 68
                          return "${portalInstanceName}";
                      • 49
                        return "${portalInstanceName}";
                      }
                    • 51
                      else {
                      • 52
                        return "localhost";
                      }
                  }
                • 8
                  if (!(isSet(portalURL))) {
                  • 9
                    var portalURL = JSONCompany.getPortalURL();
                    • 57
                      var portalURL = PropsUtil.get("portal.url");
                    • 59
                      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();
                  • 57
                    var portalURL = PropsUtil.get("portal.url");
                  • 59
                    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}";
            • 30
              var typeSettings = JSONAssetlistSetter.setTypeSettings( groupId = "${groupId}", itemSubtype = "${itemSubtype}", itemType = "${itemType}", selectionType = "dynamic");
              • 30
                var globalGroupId = JSONGroupAPI._getGroupIdByName( groupName = "Global", site = "true");
                • 224
                  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}'");
                      }
                    }
                • 226
                  if (!(isSet(portalURL))) {
                  • 227
                    var portalURL = JSONCompany.getPortalURL();
                    • 57
                      var portalURL = PropsUtil.get("portal.url");
                    • 59
                      return "${portalURL}";
                  }
                • 230
                  var companyId = JSONCompany.getCompanyId(portalURL = "${portalURL}");
                  • 4
                    if (!(isSet(portalInstanceName))) {
                    • 5
                      var portalInstanceName = JSONCompany.getPortalInstanceName();
                      • 41
                        var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                      • 42
                        var testPortalInstance = PropsUtil.get("test.portal.instance");
                      • 44
                        if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                        • 45
                          var portalURL = JSONCompany.getPortalURL();
                          • 57
                            var portalURL = PropsUtil.get("portal.url");
                          • 59
                            return "${portalURL}";
                        • 47
                          var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                          • 63
                            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}'");
                                }
                              }
                          • 65
                            var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                          • 66
                            var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                          • 68
                            return "${portalInstanceName}";
                        • 49
                          return "${portalInstanceName}";
                        }
                      • 51
                        else {
                        • 52
                          return "localhost";
                        }
                    }
                  • 8
                    if (!(isSet(portalURL))) {
                    • 9
                      var portalURL = JSONCompany.getPortalURL();
                      • 57
                        var portalURL = PropsUtil.get("portal.url");
                      • 59
                        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}";
                • 232
                  var parentGroupId = JSONGroupSetter.setParentGroupId(parentGroupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                  • 54
                    if (isSet(parentGroupName)) {
                    • 55
                      var parentGroupId = JSONGroupAPI._getParentGroupIdByName(groupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                      • 270
                        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}'");
                            }
                          }
                      • 272
                        var companyId = JSONCompany.getCompanyId();
                        • 4
                          if (!(isSet(portalInstanceName))) {
                          • 5
                            var portalInstanceName = JSONCompany.getPortalInstanceName();
                            • 41
                              var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                            • 42
                              var testPortalInstance = PropsUtil.get("test.portal.instance");
                            • 44
                              if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                              • 45
                                var portalURL = JSONCompany.getPortalURL();
                                • 57
                                  var portalURL = PropsUtil.get("portal.url");
                                • 59
                                  return "${portalURL}";
                              • 47
                                var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                                • 63
                                  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}'");
                                      }
                                    }
                                • 65
                                  var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                                • 66
                                  var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                                • 68
                                  return "${portalInstanceName}";
                              • 49
                                return "${portalInstanceName}";
                              }
                            • 51
                              else {
                              • 52
                                return "localhost";
                              }
                          }
                        • 8
                          if (!(isSet(portalURL))) {
                          • 9
                            var portalURL = JSONCompany.getPortalURL();
                            • 57
                              var portalURL = PropsUtil.get("portal.url");
                            • 59
                              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}";
                      • 274
                        var grandParentGroupId = JSONGroupSetter.setGrandParentGroupId(grandParentGroupName = "${grandParentGroupName}");
                        • 4
                          if (isSet(grandParentGroupName)) {
                          • 5
                            if (!(isSet(site))) {
                            • 6
                              var site = "true";
                            }
                          • 9
                            var grandParentGroupId = JSONGroupAPI._getGrandParentGroupIdByName(groupName = "${grandParentGroupName}", site = "${site}");
                            • 171
                              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}'");
                                  }
                                }
                            • 173
                              var companyId = JSONCompany.getCompanyId();
                              • 4
                                if (!(isSet(portalInstanceName))) {
                                • 5
                                  var portalInstanceName = JSONCompany.getPortalInstanceName();
                                  • 41
                                    var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                                  • 42
                                    var testPortalInstance = PropsUtil.get("test.portal.instance");
                                  • 44
                                    if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                                    • 45
                                      var portalURL = JSONCompany.getPortalURL();
                                      • 57
                                        var portalURL = PropsUtil.get("portal.url");
                                      • 59
                                        return "${portalURL}";
                                    • 47
                                      var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                                      • 63
                                        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}'");
                                            }
                                          }
                                      • 65
                                        var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                                      • 66
                                        var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                                      • 68
                                        return "${portalInstanceName}";
                                    • 49
                                      return "${portalInstanceName}";
                                    }
                                  • 51
                                    else {
                                    • 52
                                      return "localhost";
                                    }
                                }
                              • 8
                                if (!(isSet(portalURL))) {
                                • 9
                                  var portalURL = JSONCompany.getPortalURL();
                                  • 57
                                    var portalURL = PropsUtil.get("portal.url");
                                  • 59
                                    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}";
                            • 175
                              var portalURL = JSONCompany.getPortalURL();
                              • 57
                                var portalURL = PropsUtil.get("portal.url");
                              • 59
                                return "${portalURL}";
                            • 177
                              if (!(isSet(site))) {
                              • 178
                                var site = "true";
                              }
                            • 181
                              var curl = ''' ${portalURL}/api/jsonws/group/get-groups \ -u [email protected]:test \ -d companyId=${companyId} \ -d parentGroupId=0 \ -d site=${site} ''';
                            • 189
                              var groupId = JSONCurlUtil.post("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                            • 191
                              if ("${groupId}" == "") {
                              • 192
                                fail("FAIL. Cannot find group.");
                              }
                            • 195
                              return "${groupId}";
                          }
                        • 11
                          else {
                          • 12
                            var grandParentGroupId = "0";
                          }
                        • 15
                          return "${grandParentGroupId}";
                      • 276
                        var portalURL = JSONCompany.getPortalURL();
                        • 57
                          var portalURL = PropsUtil.get("portal.url");
                        • 59
                          return "${portalURL}";
                      • 278
                        var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${grandParentGroupId}/site/true \ -u [email protected]:test ''';
                      • 283
                        var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                      • 285
                        if ("${groupId}" == "") {
                        • 286
                          fail("FAIL. Cannot find group.");
                        }
                      • 289
                        return "${groupId}";
                    }
                  • 57
                    else {
                    • 58
                      var parentGroupId = "0";
                    }
                  • 61
                    return "${parentGroupId}";
                • 234
                  var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${parentGroupId}/site/${site} \ -u [email protected]:test ''';
                • 239
                  var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                • 241
                  if ("${groupId}" == "") {
                  • 242
                    fail("FAIL. Cannot find group.");
                  }
                • 245
                  echo("## * GroupId: ${groupId}");
                • 247
                  return "${groupId}";
              • 34
                var list = ListUtil.newList();
              • 36
                ListUtil.add("${list}", "com.liferay.blogs.model.BlogsEntry");
              • 37
                ListUtil.add("${list}", "com.liferay.bookmarks.model.BookmarksEntry");
              • 38
                ListUtil.add("${list}", "com.liferay.bookmarks.model.BookmarksFolder");
              • 39
                ListUtil.add("${list}", "com.liferay.calendar.model.CalendarBooking");
              • 40
                ListUtil.add("${list}", "com.liferay.commerce.model.CommerceOrder");
              • 41
                ListUtil.add("${list}", "com.liferay.document.library.kernel.model.DLFileEntry");
              • 42
                ListUtil.add("${list}", "com.liferay.document.library.kernel.model.DLFolder");
              • 43
                ListUtil.add("${list}", "com.liferay.dynamic.data.lists.model.DDLRecord");
              • 44
                ListUtil.add("${list}", "com.liferay.knowledge.base.model.KBArticle");
              • 45
                ListUtil.add("${list}", "com.liferay.message.boards.model.MBMessage");
              • 46
                ListUtil.add("${list}", "com.liferay.translation.model.TranslationEntry");
              • 47
                ListUtil.add("${list}", "com.liferay.journal.model.JournalArticle");
              • 48
                ListUtil.add("${list}", "com.liferay.journal.model.JournalFolder");
              • 49
                ListUtil.add("${list}", "com.liferay.wiki.model.WikiPage");
              • 51
                var values = ListUtil.toString("${list}");
              • 53
                var list = ListUtil.newList();
              • 55
                for (var value : list "${values}") {
                • 56
                  var classNameId = JSONClassname._getClassNameId(value = "${value}");
                  • 5
                    Variables.assertDefined(parameterList = "${value}");
                    • 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
                    var portalURL = JSONCompany.getPortalURL();
                    • 57
                      var portalURL = PropsUtil.get("portal.url");
                    • 59
                      return "${portalURL}";
                  • 9
                    var curl = ''' ${portalURL}/api/jsonws/classname/fetch-class-name \ -u [email protected]:test \ -d value=${value} ''';
                  • 14
                    var classNameId = JSONCurlUtil.post("${curl}", "$.[?(@['value'] == '${value}')]['classNameId']");
                  • 16
                    if ("${classNameId}" == "") {
                    • 17
                      echo("The ${value} doesn't exist.");
                    }
                  • 20
                    return "${classNameId}";
                • 58
                  if ("${value}" != "") {
                  • 59
                    ListUtil.add("${list}","${classNameId}");
                  }
                }
              • 63
                var classNameIds = ListUtil.toString("${list}");
              • 65
                var googleDriveShortcutClassTypeId = JSONDLfileentrytype._getFileEntryTypeId( fileEntryTypeName = "Google Drive Shortcut", groupId = "${globalGroupId}");
                • 5
                  Variables.assertDefined(parameterList = "${fileEntryTypeName},${groupId}");
                  • 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
                  var portalURL = JSONCompany.getPortalURL();
                  • 57
                    var portalURL = PropsUtil.get("portal.url");
                  • 59
                    return "${portalURL}";
                • 9
                  var curl = ''' ${portalURL}/api/jsonws/dlfileentrytype/get-file-entry-types \ -u [email protected]:test \ -d groupIds=[${groupId}] ''';
                • 15
                  var fileEntryTypeId = JSONCurlUtil.post("${curl}", "$.[?(@['nameCurrentValue'] == '${fileEntryTypeName}')]['fileEntryTypeId']");
                • 17
                  if ("${fileEntryTypeId}" == "") {
                  • 18
                    echo("The ${fileEntryTypeName} doesn't exist.");
                  }
                • 21
                  return "${fileEntryTypeId}";
              • 69
                var basicDocumentClassTypeId = "0";
              • 71
                var classTypeIdsDLFileEntry = JSONDLfileentrytype._getFileEntryTypeIds(groupId = "${groupId}");
                • 26
                  Variables.assertDefined(parameterList = "${groupId}");
                  • 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}'");
                      }
                    }
                • 28
                  var portalURL = JSONCompany.getPortalURL();
                  • 57
                    var portalURL = PropsUtil.get("portal.url");
                  • 59
                    return "${portalURL}";
                • 30
                  var curl = ''' ${portalURL}/api/jsonws/dlfileentrytype/get-file-entry-types \ -u [email protected]:test \ -d groupIds=[${groupId}] ''';
                • 36
                  var fileEntryTypeIds = JSONCurlUtil.post("${curl}", "$..fileEntryTypeId");
                • 38
                  return "${fileEntryTypeIds}";
              • 73
                if ("${classTypeIdsDLFileEntry}" == "") {
                • 74
                  if ("${googleDriveShortcutClassTypeId}" != "") {
                  • 75
                    var classTypeIdsDLFileEntry = '''${basicDocumentClassTypeId},${googleDriveShortcutClassTypeId}''';
                  }
                • 77
                  else {
                  • 78
                    var classTypeIdsDLFileEntry = '''${basicDocumentClassTypeId}''';
                  }
                }
              • 81
                else {
                • 82
                  if ("${googleDriveShortcutClassTypeId}" != "") {
                  • 83
                    var classTypeIdsDLFileEntry = '''${basicDocumentClassTypeId},${googleDriveShortcutClassTypeId},${classTypeIdsDLFileEntry}''';
                  }
                • 85
                  else {
                  • 86
                    var classTypeIdsDLFileEntry = '''${basicDocumentClassTypeId},${classTypeIdsDLFileEntry}''';
                  }
                }
              • 90
                var classNameId = JSONClassname._getClassNameId(value = "com.liferay.journal.model.JournalArticle");
                • 5
                  Variables.assertDefined(parameterList = "${value}");
                  • 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
                  var portalURL = JSONCompany.getPortalURL();
                  • 57
                    var portalURL = PropsUtil.get("portal.url");
                  • 59
                    return "${portalURL}";
                • 9
                  var curl = ''' ${portalURL}/api/jsonws/classname/fetch-class-name \ -u [email protected]:test \ -d value=${value} ''';
                • 14
                  var classNameId = JSONCurlUtil.post("${curl}", "$.[?(@['value'] == '${value}')]['classNameId']");
                • 16
                  if ("${classNameId}" == "") {
                  • 17
                    echo("The ${value} doesn't exist.");
                  }
                • 20
                  return "${classNameId}";
              • 92
                var basicWebContentClassTypeId = JSONDDMstructure._getStructureId( classNameId = "${classNameId}", groupId = "${globalGroupId}", structureName = "Basic Web Content");
                • 5
                  Variables.assertDefined(parameterList = "${classNameId},${groupId},${structureName}");
                  • 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
                  var portalURL = JSONCompany.getPortalURL();
                  • 57
                    var portalURL = PropsUtil.get("portal.url");
                  • 59
                    return "${portalURL}";
                • 9
                  var companyId = JSONCompany.getCompanyId();
                  • 4
                    if (!(isSet(portalInstanceName))) {
                    • 5
                      var portalInstanceName = JSONCompany.getPortalInstanceName();
                      • 41
                        var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                      • 42
                        var testPortalInstance = PropsUtil.get("test.portal.instance");
                      • 44
                        if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                        • 45
                          var portalURL = JSONCompany.getPortalURL();
                          • 57
                            var portalURL = PropsUtil.get("portal.url");
                          • 59
                            return "${portalURL}";
                        • 47
                          var portalInstanceName = JSONCompany.parsePortalInstanceURL(portalURL = "${portalURL}");
                          • 63
                            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}'");
                                }
                              }
                          • 65
                            var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                          • 66
                            var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                          • 68
                            return "${portalInstanceName}";
                        • 49
                          return "${portalInstanceName}";
                        }
                      • 51
                        else {
                        • 52
                          return "localhost";
                        }
                    }
                  • 8
                    if (!(isSet(portalURL))) {
                    • 9
                      var portalURL = JSONCompany.getPortalURL();
                      • 57
                        var portalURL = PropsUtil.get("portal.url");
                      • 59
                        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}";
                • 11
                  var curl = ''' ${portalURL}/api/jsonws/ddm.ddmstructure/get-structures \ -u [email protected]:test \ -d companyId=${companyId} \ -d groupIds=[${groupId}] \ -d classNameId=${classNameId} \ -d "start=-1" \ -d "end=-1" \ -d -orderByComparator= ''';
                • 22
                  var structureId = JSONCurlUtil.post("${curl}", "$.[?(@['nameCurrentValue'] == '${structureName}')]['structureId']");
                • 24
                  if ("${structureId}" == "") {
                  • 25
                    fail("FAIL. Cannot find structureId.");
                  }
                • 28
                  return "${structureId}";
              • 97
                var classTypeIdsDDMStructure = JSONDDMstructure._getStructureIds( classNameId = "${classNameId}", groupId = "${groupId}");
                • 33
                  Variables.assertDefined(parameterList = "${classNameId},${groupId}");
                  • 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}'");
                      }
                    }
                • 35
                  var portalURL = JSONCompany.getPortalURL();
                  • 57
                    var portalURL = PropsUtil.get("portal.url");
                  • 59
                    return "${portalURL}";
                • 37
                  var companyId = JSONCompany.getCompanyId();
                  • 4
                    if (!(isSet(portalInstanceName))) {
                    • 5
                      var portalInstanceName = JSONCompany.getPortalInstanceName();
                      • 41
                        var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                      • 42
                        var testPortalInstance = PropsUtil.get("test.portal.instance");
                      • 44
                        if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                        • 45
                          var portalURL = JSONCompany.getPortalURL();