LocalFile.InfoListProviders#set-up
  • 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 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 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 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 IsElementPresent with locator1//div[contains(@class,'portal-message') and contains(@class,'alert-info')]
    • 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,'portal-message') and contains(@class,'alert-info')]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[contains(@class,'portal-message') and contains(@class,'alert-info')]
  • Running AssertClick with locator1//span[contains(@class,'sign-in')]/a/span with value1Sign In
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Sign In
    • 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;')]Sign In
    • Running assertJavaScriptErrors with parameters//span[contains(@class,'sign-in')]/a/span
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Sign In
    • 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;')]Sign In
    • Running assertJavaScriptErrors with parameters//span[contains(@class,'sign-in')]/a/span
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Sign In
    • 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;')]Sign In
    • Running assertJavaScriptErrors with parameters//span[contains(@class,'sign-in')]/a/span
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//span[contains(@class,'sign-in')]/a/spanSign In
    • Running waitForTextCaseInsensitive with parameters//span[contains(@class,'sign-in')]/a/spanSign In
    • Running assertTextCaseInsensitive with parameters//span[contains(@class,'sign-in')]/a/spanSign In
    • Running assertJavaScriptErrors with parameters//span[contains(@class,'sign-in')]/a/span
    • Running assertLiferayErrors
    • Running mouseOver with parameters//span[contains(@class,'sign-in')]/a/span
    • Running clickAt with parameters//span[contains(@class,'sign-in')]/a/span
    • Running assertJavaScriptErrors with parameters//span[contains(@class,'sign-in')]/a/span
    • Running assertLiferayErrors
  • Running Type#typePause with locator1//div[label[contains(.,'Email Address')]]/input[@type='text'] | //div[label[contains(.,'Dirección de correo')]]/input[@type='text'] | //div[label[contains(.,'メールアドレス')]]/input[@type='text'] | //div[label[contains(.,'邮箱地址')]]/input[@type='text'] | //div[contains(.,'E-Mail-Adresse')]/input[@type='text'] with value1[email protected]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')][email protected]
    • 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;')][email protected]
    • Running assertJavaScriptErrors with parameters//div[label[contains(.,'Email Address')]]/input[@type='text'] | //div[label[contains(.,'Dirección de correo')]]/input[@type='text'] | //div[label[contains(.,'メールアドレス')]]/input[@type='text'] | //div[label[contains(.,'邮箱地址')]]/input[@type='text'] | //div[contains(.,'E-Mail-Adresse')]/input[@type='text']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[label[contains(.,'Email Address')]]/input[@type='text'] | //div[label[contains(.,'Dirección de correo')]]/input[@type='text'] | //div[label[contains(.,'メールアドレス')]]/input[@type='text'] | //div[label[contains(.,'邮箱地址')]]/input[@type='text'] | //div[contains(.,'E-Mail-Adresse')]/input[@type='text'][email protected]
    • Running waitForEditable with parameters//div[label[contains(.,'Email Address')]]/input[@type='text'] | //div[label[contains(.,'Dirección de correo')]]/input[@type='text'] | //div[label[contains(.,'メールアドレス')]]/input[@type='text'] | //div[label[contains(.,'邮箱地址')]]/input[@type='text'] | //div[contains(.,'E-Mail-Adresse')]/input[@type='text']
    • Running mouseOver with parameters//div[label[contains(.,'Email Address')]]/input[@type='text'] | //div[label[contains(.,'Dirección de correo')]]/input[@type='text'] | //div[label[contains(.,'メールアドレス')]]/input[@type='text'] | //div[label[contains(.,'邮箱地址')]]/input[@type='text'] | //div[contains(.,'E-Mail-Adresse')]/input[@type='text']
    • Running type with parameters//div[label[contains(.,'Email Address')]]/input[@type='text'] | //div[label[contains(.,'Dirección de correo')]]/input[@type='text'] | //div[label[contains(.,'メールアドレス')]]/input[@type='text'] | //div[label[contains(.,'邮箱地址')]]/input[@type='text'] | //div[contains(.,'E-Mail-Adresse')]/input[@type='text'][email protected]
    • Running pause with parameters5000
    • Running assertJavaScriptErrors with parameters//div[label[contains(.,'Email Address')]]/input[@type='text'] | //div[label[contains(.,'Dirección de correo')]]/input[@type='text'] | //div[label[contains(.,'メールアドレス')]]/input[@type='text'] | //div[label[contains(.,'邮箱地址')]]/input[@type='text'] | //div[contains(.,'E-Mail-Adresse')]/input[@type='text']
    • Running assertLiferayErrors
  • Running Type#typePause with locator1//div[label[contains(.,'Password')]]/input | //div[label[contains(.,'Contraseña')]]/input | //div[label[contains(.,'パスワード')]]/input | //div[label[contains(.,'密码')]]/input | //div[contains(.,'Kennwort')]//input[@type='password'] with value1test
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]test
    • 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
    • Running assertJavaScriptErrors with parameters//div[label[contains(.,'Password')]]/input | //div[label[contains(.,'Contraseña')]]/input | //div[label[contains(.,'パスワード')]]/input | //div[label[contains(.,'密码')]]/input | //div[contains(.,'Kennwort')]//input[@type='password']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[label[contains(.,'Password')]]/input | //div[label[contains(.,'Contraseña')]]/input | //div[label[contains(.,'パスワード')]]/input | //div[label[contains(.,'密码')]]/input | //div[contains(.,'Kennwort')]//input[@type='password']test
    • Running waitForEditable with parameters//div[label[contains(.,'Password')]]/input | //div[label[contains(.,'Contraseña')]]/input | //div[label[contains(.,'パスワード')]]/input | //div[label[contains(.,'密码')]]/input | //div[contains(.,'Kennwort')]//input[@type='password']
    • Running mouseOver with parameters//div[label[contains(.,'Password')]]/input | //div[label[contains(.,'Contraseña')]]/input | //div[label[contains(.,'パスワード')]]/input | //div[label[contains(.,'密码')]]/input | //div[contains(.,'Kennwort')]//input[@type='password']
    • Running type with parameters//div[label[contains(.,'Password')]]/input | //div[label[contains(.,'Contraseña')]]/input | //div[label[contains(.,'パスワード')]]/input | //div[label[contains(.,'密码')]]/input | //div[contains(.,'Kennwort')]//input[@type='password']test
    • Running pause with parameters5000
    • Running assertJavaScriptErrors with parameters//div[label[contains(.,'Password')]]/input | //div[label[contains(.,'Contraseña')]]/input | //div[label[contains(.,'パスワード')]]/input | //div[label[contains(.,'密码')]]/input | //div[contains(.,'Kennwort')]//input[@type='password']
    • Running assertLiferayErrors
  • Running Click#mouseDownMouseUp with locator1//*[contains(@class,'btn')][normalize-space(text())='Sign In']
    • 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,'btn')][normalize-space(text())='Sign In']
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[contains(@class,'btn')][normalize-space(text())='Sign In']
    • Running waitForVisible with parameters//*[contains(@class,'btn')][normalize-space(text())='Sign In']
    • Running mouseDown with parameters//*[contains(@class,'btn')][normalize-space(text())='Sign In']
    • Running mouseUp with parameters//*[contains(@class,'btn')][normalize-space(text())='Sign In']
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'btn')][normalize-space(text())='Sign In']
    • Running assertLiferayErrors
  • Running IsElementPresent with locator1//div[contains(@class,'has-error')]//div[contains(@class,'form-feedback-item')] | //div[contains(@class,'has-error')]//div[contains(@class,'form-feedback-indicator')]
    • 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,'has-error')]//div[contains(@class,'form-feedback-item')] | //div[contains(@class,'has-error')]//div[contains(@class,'form-feedback-indicator')]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[contains(@class,'has-error')]//div[contains(@class,'form-feedback-item')] | //div[contains(@class,'has-error')]//div[contains(@class,'form-feedback-indicator')]
  • Running AssertElementNotPresent with locator1//*[contains(@class,'btn')][normalize-space(text())='Sign In']
    • 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,'btn')][normalize-space(text())='Sign In']
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//*[contains(@class,'btn')][normalize-space(text())='Sign In']
    • Running assertElementNotPresent with parameters//*[contains(@class,'btn')][normalize-space(text())='Sign In']
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'btn')][normalize-space(text())='Sign In']
    • Running assertLiferayErrors
  • Running IsElementPresent with locator1//button[contains(.,'I Agree')]
    • 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(.,'I Agree')]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//button[contains(.,'I Agree')]
  • Running IsElementPresent#pauseIsElementPresent with locator1//div[label[contains(.,'Password')]]/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(.,'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(.,'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 AssertElementPresent 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 waitForElementPresent with parameters//span[@class='user-avatar-link']
    • Running assertElementPresent with parameters//span[@class='user-avatar-link']
    • Running assertJavaScriptErrors with parameters//span[@class='user-avatar-link']
    • Running assertLiferayErrors
  • Running post with parametersArg: ${curl}Return: {"active":true,"classNameId":"20011","classPK":"37034","companyId":"20098","creatorUserId":"20126","description":"","descriptionCurrentValue":"","descriptiveName":"Test Site Name","friendlyURL":"\/test-site-name","groupId":"37034","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":"\/37034\/","type":1,"uuid":"456ac5ae-15af-fa6c-3473-0011a2666156"}Finished executing commands.
  • LocalFile.InfoListProviders#DisplayRelatedAssetsInAssetPublisher
  • This is a use case for LPS-110191. The related assets should be in AP when select Related Assets as Collection Provider.
  • Running post with parametersArg: ${curl}Return: {"DDMStructureKey":"BASIC-WEB-CONTENT","DDMTemplateKey":"BASIC-WEB-CONTENT","articleId":"37036","classNameId":"0","classPK":"0","companyId":"20098","content":"<?xml version=\"1.0\"?>\n\n<root available-locales=\"en_US\" default-locale=\"en_US\">\n\t<dynamic-element name=\"content\" type=\"text_area\" index-type=\"text\">\n\t\t<dynamic-content language-id=\"en_US\"><![CDATA[Web Content Content]]><\/dynamic-content>\n\t<\/dynamic-element>\n<\/root>","createDate":1588145952114,"ctCollectionId":"0","defaultLanguageId":"en_US","description":"","descriptionCurrentValue":"","descriptionMapAsXML":"","displayDate":1588145940000,"expirationDate":null,"folderId":"0","groupId":"37034","id":"37037","indexable":true,"lastPublishDate":null,"layoutUuid":"","modifiedDate":1588145952191,"mvccVersion":"1","resourcePrimKey":"37038","reviewDate":null,"smallImage":false,"smallImageId":"37039","smallImageURL":"","status":0,"statusByUserId":"20126","statusByUserName":"Test Test","statusDate":1588145952191,"title":"Web Content Title","titleCurrentValue":"Web Content Title","titleMapAsXML":"<?xml version='1.0' encoding='UTF-8'?><root available-locales=\"en_US\" default-locale=\"en_US\"><Title language-id=\"en_US\">Web Content Title<\/Title><\/root>","treePath":"\/","urlTitle":"web-content-title","userId":"20126","userName":"Test Test","uuid":"26926982-d40e-569b-7387-2e2b28a15957","version":1.0}Finished executing commands.
  • ## Adding a 'Blog' with the following info using JSONWS:
  • ## * Title: Blogs Entry Title
  • ## * Content: Blogs Entry Content
  • ## Adding a 'File' with the following info using JSONWS:
  • ## * Title: Document_1.png
  • ## * Description:
  • Running Open with locator1http://localhost:8080/group/test-site-name/~/control_panel/manage?p_p_id=com_liferay_journal_web_portlet_JournalPortlet
    • 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_journal_web_portlet_JournalPortlet
    • 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_journal_web_portlet_JournalPortlet
    • Running assertJavaScriptErrors with parametershttp://localhost:8080/group/test-site-name/~/control_panel/manage?p_p_id=com_liferay_journal_web_portlet_JournalPortlet
    • 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_journal_web_portlet_JournalPortlet
    • Running assertLiferayErrors
  • Running AssertVisible with locator1//nav[contains(@class,'management-bar')]
    • 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//nav[contains(@class,'management-bar')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//nav[contains(@class,'management-bar')]
    • Running assertVisible with parameters//nav[contains(@class,'management-bar')]
    • Running assertJavaScriptErrors with parameters//nav[contains(@class,'management-bar')]
    • Running assertLiferayErrors
  • 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 Click with locator1//ul[@class='navbar-nav'][2]//li[contains(@class,'dropdown nav-item')]//button[contains(@class,'dropdown-toggle')]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//ul[@class='navbar-nav'][2]//li[contains(@class,'dropdown nav-item')]//button[contains(@class,'dropdown-toggle')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//ul[@class='navbar-nav'][2]//li[contains(@class,'dropdown nav-item')]//button[contains(@class,'dropdown-toggle')]
    • Running mouseOver with parameters//ul[@class='navbar-nav'][2]//li[contains(@class,'dropdown nav-item')]//button[contains(@class,'dropdown-toggle')]
    • Running click with parameters//ul[@class='navbar-nav'][2]//li[contains(@class,'dropdown nav-item')]//button[contains(@class,'dropdown-toggle')]
    • Running assertJavaScriptErrors with parameters//ul[@class='navbar-nav'][2]//li[contains(@class,'dropdown nav-item')]//button[contains(@class,'dropdown-toggle')]
    • Running assertLiferayErrors
  • Running Click with locator1xpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='List']
    • 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())='List']
    • Running assertLiferayErrors
    • Running waitForVisible with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='List']
    • Running mouseOver with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='List']
    • Running click with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='List']
    • Running assertJavaScriptErrors with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='List']
    • Running assertLiferayErrors
  • Running AssertTextEquals#assertPartialText with locator1//li[contains(@data-title,'Web Content Title')]//*[@data-qa-id='rowItemContent']//a with value1Web Content Title
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Web Content Title
    • 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;')]Web Content Title
    • Running assertJavaScriptErrors with parameters//li[contains(@data-title,'Web Content Title')]//*[@data-qa-id='rowItemContent']//a
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//li[contains(@data-title,'Web Content Title')]//*[@data-qa-id='rowItemContent']//aWeb Content Title
    • Running waitForPartialTextCaseInsensitive with parameters//li[contains(@data-title,'Web Content Title')]//*[@data-qa-id='rowItemContent']//aWeb Content Title
    • Running assertPartialTextCaseInsensitive with parameters//li[contains(@data-title,'Web Content Title')]//*[@data-qa-id='rowItemContent']//aWeb Content Title
    • Running assertJavaScriptErrors with parameters//li[contains(@data-title,'Web Content Title')]//*[@data-qa-id='rowItemContent']//a
    • Running assertLiferayErrors
  • Running Click#waitForMenuToggleJSClick with locator1//li[contains(@data-title,'Web Content Title')]//*[contains(@class,'dropdown-toggle')]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//li[contains(@data-title,'Web Content Title')]//*[contains(@class,'dropdown-toggle')]
    • Running assertLiferayErrors
    • Running selectFrame with parametersrelative=top
    • Running waitForElementPresent with parameters//script[contains(@src,'/o/frontend-js-aui-web/liferay/menu_toggle.js')]
    • Running isElementPresent with parameters//iframe
    • Running pause with parameters3000
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//li[contains(@data-title,'Web Content Title')]//*[contains(@class,'dropdown-toggle')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//li[contains(@data-title,'Web Content Title')]//*[contains(@class,'dropdown-toggle')]
    • Running mouseOver with parameters//li[contains(@data-title,'Web Content Title')]//*[contains(@class,'dropdown-toggle')]
    • Running click with parameters//li[contains(@data-title,'Web Content Title')]//*[contains(@class,'dropdown-toggle')]
    • Running assertJavaScriptErrors with parameters//li[contains(@data-title,'Web Content Title')]//*[contains(@class,'dropdown-toggle')]
    • Running assertLiferayErrors
    • Running assertJavaScriptErrors with parameters//li[contains(@data-title,'Web Content Title')]//*[contains(@class,'dropdown-toggle')]
    • Running assertLiferayErrors
  • Running Click with locator1xpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Edit']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Edit']
    • Running assertLiferayErrors
    • Running waitForVisible with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Edit']
    • Running mouseOver with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Edit']
    • Running click with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Edit']
    • Running assertJavaScriptErrors with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Edit']
    • Running assertLiferayErrors
  • Running AssertElementPresent with locator1//a[span//*[name()='svg'][contains(@class,'icon-angle-left')]] | //a[contains(@class,'icon-circle-arrow-left') and contains(@class,'previous-level')] | //span[contains(@class,'icon-angle-left')]
    • 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[span//*[name()='svg'][contains(@class,'icon-angle-left')]] | //a[contains(@class,'icon-circle-arrow-left') and contains(@class,'previous-level')] | //span[contains(@class,'icon-angle-left')]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//a[span//*[name()='svg'][contains(@class,'icon-angle-left')]] | //a[contains(@class,'icon-circle-arrow-left') and contains(@class,'previous-level')] | //span[contains(@class,'icon-angle-left')]
    • Running assertElementPresent with parameters//a[span//*[name()='svg'][contains(@class,'icon-angle-left')]] | //a[contains(@class,'icon-circle-arrow-left') and contains(@class,'previous-level')] | //span[contains(@class,'icon-angle-left')]
    • Running assertJavaScriptErrors with parameters//a[span//*[name()='svg'][contains(@class,'icon-angle-left')]] | //a[contains(@class,'icon-circle-arrow-left') and contains(@class,'previous-level')] | //span[contains(@class,'icon-angle-left')]
    • Running assertLiferayErrors
  • Running AssertElementNotPresent with locator1//fieldset[@disabled]
    • 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//fieldset[@disabled]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//fieldset[@disabled]
    • Running assertElementNotPresent with parameters//fieldset[@disabled]
    • Running assertJavaScriptErrors with parameters//fieldset[@disabled]
    • Running assertLiferayErrors
  • Running AssertVisible with locator1//div[@class='panel-heading']//a[normalize-space(text())='Related 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//div[@class='panel-heading']//a[normalize-space(text())='Related Assets']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[@class='panel-heading']//a[normalize-space(text())='Related Assets']
    • Running assertVisible with parameters//div[@class='panel-heading']//a[normalize-space(text())='Related Assets']
    • Running assertJavaScriptErrors with parameters//div[@class='panel-heading']//a[normalize-space(text())='Related Assets']
    • Running assertLiferayErrors
  • Running IsElementPresent with locator1//div[@class='panel-heading']//a[normalize-space(text())='Related Assets'][@aria-expanded='false' or contains(@class,'collapsed')]
    • 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[@class='panel-heading']//a[normalize-space(text())='Related Assets'][@aria-expanded='false' or contains(@class,'collapsed')]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[@class='panel-heading']//a[normalize-space(text())='Related Assets'][@aria-expanded='false' or contains(@class,'collapsed')]
  • Running AssertElementPresent with locator1//div[@class='panel-heading']//a[normalize-space(text())='Related Assets'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • 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[@class='panel-heading']//a[normalize-space(text())='Related Assets'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//div[@class='panel-heading']//a[normalize-space(text())='Related Assets'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • Running assertElementPresent with parameters//div[@class='panel-heading']//a[normalize-space(text())='Related Assets'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • Running assertJavaScriptErrors with parameters//div[@class='panel-heading']//a[normalize-space(text())='Related Assets'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • Running assertLiferayErrors
  • Running AssertClick with locator1//div[contains(@class,'select-existing')]/a[@title='Select'] with value1Select
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Select
    • 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;')]Select
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'select-existing')]/a[@title='Select']
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Select
    • 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;')]Select
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'select-existing')]/a[@title='Select']
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Select
    • 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;')]Select
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'select-existing')]/a[@title='Select']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'select-existing')]/a[@title='Select']Select
    • Running waitForTextCaseInsensitive with parameters//div[contains(@class,'select-existing')]/a[@title='Select']Select
    • Running assertTextCaseInsensitive with parameters//div[contains(@class,'select-existing')]/a[@title='Select']Select
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'select-existing')]/a[@title='Select']
    • Running assertLiferayErrors
    • Running mouseOver with parameters//div[contains(@class,'select-existing')]/a[@title='Select']
    • Running clickAt with parameters//div[contains(@class,'select-existing')]/a[@title='Select']
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'select-existing')]/a[@title='Select']
    • Running assertLiferayErrors
  • Running Click with locator1xpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Blogs Entry']
    • 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())='Blogs Entry']
    • Running assertLiferayErrors
    • Running waitForVisible with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Blogs Entry']
    • Running mouseOver with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Blogs Entry']
    • Running click with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Blogs Entry']
    • Running assertJavaScriptErrors with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Blogs Entry']
    • Running assertLiferayErrors
  • Running SelectFrame with value1relative=top
    • Running selectFrame with parametersrelative=top
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]relative=top
    • 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;')]relative=top
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]relative=top
    • 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;')]relative=top
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
  • Running SelectFrame with locator1//iframe[contains(@class,'dialog-iframe-node')]
    • Running waitForVisible with parameters//iframe[contains(@class,'dialog-iframe-node')]
    • Running mouseOver with parameters//iframe[contains(@class,'dialog-iframe-node')]
    • Running waitForElementPresent with parameters//iframe[contains(@class,'dialog-iframe-node')]/../div[contains(@class,'overlaymask-hidden')]
    • Running selectFrame with parameters//iframe[contains(@class,'dialog-iframe-node')]
    • Running waitForElementPresent with parameters//body
    • Running assertJavaScriptErrors with parameters//iframe[contains(@class,'dialog-iframe-node')]
    • 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//iframe[contains(@class,'dialog-iframe-node')]
    • Running assertLiferayErrors
  • Running Click with locator1//tr[contains(.,'Blogs Entry Title')]/td//input[@type='checkbox']
    • 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//tr[contains(.,'Blogs Entry Title')]/td//input[@type='checkbox']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//tr[contains(.,'Blogs Entry Title')]/td//input[@type='checkbox']
    • Running mouseOver with parameters//tr[contains(.,'Blogs Entry Title')]/td//input[@type='checkbox']
    • Running click with parameters//tr[contains(.,'Blogs Entry Title')]/td//input[@type='checkbox']
    • Running assertJavaScriptErrors with parameters//tr[contains(.,'Blogs Entry Title')]/td//input[@type='checkbox']
    • Running assertLiferayErrors
  • Running SelectFrame with value1relative=top
    • Running selectFrame with parametersrelative=top
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]relative=top
    • 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;')]relative=top
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]relative=top
    • 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;')]relative=top
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
  • Running Click#mouseDownMouseUp with locator1//*[contains(@class,'btn')][normalize-space(text())='Done']
    • 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,'btn')][normalize-space(text())='Done']
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[contains(@class,'btn')][normalize-space(text())='Done']
    • Running waitForVisible with parameters//*[contains(@class,'btn')][normalize-space(text())='Done']
    • Running mouseDown with parameters//*[contains(@class,'btn')][normalize-space(text())='Done']
    • Running mouseUp with parameters//*[contains(@class,'btn')][normalize-space(text())='Done']
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'btn')][normalize-space(text())='Done']
    • Running assertLiferayErrors
  • Running WaitForElementNotPresent with locator1//iframe[contains(@class,'dialog-iframe-node')]
    • Running waitForElementNotPresent with parameters//iframe[contains(@class,'dialog-iframe-node')]
  • Running AssertTextEquals#assertPartialText with locator1//tr[contains(.,'Blogs Entry Title')]//*[contains(@class,'title')] with value1Blogs Entry Title
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Blogs Entry Title
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]Blogs Entry Title
    • Running assertJavaScriptErrors with parameters//tr[contains(.,'Blogs Entry Title')]//*[contains(@class,'title')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//tr[contains(.,'Blogs Entry Title')]//*[contains(@class,'title')]Blogs Entry Title
    • Running waitForPartialTextCaseInsensitive with parameters//tr[contains(.,'Blogs Entry Title')]//*[contains(@class,'title')]Blogs Entry Title
    • Running assertPartialTextCaseInsensitive with parameters//tr[contains(.,'Blogs Entry Title')]//*[contains(@class,'title')]Blogs Entry Title
    • Running assertJavaScriptErrors with parameters//tr[contains(.,'Blogs Entry Title')]//*[contains(@class,'title')]
    • Running assertLiferayErrors
  • Running AssertElementNotPresent with locator1//fieldset[@disabled]
    • 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//fieldset[@disabled]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//fieldset[@disabled]
    • Running assertElementNotPresent with parameters//fieldset[@disabled]
    • Running assertJavaScriptErrors with parameters//fieldset[@disabled]
    • Running assertLiferayErrors
  • Running AssertVisible with locator1//div[@class='panel-heading']//a[normalize-space(text())='Related 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//div[@class='panel-heading']//a[normalize-space(text())='Related Assets']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[@class='panel-heading']//a[normalize-space(text())='Related Assets']
    • Running assertVisible with parameters//div[@class='panel-heading']//a[normalize-space(text())='Related Assets']
    • Running assertJavaScriptErrors with parameters//div[@class='panel-heading']//a[normalize-space(text())='Related Assets']
    • Running assertLiferayErrors
  • Running IsElementPresent with locator1//div[@class='panel-heading']//a[normalize-space(text())='Related Assets'][@aria-expanded='false' or contains(@class,'collapsed')]
    • 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[@class='panel-heading']//a[normalize-space(text())='Related Assets'][@aria-expanded='false' or contains(@class,'collapsed')]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[@class='panel-heading']//a[normalize-space(text())='Related Assets'][@aria-expanded='false' or contains(@class,'collapsed')]
  • Running AssertElementPresent with locator1//div[@class='panel-heading']//a[normalize-space(text())='Related Assets'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • 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[@class='panel-heading']//a[normalize-space(text())='Related Assets'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//div[@class='panel-heading']//a[normalize-space(text())='Related Assets'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • Running assertElementPresent with parameters//div[@class='panel-heading']//a[normalize-space(text())='Related Assets'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • Running assertJavaScriptErrors with parameters//div[@class='panel-heading']//a[normalize-space(text())='Related Assets'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • Running assertLiferayErrors
  • Running AssertClick with locator1//div[contains(@class,'select-existing')]/a[@title='Select'] with value1Select
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Select
    • 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;')]Select
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'select-existing')]/a[@title='Select']
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Select
    • 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;')]Select
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'select-existing')]/a[@title='Select']
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Select
    • 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;')]Select
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'select-existing')]/a[@title='Select']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'select-existing')]/a[@title='Select']Select
    • Running waitForTextCaseInsensitive with parameters//div[contains(@class,'select-existing')]/a[@title='Select']Select
    • Running assertTextCaseInsensitive with parameters//div[contains(@class,'select-existing')]/a[@title='Select']Select
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'select-existing')]/a[@title='Select']
    • Running assertLiferayErrors
    • Running mouseOver with parameters//div[contains(@class,'select-existing')]/a[@title='Select']
    • Running clickAt with parameters//div[contains(@class,'select-existing')]/a[@title='Select']
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'select-existing')]/a[@title='Select']
    • Running assertLiferayErrors
  • Running Click with locator1xpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Basic Document']
    • 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())='Basic Document']
    • Running assertLiferayErrors
    • Running waitForVisible with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Basic Document']
    • Running mouseOver with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Basic Document']
    • Running click with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Basic Document']
    • Running assertJavaScriptErrors with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Basic Document']
    • Running assertLiferayErrors
  • Running SelectFrame with value1relative=top
    • Running selectFrame with parametersrelative=top
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]relative=top
    • 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;')]relative=top
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]relative=top
    • 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;')]relative=top
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
  • Running SelectFrame with locator1//iframe[contains(@class,'dialog-iframe-node')]
    • Running waitForVisible with parameters//iframe[contains(@class,'dialog-iframe-node')]
    • Running mouseOver with parameters//iframe[contains(@class,'dialog-iframe-node')]
    • Running waitForElementPresent with parameters//iframe[contains(@class,'dialog-iframe-node')]/../div[contains(@class,'overlaymask-hidden')]
    • Running selectFrame with parameters//iframe[contains(@class,'dialog-iframe-node')]
    • Running waitForElementPresent with parameters//body
    • Running assertJavaScriptErrors with parameters//iframe[contains(@class,'dialog-iframe-node')]
    • 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//iframe[contains(@class,'dialog-iframe-node')]
    • Running assertLiferayErrors
  • Running Click with locator1//tr[contains(.,'Document_1.png')]/td//input[@type='checkbox']
    • 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//tr[contains(.,'Document_1.png')]/td//input[@type='checkbox']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//tr[contains(.,'Document_1.png')]/td//input[@type='checkbox']
    • Running mouseOver with parameters//tr[contains(.,'Document_1.png')]/td//input[@type='checkbox']
    • Running click with parameters//tr[contains(.,'Document_1.png')]/td//input[@type='checkbox']
    • Running assertJavaScriptErrors with parameters//tr[contains(.,'Document_1.png')]/td//input[@type='checkbox']
    • Running assertLiferayErrors
  • Running SelectFrame with value1relative=top
    • Running selectFrame with parametersrelative=top
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]relative=top
    • 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;')]relative=top
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]relative=top
    • 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;')]relative=top
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
  • Running Click#mouseDownMouseUp with locator1//*[contains(@class,'btn')][normalize-space(text())='Done']
    • 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,'btn')][normalize-space(text())='Done']
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[contains(@class,'btn')][normalize-space(text())='Done']
    • Running waitForVisible with parameters//*[contains(@class,'btn')][normalize-space(text())='Done']
    • Running mouseDown with parameters//*[contains(@class,'btn')][normalize-space(text())='Done']
    • Running mouseUp with parameters//*[contains(@class,'btn')][normalize-space(text())='Done']
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'btn')][normalize-space(text())='Done']
    • Running assertLiferayErrors
  • Running WaitForElementNotPresent with locator1//iframe[contains(@class,'dialog-iframe-node')]
    • Running waitForElementNotPresent with parameters//iframe[contains(@class,'dialog-iframe-node')]
  • Running AssertTextEquals#assertPartialText with locator1//tr[contains(.,'Blogs Entry Title')]//*[contains(@class,'title')] with value1Blogs Entry Title
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Blogs Entry Title
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]Blogs Entry Title
    • Running assertJavaScriptErrors with parameters//tr[contains(.,'Blogs Entry Title')]//*[contains(@class,'title')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//tr[contains(.,'Blogs Entry Title')]//*[contains(@class,'title')]Blogs Entry Title
    • Running waitForPartialTextCaseInsensitive with parameters//tr[contains(.,'Blogs Entry Title')]//*[contains(@class,'title')]Blogs Entry Title
    • Running assertPartialTextCaseInsensitive with parameters//tr[contains(.,'Blogs Entry Title')]//*[contains(@class,'title')]Blogs Entry Title
    • Running assertJavaScriptErrors with parameters//tr[contains(.,'Blogs Entry Title')]//*[contains(@class,'title')]
    • Running assertLiferayErrors
  • Running AssertTextEquals#assertPartialText with locator1//tr[contains(.,'Document_1.png')]//*[contains(@class,'title')] with value1Document_1.png
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Document_1.png
    • 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;')]Document_1.png
    • Running assertJavaScriptErrors with parameters//tr[contains(.,'Document_1.png')]//*[contains(@class,'title')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//tr[contains(.,'Document_1.png')]//*[contains(@class,'title')]Document_1.png
    • Running waitForPartialTextCaseInsensitive with parameters//tr[contains(.,'Document_1.png')]//*[contains(@class,'title')]Document_1.png
    • Running assertPartialTextCaseInsensitive with parameters//tr[contains(.,'Document_1.png')]//*[contains(@class,'title')]Document_1.png
    • Running assertJavaScriptErrors with parameters//tr[contains(.,'Document_1.png')]//*[contains(@class,'title')]
    • Running assertLiferayErrors
  • Running ScrollWebElementIntoView with locator1//*[contains(@class,'btn')][normalize-space(text())='Publish']
    • 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,'btn')][normalize-space(text())='Publish']
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[contains(@class,'btn')][normalize-space(text())='Publish']
    • Running scrollWebElementIntoView with parameters//*[contains(@class,'btn')][normalize-space(text())='Publish']
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'btn')][normalize-space(text())='Publish']
    • Running assertLiferayErrors
  • Running Click#mouseDownMouseUp with locator1//*[contains(@class,'btn')][normalize-space(text())='Publish']
    • 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,'btn')][normalize-space(text())='Publish']
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[contains(@class,'btn')][normalize-space(text())='Publish']
    • Running waitForVisible with parameters//*[contains(@class,'btn')][normalize-space(text())='Publish']
    • Running mouseDown with parameters//*[contains(@class,'btn')][normalize-space(text())='Publish']
    • Running mouseUp with parameters//*[contains(@class,'btn')][normalize-space(text())='Publish']
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'btn')][normalize-space(text())='Publish']
    • Running assertLiferayErrors
  • Running VerifyElementPresent with locator1//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]false
    • Running verifyElementPresent with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running assertLiferayErrors
  • Running IsElementPresent with locator1//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
  • Running Click with locator1//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running mouseOver with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running click with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running assertLiferayErrors
  • Running post with parametersArg: ${curl}Return: {"classNameId":"0","classPK":"0","colorSchemeId":"","companyId":"20098","createDate":1588145979887,"css":"","ctCollectionId":"0","description":"","descriptionCurrentValue":"","friendlyURL":"\/test-page-name","groupId":"37034","hidden":false,"iconImageId":"0","keywords":"","keywordsCurrentValue":"","lastPublishDate":null,"layoutId":"1","layoutPrototypeLinkEnabled":false,"layoutPrototypeUuid":"","masterLayoutPlid":"0","modifiedDate":1588145979887,"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 Page Name<\/Name><\/root>","nameCurrentValue":"Test Page Name","parentLayoutId":"0","parentPlid":"0","plid":"39","priority":0,"privateLayout":false,"publishDate":1588145979887,"robots":"","robotsCurrentValue":"","sourcePrototypeLayoutUuid":"","status":0,"statusByUserId":"20126","statusByUserName":"Test Test","statusDate":1588145979887,"system":false,"themeId":"","title":"","titleCurrentValue":"","type":"portlet","typeSettings":"layout-template-id=2_columns_ii\n","userId":"20126","userName":"Test Test","uuid":"3d19d036-ccee-ecb4-359a-afff703460b2"}Finished executing commands.
  • Running Open with locator1http://localhost:8080/web/test-site-name
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parametershttp://localhost:8080/web/test-site-name
    • Running assertLiferayErrors
    • Running selectWindow with parameters
    • Running selectFrame with parametersrelative=top
    • Running open with parametershttp://localhost:8080/web/test-site-name
    • Running assertJavaScriptErrors with parametershttp://localhost:8080/web/test-site-name
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parametershttp://localhost:8080/web/test-site-name
    • Running assertLiferayErrors
  • Running IsElementNotPresent with locator1//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][contains(.,'Test Page Name')]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][contains(.,'Test Page Name')]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][contains(.,'Test Page Name')]
    • Running isNotVisible with parameters//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][contains(.,'Test Page Name')]
  • Running AssertVisible with locator1//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][contains(.,'Test Page Name')]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][contains(.,'Test Page Name')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][contains(.,'Test Page Name')]
    • Running assertVisible with parameters//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][contains(.,'Test Page Name')]
    • Running assertJavaScriptErrors with parameters//div[contains(@id,'navbar')]/ul//*[contains(@class,'active')][contains(.,'Test Page Name')]
    • Running assertLiferayErrors
  • Running MouseOver#mouseOverNotVisible with locator1//div[@id='column-2']//header[@class='portlet-topper' and contains(.,'Asset Publisher')]//div[contains(@class,'portlet-options')]/a
    • 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[@id='column-2']//header[@class='portlet-topper' and contains(.,'Asset Publisher')]//div[contains(@class,'portlet-options')]/a
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//div[@id='column-2']//header[@class='portlet-topper' and contains(.,'Asset Publisher')]//div[contains(@class,'portlet-options')]/a
    • Running mouseOver with parameters//div[@id='column-2']//header[@class='portlet-topper' and contains(.,'Asset Publisher')]//div[contains(@class,'portlet-options')]/a
    • Running waitForVisible with parameters//div[@id='column-2']//header[@class='portlet-topper' and contains(.,'Asset Publisher')]//div[contains(@class,'portlet-options')]/a
    • Running assertJavaScriptErrors with parameters//div[@id='column-2']//header[@class='portlet-topper' and contains(.,'Asset Publisher')]//div[contains(@class,'portlet-options')]/a
    • Running assertLiferayErrors
  • Running Click#waitForMenuToggleJSClick with locator1//div[@id='column-2']//header[@class='portlet-topper' and contains(.,'Asset Publisher')]//div[contains(@class,'portlet-options')]/a
    • 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[@id='column-2']//header[@class='portlet-topper' and contains(.,'Asset Publisher')]//div[contains(@class,'portlet-options')]/a
    • Running assertLiferayErrors
    • Running selectFrame with parametersrelative=top
    • Running waitForElementPresent with parameters//script[contains(@src,'/o/frontend-js-aui-web/liferay/menu_toggle.js')]
    • Running isElementPresent with parameters//iframe
    • Running pause with parameters3000
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[@id='column-2']//header[@class='portlet-topper' and contains(.,'Asset Publisher')]//div[contains(@class,'portlet-options')]/a
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[@id='column-2']//header[@class='portlet-topper' and contains(.,'Asset Publisher')]//div[contains(@class,'portlet-options')]/a
    • Running mouseOver with parameters//div[@id='column-2']//header[@class='portlet-topper' and contains(.,'Asset Publisher')]//div[contains(@class,'portlet-options')]/a
    • Running click with parameters//div[@id='column-2']//header[@class='portlet-topper' and contains(.,'Asset Publisher')]//div[contains(@class,'portlet-options')]/a
    • Running assertJavaScriptErrors with parameters//div[@id='column-2']//header[@class='portlet-topper' and contains(.,'Asset Publisher')]//div[contains(@class,'portlet-options')]/a
    • Running assertLiferayErrors
    • Running assertJavaScriptErrors with parameters//div[@id='column-2']//header[@class='portlet-topper' and contains(.,'Asset Publisher')]//div[contains(@class,'portlet-options')]/a
    • Running assertLiferayErrors
  • Running Click with locator1xpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Configuration']
    • 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())='Configuration']
    • Running assertLiferayErrors
    • Running waitForVisible with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Configuration']
    • Running mouseOver with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Configuration']
    • Running click with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Configuration']
    • Running assertJavaScriptErrors with parametersxpath=(//div | //li)[contains(@class,'open') or contains(@class,'show')]//*[normalize-space(text())='Configuration']
    • Running assertLiferayErrors
  • Running SelectFrame with locator1//iframe[contains(@class,'dialog-iframe-node')]
    • Running waitForVisible with parameters//iframe[contains(@class,'dialog-iframe-node')]
    • Running mouseOver with parameters//iframe[contains(@class,'dialog-iframe-node')]
    • Running waitForElementPresent with parameters//iframe[contains(@class,'dialog-iframe-node')]/../div[contains(@class,'overlaymask-hidden')]
    • Running selectFrame with parameters//iframe[contains(@class,'dialog-iframe-node')]
    • Running waitForElementPresent with parameters//body
    • Running assertJavaScriptErrors with parameters//iframe[contains(@class,'dialog-iframe-node')]
    • 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//iframe[contains(@class,'dialog-iframe-node')]
    • Running assertLiferayErrors
  • Running AssertClick#assertPartialTextClickAt with locator1//*[contains(@class,'nav-link') and normalize-space()='Asset Selection'] with value1Asset Selection
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Asset Selection
    • 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;')]Asset Selection
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'nav-link') and normalize-space()='Asset Selection']
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Asset Selection
    • 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;')]Asset Selection
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'nav-link') and normalize-space()='Asset Selection']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//*[contains(@class,'nav-link') and normalize-space()='Asset Selection']Asset Selection
    • Running waitForPartialTextCaseInsensitive with parameters//*[contains(@class,'nav-link') and normalize-space()='Asset Selection']Asset Selection
    • Running assertPartialTextCaseInsensitive with parameters//*[contains(@class,'nav-link') and normalize-space()='Asset Selection']Asset Selection
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'nav-link') and normalize-space()='Asset Selection']
    • Running assertLiferayErrors
    • Running mouseOver with parameters//*[contains(@class,'nav-link') and normalize-space()='Asset Selection']
    • Running clickAt with parameters//*[contains(@class,'nav-link') and normalize-space()='Asset Selection']
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'nav-link') and normalize-space()='Asset Selection']
    • Running assertLiferayErrors
  • Running AssertElementPresent with locator1//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Asset Selection']
    • 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()='Asset Selection']
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Asset Selection']
    • Running assertElementPresent with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Asset Selection']
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'nav-link') and contains(@class,'active') and normalize-space()='Asset Selection']
    • Running assertLiferayErrors
  • Running AssertElementNotPresent with locator1//fieldset[@disabled]
    • 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//fieldset[@disabled]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//fieldset[@disabled]
    • Running assertElementNotPresent with parameters//fieldset[@disabled]
    • Running assertJavaScriptErrors with parameters//fieldset[@disabled]
    • Running assertLiferayErrors
  • Running AssertVisible with locator1//div[@class='panel-heading']//a[normalize-space(text())='Asset Selection']
    • 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[@class='panel-heading']//a[normalize-space(text())='Asset Selection']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[@class='panel-heading']//a[normalize-space(text())='Asset Selection']
    • Running assertVisible with parameters//div[@class='panel-heading']//a[normalize-space(text())='Asset Selection']
    • Running assertJavaScriptErrors with parameters//div[@class='panel-heading']//a[normalize-space(text())='Asset Selection']
    • Running assertLiferayErrors
  • Running IsElementPresent with locator1//div[@class='panel-heading']//a[normalize-space(text())='Asset Selection'][@aria-expanded='false' or contains(@class,'collapsed')]
    • 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[@class='panel-heading']//a[normalize-space(text())='Asset Selection'][@aria-expanded='false' or contains(@class,'collapsed')]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[@class='panel-heading']//a[normalize-space(text())='Asset Selection'][@aria-expanded='false' or contains(@class,'collapsed')]
  • Running AssertElementPresent with locator1//div[@class='panel-heading']//a[normalize-space(text())='Asset Selection'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • 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[@class='panel-heading']//a[normalize-space(text())='Asset Selection'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//div[@class='panel-heading']//a[normalize-space(text())='Asset Selection'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • Running assertElementPresent with parameters//div[@class='panel-heading']//a[normalize-space(text())='Asset Selection'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • Running assertJavaScriptErrors with parameters//div[@class='panel-heading']//a[normalize-space(text())='Asset Selection'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • Running assertLiferayErrors
  • Running Click with locator1//input[contains(@id,'selectionStyleInfoListProvider')]
    • 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,'selectionStyleInfoListProvider')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//input[contains(@id,'selectionStyleInfoListProvider')]
    • Running mouseOver with parameters//input[contains(@id,'selectionStyleInfoListProvider')]
    • Running click with parameters//input[contains(@id,'selectionStyleInfoListProvider')]
    • Running assertJavaScriptErrors with parameters//input[contains(@id,'selectionStyleInfoListProvider')]
    • Running assertLiferayErrors
  • Running VerifyElementPresent with locator1//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]false
    • Running verifyElementPresent with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running assertLiferayErrors
  • Running IsElementPresent with locator1//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
  • Running Click with locator1//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running mouseOver with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running click with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running assertLiferayErrors
  • Running AssertElementNotPresent with locator1//fieldset[@disabled]
    • 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//fieldset[@disabled]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//fieldset[@disabled]
    • Running assertElementNotPresent with parameters//fieldset[@disabled]
    • Running assertJavaScriptErrors with parameters//fieldset[@disabled]
    • Running assertLiferayErrors
  • Running AssertVisible with locator1//div[@class='panel-heading']//a[normalize-space(text())='Select Collection Provider']
    • 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[@class='panel-heading']//a[normalize-space(text())='Select Collection Provider']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[@class='panel-heading']//a[normalize-space(text())='Select Collection Provider']
    • Running assertVisible with parameters//div[@class='panel-heading']//a[normalize-space(text())='Select Collection Provider']
    • Running assertJavaScriptErrors with parameters//div[@class='panel-heading']//a[normalize-space(text())='Select Collection Provider']
    • Running assertLiferayErrors
  • Running IsElementPresent with locator1//div[@class='panel-heading']//a[normalize-space(text())='Select Collection Provider'][@aria-expanded='false' or contains(@class,'collapsed')]
    • 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[@class='panel-heading']//a[normalize-space(text())='Select Collection Provider'][@aria-expanded='false' or contains(@class,'collapsed')]
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[@class='panel-heading']//a[normalize-space(text())='Select Collection Provider'][@aria-expanded='false' or contains(@class,'collapsed')]
  • Running AssertElementPresent with locator1//div[@class='panel-heading']//a[normalize-space(text())='Select Collection Provider'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • 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[@class='panel-heading']//a[normalize-space(text())='Select Collection Provider'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//div[@class='panel-heading']//a[normalize-space(text())='Select Collection Provider'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • Running assertElementPresent with parameters//div[@class='panel-heading']//a[normalize-space(text())='Select Collection Provider'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • Running assertJavaScriptErrors with parameters//div[@class='panel-heading']//a[normalize-space(text())='Select Collection Provider'][@aria-expanded='true' and not(contains(@class,'collapsed'))]
    • Running assertLiferayErrors
  • Running Select with locator1//select[contains(@id,'infoListProviderClassName')] with value1Related Assets
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Related Assets
    • 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;')]Related Assets
    • Running assertJavaScriptErrors with parameters//select[contains(@id,'infoListProviderClassName')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//select[contains(@id,'infoListProviderClassName')]Related Assets
    • Running mouseOver with parameters//select[contains(@id,'infoListProviderClassName')]
    • Running select with parameters//select[contains(@id,'infoListProviderClassName')]Related Assets
    • Running assertJavaScriptErrors with parameters//select[contains(@id,'infoListProviderClassName')]
    • 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 Click#mouseDownMouseUp with locator1//*[contains(@class,'btn')][normalize-space(text())='Save']
    • 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,'btn')][normalize-space(text())='Save']
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//*[contains(@class,'btn')][normalize-space(text())='Save']
    • Running waitForVisible with parameters//*[contains(@class,'btn')][normalize-space(text())='Save']
    • Running mouseDown with parameters//*[contains(@class,'btn')][normalize-space(text())='Save']
    • Running mouseUp with parameters//*[contains(@class,'btn')][normalize-space(text())='Save']
    • Running assertJavaScriptErrors with parameters//*[contains(@class,'btn')][normalize-space(text())='Save']
    • Running assertLiferayErrors
  • Running VerifyElementPresent with locator1//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running assertLiferayErrors
    • Running waitForElementPresent with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]false
    • Running verifyElementPresent with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert-success')][contains(@class,'alert-dismissible')] | //div[contains(@class,'alert-success')][contains(@class,'alert-dismissable')]
    • Running assertLiferayErrors
  • Running IsElementPresent with locator1//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running assertLiferayErrors
    • Running isElementPresent with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
  • Running Click with locator1//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running mouseOver with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running click with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running assertJavaScriptErrors with parameters//div[contains(@class,'alert-dismissible')]//button[@aria-label='Close']
    • Running assertLiferayErrors
  • Running SelectFrame with value1relative=top
    • Running selectFrame with parametersrelative=top
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]relative=top
    • 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;')]relative=top
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]relative=top
    • 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;')]relative=top
    • Running assertJavaScriptErrors with parameters
    • Running assertLiferayErrors
  • Running Click with locator1//button[contains(@class,'close')] | //a[contains(@id,'closePanelAdd') and contains(@class,'close')]
    • 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(@class,'close')] | //a[contains(@id,'closePanelAdd') and contains(@class,'close')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//button[contains(@class,'close')] | //a[contains(@id,'closePanelAdd') and contains(@class,'close')]
    • Running mouseOver with parameters//button[contains(@class,'close')] | //a[contains(@id,'closePanelAdd') and contains(@class,'close')]
    • Running click with parameters//button[contains(@class,'close')] | //a[contains(@id,'closePanelAdd') and contains(@class,'close')]
    • Running assertJavaScriptErrors with parameters//button[contains(@class,'close')] | //a[contains(@id,'closePanelAdd') and contains(@class,'close')]
    • Running assertLiferayErrors
  • Running AssertTextEquals with locator1//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//div[contains(@class,'alert alert-info')] with value1There are no results.
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]There are no results.
    • 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;')]There are no results.
    • Running assertJavaScriptErrors with parameters//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//div[contains(@class,'alert alert-info')]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]There are no results.
    • 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;')]There are no results.
    • Running assertJavaScriptErrors with parameters//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//div[contains(@class,'alert alert-info')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//div[contains(@class,'alert alert-info')]There are no results.
    • Running waitForTextCaseInsensitive with parameters//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//div[contains(@class,'alert alert-info')]There are no results.
    • Running assertTextCaseInsensitive with parameters//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//div[contains(@class,'alert alert-info')]There are no results.
    • Running assertJavaScriptErrors with parameters//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//div[contains(@class,'alert alert-info')]
    • Running assertLiferayErrors
  • Running AssertClick with locator1//h4/*[contains(@class,'asset-title') and contains(.,'Web Content Title')] with value1Web Content Title
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Web Content Title
    • 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;')]Web Content Title
    • Running assertJavaScriptErrors with parameters//h4/*[contains(@class,'asset-title') and contains(.,'Web Content Title')]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Web Content Title
    • 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;')]Web Content Title
    • Running assertJavaScriptErrors with parameters//h4/*[contains(@class,'asset-title') and contains(.,'Web Content Title')]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Web Content Title
    • 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;')]Web Content Title
    • Running assertJavaScriptErrors with parameters//h4/*[contains(@class,'asset-title') and contains(.,'Web Content Title')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//h4/*[contains(@class,'asset-title') and contains(.,'Web Content Title')]Web Content Title
    • Running waitForTextCaseInsensitive with parameters//h4/*[contains(@class,'asset-title') and contains(.,'Web Content Title')]Web Content Title
    • Running assertTextCaseInsensitive with parameters//h4/*[contains(@class,'asset-title') and contains(.,'Web Content Title')]Web Content Title
    • Running assertJavaScriptErrors with parameters//h4/*[contains(@class,'asset-title') and contains(.,'Web Content Title')]
    • Running assertLiferayErrors
    • Running mouseOver with parameters//h4/*[contains(@class,'asset-title') and contains(.,'Web Content Title')]
    • Running clickAt with parameters//h4/*[contains(@class,'asset-title') and contains(.,'Web Content Title')]
    • Running assertJavaScriptErrors with parameters//h4/*[contains(@class,'asset-title') and contains(.,'Web Content Title')]
    • Running assertLiferayErrors
  • Running AssertTextEquals with locator1//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//h4/*[contains(@class,'asset-title')][contains(.,'Blogs Entry Title')] with value1Blogs Entry Title
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Blogs Entry Title
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]Blogs Entry Title
    • Running assertJavaScriptErrors with parameters//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//h4/*[contains(@class,'asset-title')][contains(.,'Blogs Entry Title')]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Blogs Entry Title
    • Running isElementPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]
    • Running waitForElementNotPresent with parameters//div[contains(@class,'lfr-notification-wrapper') and contains(@style,'height: 82px;')]Blogs Entry Title
    • Running assertJavaScriptErrors with parameters//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//h4/*[contains(@class,'asset-title')][contains(.,'Blogs Entry Title')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//h4/*[contains(@class,'asset-title')][contains(.,'Blogs Entry Title')]Blogs Entry Title
    • Running waitForTextCaseInsensitive with parameters//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//h4/*[contains(@class,'asset-title')][contains(.,'Blogs Entry Title')]Blogs Entry Title
    • Running assertTextCaseInsensitive with parameters//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//h4/*[contains(@class,'asset-title')][contains(.,'Blogs Entry Title')]Blogs Entry Title
    • Running assertJavaScriptErrors with parameters//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//h4/*[contains(@class,'asset-title')][contains(.,'Blogs Entry Title')]
    • Running assertLiferayErrors
  • Running AssertTextEquals with locator1//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//h4/*[contains(@class,'asset-title')][contains(.,'Document_1.png')] with value1Document_1.png
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Document_1.png
    • 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;')]Document_1.png
    • Running assertJavaScriptErrors with parameters//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//h4/*[contains(@class,'asset-title')][contains(.,'Document_1.png')]
    • Running assertLiferayErrors
    • Running waitForElementNotPresent with parameters//html[contains(@class,'lfr-spa-loading')]Document_1.png
    • 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;')]Document_1.png
    • Running assertJavaScriptErrors with parameters//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//h4/*[contains(@class,'asset-title')][contains(.,'Document_1.png')]
    • Running assertLiferayErrors
    • Running waitForVisible with parameters//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//h4/*[contains(@class,'asset-title')][contains(.,'Document_1.png')]Document_1.png
    • Running waitForTextCaseInsensitive with parameters//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//h4/*[contains(@class,'asset-title')][contains(.,'Document_1.png')]Document_1.png
    • Running assertTextCaseInsensitive with parameters//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//h4/*[contains(@class,'asset-title')][contains(.,'Document_1.png')]Document_1.png
    • Running assertJavaScriptErrors with parameters//div[@id='column-2']//section[contains(@id,'AssetPublisher')]//h4/*[contains(@class,'asset-title')][contains(.,'Document_1.png')]
    • Running assertLiferayErrors
  • LocalFile.InfoListProviders#DisplayRelatedAssetsInAssetPublisher

    • 8
      setUp {
      • 9
        TestCase.setUpPortalInstance();
        • 78
          var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
        • 79
          var testPortalInstance = PropsUtil.get("test.portal.instance");
        • 81
          if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
          • 82
            SignIn.signInPortalInstanceSetUp();
            • 3
              var userEmailAddress = "[email protected]";
            • 4
              var userPassword = "test";
            • 5
              var userPasswordReminderAnswer = "test";
            • 62
              var defaultPortalURL = PropsUtil.get("default.portal.url");
            • 64
              SignIn.signInSpecificURL(url = "${defaultPortalURL}");
              • 3
                var userEmailAddress = "[email protected]";
              • 4
                var userPassword = "test";
              • 5
                var userPasswordReminderAnswer = "test";
              • 121
                Navigator.openSpecificURL(url = "${url}");
                • 250
                  Open(locator1 = "${url}");
              • 123
                SignIn._signIn( rememberMe = "${rememberMe}", userEmailAddress = "${userEmailAddress}", userPassword = "${userPassword}");
                • 3
                  var userEmailAddress = "[email protected]";
                • 4
                  var userPassword = "test";
                • 5
                  var userPasswordReminderAnswer = "test";
                • 8
                  if (IsElementNotPresent(locator1 = "TextInput#EMAIL_ADDRESS")) {
                  • 9
                    AssertClick( locator1 = "UserBar#USER_SIGN_IN", value1 = "Sign In");
                  }
                • 14
                  Type.typePause( locator1 = "TextInput#EMAIL_ADDRESS", value1 = "${userEmailAddress}");
                • 18
                  Type.typePause( locator1 = "TextInput#PASSWORD", value1 = "${userPassword}");
                • 22
                  if ("${rememberMe}" == "true") {
                  • 23
                    Check(locator1 = "Checkbox#REMEMBER_ME");
                  }
                • 26
                  AssertClick( locator1 = "Button#SIGN_IN", value1 = "Sign In");
                • 30
                  AssertElementNotPresent(locator1 = "Button#SIGN_IN");
            • 66
              if (IsElementPresent(locator1 = "Button#I_AGREE")) {
              • 67
                SignIn.agreeToTermsOfUse();
                • 3
                  var userEmailAddress = "[email protected]";
                • 4
                  var userPassword = "test";
                • 5
                  var userPasswordReminderAnswer = "test";
                • 35
                  AssertClick( locator1 = "Button#I_AGREE", value1 = "I Agree");
                • 39
                  AssertElementNotPresent(locator1 = "Button#I_AGREE");
              }
            • 70
              if (IsElementPresent(locator1 = "Select#QUESTION")) {
              • 71
                SignIn.setPasswordReminder();
                • 3
                  var userEmailAddress = "[email protected]";
                • 4
                  var userPassword = "test";
                • 5
                  var userPasswordReminderAnswer = "test";
                • 44
                  Type( locator1 = "TextInput#ANSWER", value1 = "${userPasswordReminderAnswer}");
                • 48
                  Button.clickSave();
                  • 84
                    Button.click(button = "Save");
                    • 4
                      Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
              }
            • 74
              ProductMenu.gotoPortlet( category = "Configuration", panel = "Control Panel", portlet = "Virtual Instances");
              • 46
                ProductMenuHelper.expandPanel(panel = "${panel}");
                • 22
                  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");
                • 24
                  var key_panel = StringUtil.toLowerCase("${panel}");
                • 25
                  var key_panel = StringUtil.replace("${key_panel}", " ", "_");
                • 27
                  if (IsElementPresent(locator1 = "ProductMenu#PANEL_COLLAPSED", key_panel = "${key_panel}")) {
                  • 28
                    Click( key_panel = "${key_panel}", locator1 = "ProductMenu#PANEL_COLLAPSED");
                  }
                • 33
                  AssertElementPresent( key_panel = "${key_panel}", locator1 = "ProductMenu#PANEL_EXPANDED");
              • 48
                ProductMenuHelper.expandCategory(category = "${category}");
                • 12
                  var key_category = "${category}";
                • 14
                  if (IsElementPresent(locator1 = "ProductMenu#CATEGORY_COLLAPSED")) {
                  • 15
                    Click(locator1 = "ProductMenu#CATEGORY_COLLAPSED");
                  }
                • 18
                  AssertElementPresent(locator1 = "ProductMenu#CATEGORY_EXPANDED");
              • 50
                ProductMenuHelper.gotoPortlet(portlet = "${portlet}");
                • 39
                  AssertClick.assertPartialTextClickAt( key_portlet = "${portlet}", locator1 = "ProductMenu#PORTLET", value1 = "${portlet}");
            • 79
              while (IsElementPresent(locator1 = "ContentRow#ENTRY_CONTENT_ROW_NUMBER_ELLIPSIS", key_rowNumber = "2")) {
              • 80
                Click.waitForMenuToggleJSClick( key_rowNumber = "2", locator1 = "ContentRow#ENTRY_CONTENT_ROW_NUMBER_ELLIPSIS");
              • 84
                MenuItem.clickNoError(menuItem = "Delete");
                • 10
                  ClickNoError( key_menuItem = "${menuItem}", locator1 = "MenuItem#ANY_MENU_ITEM");
              • 86
                AssertConfirm(value1 = "Are you sure you want to delete this? It will be deleted immediately.");
              • 88
                Alert.viewSuccessMessage();
                • 77
                  VerifyElementPresent(locator1 = "Message#SUCCESS_DISMISSIBLE");
                • 79
                  if (IsElementPresent(locator1 = "Button#CLOSE_MESSAGE")) {
                  • 80
                    Click(locator1 = "Button#CLOSE_MESSAGE");
                  }
              }
            • 91
              var portalURL = PropsUtil.get("portal.url");
            • 92
              var portalURL = StringUtil.replace("${portalURL}", "http://", "");
            • 93
              var portalURL = StringUtil.replace("${portalURL}", ":8080", "");
            • 95
              LexiconEntry.gotoAdd();
              • 55
                var browserType = PropsUtil.get("browser.type");
              • 57
                if ("${browserType}" == "chrome") {
                • 58
                  MetalComponent.waitForManagementBar();
                  • 16
                    AssertVisible(locator1 = "//nav[contains(@class,'management-bar')]");
                  • 18
                    MetalComponent.waitForMetalComponent(id = '''document.querySelector("nav.management-bar").parentNode.id''');
                    • 22
                      var javaScript = ''' var metalComponent = Liferay.component(${id}); if (metalComponent !== undefined) { if (metalComponent.wasRendered) { return 'ready'; } else { return 'pending'; } } else { return 'pending'; } ''';
                    • 37
                      var metalComponentReady = "";
                    • 39
                      while ("${metalComponentReady}" != "ready" && (maxIterations = "30")) {
                      • 40
                        var metalComponentReady = selenium.getEval("${javaScript}");
                      • 42
                        Pause(locator1 = "1000");
                      }
                }
              • 61
                if ("${browserType}" == "internetexplorer") {
                • 62
                  Click(locator1 = "Button#PLUS_IE");
                }
              • 64
                else {
                • 65
                  Click(locator1 = "Button#PLUS");
                }
            • 97
              Pause(locator1 = "3000");
            • 99
              Type( locator1 = "TextInput#WEB_ID", value1 = "${portalURL}");
            • 103
              Type( locator1 = "TextInput#VIRTUAL_HOST", value1 = "${portalURL}");
            • 107
              Type( locator1 = "TextInput#MAIL_DOMAIN", value1 = "liferay.com");
            • 111
              Button.clickSave();
              • 84
                Button.click(button = "Save");
                • 4
                  Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
            • 113
              Pause(locator1 = "3000");
            • 115
              Alert.viewSuccessMessage();
              • 77
                VerifyElementPresent(locator1 = "Message#SUCCESS_DISMISSIBLE");
              • 79
                if (IsElementPresent(locator1 = "Button#CLOSE_MESSAGE")) {
                • 80
                  Click(locator1 = "Button#CLOSE_MESSAGE");
                }
            • 117
              Navigator.openURL();
              • 272
                WaitForSPARefresh();
              • 274
                var baseURL = "${baseURL}";
              • 276
                if (contains("${baseURL}", "{baseURL}")) {
                • 277
                  var baseURL = PropsUtil.get("portal.url");
                }
              • 280
                Open(locator1 = "${baseURL}/web/guest/home");
          }
      • 11
        User.firstLoginPG();
        • 3
          var password = "test";
        • 4
          var userEmailAddress = "[email protected]";
        • 1686
          if (isSet(virtualHostsURL)) {
          • 1687
            Navigator.openSpecificURL(url = "${virtualHostsURL}");
            • 250
              Open(locator1 = "${url}");
          }
        • 1689
          else {
          • 1690
            Navigator.openURL();
            • 272
              WaitForSPARefresh();
            • 274
              var baseURL = "${baseURL}";
            • 276
              if (contains("${baseURL}", "{baseURL}")) {
              • 277
                var baseURL = PropsUtil.get("portal.url");
              }
            • 280
              Open(locator1 = "${baseURL}/web/guest/home");
          }
        • 1693
          if (IsElementNotPresent(locator1 = "UserBar#USER_SIGN_IN")) {
          • 1694
            User.logoutPG( nodePort = "${nodePort}", specificURL = "${virtualHostsURL}");
            • 3
              var password = "test";
            • 4
              var userEmailAddress = "[email protected]";
            • 2124
              @description = "Log out of Liferay Portal."
            • 2126
              if (isSet(nodePort)) {
              • 2127
                Navigator.openSpecificURL(url = "http://localhost:${nodePort}");
                • 250
                  Open(locator1 = "${url}");
              }
            • 2129
              else {
              • 2130
                if (isSet(specificURL)) {
                • 2131
                  Navigator.openSpecificURL(url = "${specificURL}");
                  • 250
                    Open(locator1 = "${url}");
                }
              • 2133
                else {
                • 2134
                  Navigator.openURL();
                  • 272
                    WaitForSPARefresh();
                  • 274
                    var baseURL = "${baseURL}";
                  • 276
                    if (contains("${baseURL}", "{baseURL}")) {
                    • 277
                      var baseURL = PropsUtil.get("portal.url");
                    }
                  • 280
                    Open(locator1 = "${baseURL}/web/guest/home");
                }
              }
            • 2138
              UserBar.signOut();
              • 38
                if (IsElementNotPresent(locator1 = "UserBar#USER_SIGN_IN")) {
                • 39
                  UserBar.gotoDropdown();
                  • 4
                    if (IsElementPresent(locator1 = "UserBar#USER_AVATAR_PORTRAIT")) {
                    • 5
                      Click.waitForPersonalMenuJSClick(locator1 = "UserBar#USER_AVATAR_PORTRAIT");
                    }
                  • 7
                    else {
                    • 8
                      var browserType = PropsUtil.get("browser.type");
                    • 10
                      if ("${browserType}" == "internetexplorer") {
                      • 11
                        Click.waitForPersonalMenuJSClick(locator1 = "UserBar#USER_AVATAR_ICON_IE");
                      }
                    • 13
                      else {
                      • 14
                        Click.waitForPersonalMenuJSClick(locator1 = "UserBar#USER_AVATAR_ICON");
                      }
                    }
                  • 18
                    AssertVisible(locator1 = "UserBar#USER_AVATAR_DROPDOWN_PORTAL_OPEN");
                • 41
                  ScrollWebElementIntoView(locator1 = "UserBar#USER_AVATAR_DROPDOWN_SIGNOUT");
                • 43
                  Click(locator1 = "UserBar#USER_AVATAR_DROPDOWN_SIGNOUT");
                }
          • 1698
            User.loginPG( specificURL = "${virtualHostsURL}", userEmailAddress = "${userEmailAddress}");
            • 3
              var password = "test";
            • 4
              var userEmailAddress = "[email protected]";
            • 1773
              if (isSet(nodePort)) {
              • 1774
                Navigator.openSpecificURL(url = "http://localhost:${nodePort}");
                • 250
                  Open(locator1 = "${url}");
              }
            • 1776
              else if (isSet(specificURL)) {
              • 1777
                Navigator.openSpecificURL(url = "${specificURL}");
                • 250
                  Open(locator1 = "${url}");
              }
            • 1779
              else {
              • 1780
                Navigator.openURL();
                • 272
                  WaitForSPARefresh();
                • 274
                  var baseURL = "${baseURL}";
                • 276
                  if (contains("${baseURL}", "{baseURL}")) {
                  • 277
                    var baseURL = PropsUtil.get("portal.url");
                  }
                • 280
                  Open(locator1 = "${baseURL}/web/guest/home");
              }
            • 1783
              if (IsElementPresent(locator1 = "Message#PORTAL_LOCALIZATION")) {
              • 1784
                Alert.closePortalLocalizationWarning();
                • 10
                  Alert.closeMessage(messageType = "PORTAL_LOCALIZATION");
                  • 4
                    if ((IsElementPresent(locator1 = "Message#${messageType}")) && (IsVisible(locator1 = "Message#${messageType}")) && (IsVisible(locator1 = "Icon#CLOSE"))) {
                    • 5
                      Click(locator1 = "Icon#CLOSE");
                    }
                • 12
                  Pause(locator1 = "2000");
              }
            • 1787
              if ("${samlEnabled}" != "true") {
              • 1788
                User.loginLocalizationPG(localization = "${localization}");
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "[email protected]";
                • 1764
                  var localizedSignIn = User._signInLocalization(localization = "${localization}");
                  • 3
                    var password = "test";
                  • 4
                    var userEmailAddress = "[email protected]";
                  • 23
                    if ("${localization}" == "JA") {
                    • 24
                      var localizedSignIn = "ログイン";
                    }
                  • 26
                    else if ("${localization}" == "ZH") {
                    • 27
                      var localizedSignIn = "登录";
                    }
                  • 29
                    else if ("${localization}" == "ES") {
                    • 30
                      var localizedSignIn = "Acceder";
                    }
                  • 32
                    else {
                    • 33
                      var localizedSignIn = "Sign In";
                    }
                  • 36
                    return "${localizedSignIn}";
                • 1766
                  AssertClick( locator1 = "UserBar#USER_SIGN_IN", value1 = "${localizedSignIn}");
              }
            • 1791
              if ("${samlMultiIdPs}" == "true") {
              • 1792
                Select( key_fieldLabel = "Identity Provider", locator1 = "Select#GENERIC_SELECT_FIELD", value1 = "${idpName}");
              • 1797
                Button.click(button = "Sign In");
                • 4
                  Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
              }
            • 1800
              if ((isSet(authenticationMethod)) && ("${authenticationMethod}" == "By Screen Name")) {
              • 1801
                Type( locator1 = "TextInput#SCREEN_NAME", value1 = "${userScreenName}");
              }
            • 1805
              else {
              • 1806
                Type.typePause( locator1 = "TextInput#EMAIL_ADDRESS", value1 = "${userEmailAddress}");
              }
            • 1811
              Type.typePause( locator1 = "TextInput#PASSWORD", value1 = "${password}");
            • 1815
              if ((isSet(rememberMeChecked)) && ("${rememberMeChecked}" == "true")) {
              • 1816
                Check(locator1 = "Checkbox#REMEMBER_ME");
              }
            • 1819
              if (isSet(localization)) {
              • 1820
                var localizedSignIn = User._signInLocalization(localization = "${localization}");
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "[email protected]";
                • 23
                  if ("${localization}" == "JA") {
                  • 24
                    var localizedSignIn = "ログイン";
                  }
                • 26
                  else if ("${localization}" == "ZH") {
                  • 27
                    var localizedSignIn = "登录";
                  }
                • 29
                  else if ("${localization}" == "ES") {
                  • 30
                    var localizedSignIn = "Acceder";
                  }
                • 32
                  else {
                  • 33
                    var localizedSignIn = "Sign In";
                  }
                • 36
                  return "${localizedSignIn}";
              • 1822
                Button.click(button = "${localizedSignIn}");
                • 4
                  Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
              }
            • 1824
              else {
              • 1825
                Button.click(button = "Sign In");
                • 4
                  Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
              }
            • 1828
              if (IsElementPresent(locator1 = "Message#ERROR_FORM_FIELD_REQUIRED") && (IsElementNotPresent(locator1 = "TextInput#ENTER_AGAIN"))) {
              • 1829
                echo("Sign in failed due to empty required field. Retrying...");
              • 1831
                if ((isSet(authenticationMethod)) && ("${authenticationMethod}" == "By Screen Name")) {
                • 1832
                  Type( locator1 = "TextInput#SCREEN_NAME", value1 = "${userScreenName}");
                }
              • 1836
                else {
                • 1837
                  Type.typePause( locator1 = "TextInput#EMAIL_ADDRESS", value1 = "${userEmailAddress}");
                }
              • 1842
                Type.typePause( locator1 = "TextInput#PASSWORD", value1 = "${password}");
              • 1846
                Button.click(button = "Sign In");
                • 4
                  Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
              }
            • 1849
              Button.viewNotPresent(button = "Sign In");
              • 120
                AssertElementNotPresent( key_text = "${button}", locator1 = "Button#ANY");
            • 1851
              if (isSet(localizedAgree)) {
              • 1852
                User.acceptEndUserLicenseAgreementLocalized(localizedAgree = "${localizedAgree}");
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "[email protected]";
                • 50
                  var key_localizedAgree = "${localizedAgree}";
                • 52
                  if (IsElementPresent(locator1 = "Button#I_AGREE_LOCALIZED")) {
                  • 53
                    AssertClick( locator1 = "Button#I_AGREE_LOCALIZED", value1 = "${localizedAgree}");
                  • 57
                    AssertElementNotPresent(locator1 = "Button#I_AGREE_LOCALIZED");
                  }
              }
            • 1854
              else {
              • 1855
                User.acceptEndUserLicenseAgreement();
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "[email protected]";
                • 40
                  if (IsElementPresent(locator1 = "Button#I_AGREE")) {
                  • 41
                    AssertClick( locator1 = "Button#I_AGREE", value1 = "I Agree");
                  • 45
                    AssertElementNotPresent(locator1 = "Button#I_AGREE");
                  }
              }
            • 1858
              User.resetPassword( resetPassword = "${resetPassword}", setupWizardEnabled = "${setupWizardEnabled}", syntaxCheckingEnabled = "${syntaxCheckingEnabled}");
              • 3
                var password = "test";
              • 4
                var userEmailAddress = "[email protected]";
              • 2181
                if (IsElementPresent.pauseIsElementPresent(locator1 = "TextInput#PASSWORD")) {
                • 2182
                  if ((isSet(syntaxCheckingEnabled)) && ("${syntaxCheckingEnabled}" == "true")) {
                  • 2183
                    Type( locator1 = "TextInput#PASSWORD_1", value1 = "${resetPassword}");
                  • 2187
                    Type( locator1 = "TextInput#PASSWORD_2", value1 = "${resetPassword}");
                  }
                • 2191
                  else {
                  • 2192
                    if ((isSet(setupWizardEnabled)) && ("${setupWizardEnabled}" == "true")) {
                    • 2193
                      Type( locator1 = "TextInput#PASSWORD_1", value1 = "test2");
                    • 2197
                      Type( locator1 = "TextInput#PASSWORD_2", value1 = "test2");
                    }
                  • 2201
                    else {
                    • 2202
                      Type( locator1 = "TextInput#PASSWORD_1", value1 = "test");
                    • 2206
                      Type( locator1 = "TextInput#PASSWORD_2", value1 = "test");
                    }
                  }
                • 2212
                  Button.clickSubmitButton();
                  • 100
                    Click(locator1 = "Button#SUBMIT");
                • 2214
                  AssertElementNotPresent(locator1 = "TextInput#ENTER_AGAIN");
                }
            • 1863
              if (isSet(localizedAnswer)) {
              • 1864
                User.answerPasswordReminderLocalized( localizedAnswer = "${localizedAnswer}", localizedSaveButton = "${localizedSaveButton}");
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "[email protected]";
                • 796
                  Pause(locator1 = "3000");
                • 798
                  var key_localizedAnswer = "${localizedAnswer}";
                • 800
                  if (IsElementPresent.pauseIsElementPresent(locator1 = "TextInput#ANSWER_LOCALIZED")) {
                  • 801
                    Type( locator1 = "TextInput#ANSWER_LOCALIZED", value1 = "test");
                  • 805
                    Button.click(button = "${localizedSaveButton}");
                    • 4
                      Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
                  • 807
                    Button.viewNotPresent(button = "${localizedSaveButton}");
                    • 120
                      AssertElementNotPresent( key_text = "${button}", locator1 = "Button#ANY");
                  }
              }
            • 1868
              else {
              • 1869
                User.answerPasswordReminder();
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "[email protected]";
                • 784
                  Pause(locator1 = "3000");
                • 786
                  if (IsElementPresent.pauseIsElementPresent(locator1 = "TextInput#REMINDER_QUERY")) {
                  • 787
                    Type( locator1 = "TextInput#REMINDER_QUERY", value1 = "test");
                  • 791
                    Click(locator1 = "Button#SUBMIT");
                  }
              }
            • 1872
              AssertElementPresent(locator1 = "UserBar#USER_AVATAR_IMAGE");
          }
        • 1702
          else {
          • 1703
            User.loginPG( localization = "${localization}", localizedAgree = "${localizedAgree}", localizedAnswer = "${localizedAnswer}", localizedSaveButton = "${localizedSaveButton}", samlEnabled = "${samlEnabled}", setupWizardEnabled = "${setupWizardEnabled}", specificURL = "${virtualHostsURL}", userEmailAddress = "${userEmailAddress}");
            • 3
              var password = "test";
            • 4
              var userEmailAddress = "[email protected]";
            • 1773
              if (isSet(nodePort)) {
              • 1774
                Navigator.openSpecificURL(url = "http://localhost:${nodePort}");
                • 250
                  Open(locator1 = "${url}");
              }
            • 1776
              else if (isSet(specificURL)) {
              • 1777
                Navigator.openSpecificURL(url = "${specificURL}");
                • 250
                  Open(locator1 = "${url}");
              }
            • 1779
              else {
              • 1780
                Navigator.openURL();
                • 272
                  WaitForSPARefresh();
                • 274
                  var baseURL = "${baseURL}";
                • 276
                  if (contains("${baseURL}", "{baseURL}")) {
                  • 277
                    var baseURL = PropsUtil.get("portal.url");
                  }
                • 280
                  Open(locator1 = "${baseURL}/web/guest/home");
              }
            • 1783
              if (IsElementPresent(locator1 = "Message#PORTAL_LOCALIZATION")) {
              • 1784
                Alert.closePortalLocalizationWarning();
                • 10
                  Alert.closeMessage(messageType = "PORTAL_LOCALIZATION");
                  • 4
                    if ((IsElementPresent(locator1 = "Message#${messageType}")) && (IsVisible(locator1 = "Message#${messageType}")) && (IsVisible(locator1 = "Icon#CLOSE"))) {
                    • 5
                      Click(locator1 = "Icon#CLOSE");
                    }
                • 12
                  Pause(locator1 = "2000");
              }
            • 1787
              if ("${samlEnabled}" != "true") {
              • 1788
                User.loginLocalizationPG(localization = "${localization}");
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "[email protected]";
                • 1764
                  var localizedSignIn = User._signInLocalization(localization = "${localization}");
                  • 3
                    var password = "test";
                  • 4
                    var userEmailAddress = "[email protected]";
                  • 23
                    if ("${localization}" == "JA") {
                    • 24
                      var localizedSignIn = "ログイン";
                    }
                  • 26
                    else if ("${localization}" == "ZH") {
                    • 27
                      var localizedSignIn = "登录";
                    }
                  • 29
                    else if ("${localization}" == "ES") {
                    • 30
                      var localizedSignIn = "Acceder";
                    }
                  • 32
                    else {
                    • 33
                      var localizedSignIn = "Sign In";
                    }
                  • 36
                    return "${localizedSignIn}";
                • 1766
                  AssertClick( locator1 = "UserBar#USER_SIGN_IN", value1 = "${localizedSignIn}");
              }
            • 1791
              if ("${samlMultiIdPs}" == "true") {
              • 1792
                Select( key_fieldLabel = "Identity Provider", locator1 = "Select#GENERIC_SELECT_FIELD", value1 = "${idpName}");
              • 1797
                Button.click(button = "Sign In");
                • 4
                  Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
              }
            • 1800
              if ((isSet(authenticationMethod)) && ("${authenticationMethod}" == "By Screen Name")) {
              • 1801
                Type( locator1 = "TextInput#SCREEN_NAME", value1 = "${userScreenName}");
              }
            • 1805
              else {
              • 1806
                Type.typePause( locator1 = "TextInput#EMAIL_ADDRESS", value1 = "${userEmailAddress}");
              }
            • 1811
              Type.typePause( locator1 = "TextInput#PASSWORD", value1 = "${password}");
            • 1815
              if ((isSet(rememberMeChecked)) && ("${rememberMeChecked}" == "true")) {
              • 1816
                Check(locator1 = "Checkbox#REMEMBER_ME");
              }
            • 1819
              if (isSet(localization)) {
              • 1820
                var localizedSignIn = User._signInLocalization(localization = "${localization}");
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "[email protected]";
                • 23
                  if ("${localization}" == "JA") {
                  • 24
                    var localizedSignIn = "ログイン";
                  }
                • 26
                  else if ("${localization}" == "ZH") {
                  • 27
                    var localizedSignIn = "登录";
                  }
                • 29
                  else if ("${localization}" == "ES") {
                  • 30
                    var localizedSignIn = "Acceder";
                  }
                • 32
                  else {
                  • 33
                    var localizedSignIn = "Sign In";
                  }
                • 36
                  return "${localizedSignIn}";
              • 1822
                Button.click(button = "${localizedSignIn}");
                • 4
                  Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
              }
            • 1824
              else {
              • 1825
                Button.click(button = "Sign In");
                • 4
                  Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
              }
            • 1828
              if (IsElementPresent(locator1 = "Message#ERROR_FORM_FIELD_REQUIRED") && (IsElementNotPresent(locator1 = "TextInput#ENTER_AGAIN"))) {
              • 1829
                echo("Sign in failed due to empty required field. Retrying...");
              • 1831
                if ((isSet(authenticationMethod)) && ("${authenticationMethod}" == "By Screen Name")) {
                • 1832
                  Type( locator1 = "TextInput#SCREEN_NAME", value1 = "${userScreenName}");
                }
              • 1836
                else {
                • 1837
                  Type.typePause( locator1 = "TextInput#EMAIL_ADDRESS", value1 = "${userEmailAddress}");
                }
              • 1842
                Type.typePause( locator1 = "TextInput#PASSWORD", value1 = "${password}");
              • 1846
                Button.click(button = "Sign In");
                • 4
                  Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
              }
            • 1849
              Button.viewNotPresent(button = "Sign In");
              • 120
                AssertElementNotPresent( key_text = "${button}", locator1 = "Button#ANY");
            • 1851
              if (isSet(localizedAgree)) {
              • 1852
                User.acceptEndUserLicenseAgreementLocalized(localizedAgree = "${localizedAgree}");
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "[email protected]";
                • 50
                  var key_localizedAgree = "${localizedAgree}";
                • 52
                  if (IsElementPresent(locator1 = "Button#I_AGREE_LOCALIZED")) {
                  • 53
                    AssertClick( locator1 = "Button#I_AGREE_LOCALIZED", value1 = "${localizedAgree}");
                  • 57
                    AssertElementNotPresent(locator1 = "Button#I_AGREE_LOCALIZED");
                  }
              }
            • 1854
              else {
              • 1855
                User.acceptEndUserLicenseAgreement();
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "[email protected]";
                • 40
                  if (IsElementPresent(locator1 = "Button#I_AGREE")) {
                  • 41
                    AssertClick( locator1 = "Button#I_AGREE", value1 = "I Agree");
                  • 45
                    AssertElementNotPresent(locator1 = "Button#I_AGREE");
                  }
              }
            • 1858
              User.resetPassword( resetPassword = "${resetPassword}", setupWizardEnabled = "${setupWizardEnabled}", syntaxCheckingEnabled = "${syntaxCheckingEnabled}");
              • 3
                var password = "test";
              • 4
                var userEmailAddress = "[email protected]";
              • 2181
                if (IsElementPresent.pauseIsElementPresent(locator1 = "TextInput#PASSWORD")) {
                • 2182
                  if ((isSet(syntaxCheckingEnabled)) && ("${syntaxCheckingEnabled}" == "true")) {
                  • 2183
                    Type( locator1 = "TextInput#PASSWORD_1", value1 = "${resetPassword}");
                  • 2187
                    Type( locator1 = "TextInput#PASSWORD_2", value1 = "${resetPassword}");
                  }
                • 2191
                  else {
                  • 2192
                    if ((isSet(setupWizardEnabled)) && ("${setupWizardEnabled}" == "true")) {
                    • 2193
                      Type( locator1 = "TextInput#PASSWORD_1", value1 = "test2");
                    • 2197
                      Type( locator1 = "TextInput#PASSWORD_2", value1 = "test2");
                    }
                  • 2201
                    else {
                    • 2202
                      Type( locator1 = "TextInput#PASSWORD_1", value1 = "test");
                    • 2206
                      Type( locator1 = "TextInput#PASSWORD_2", value1 = "test");
                    }
                  }
                • 2212
                  Button.clickSubmitButton();
                  • 100
                    Click(locator1 = "Button#SUBMIT");
                • 2214
                  AssertElementNotPresent(locator1 = "TextInput#ENTER_AGAIN");
                }
            • 1863
              if (isSet(localizedAnswer)) {
              • 1864
                User.answerPasswordReminderLocalized( localizedAnswer = "${localizedAnswer}", localizedSaveButton = "${localizedSaveButton}");
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "[email protected]";
                • 796
                  Pause(locator1 = "3000");
                • 798
                  var key_localizedAnswer = "${localizedAnswer}";
                • 800
                  if (IsElementPresent.pauseIsElementPresent(locator1 = "TextInput#ANSWER_LOCALIZED")) {
                  • 801
                    Type( locator1 = "TextInput#ANSWER_LOCALIZED", value1 = "test");
                  • 805
                    Button.click(button = "${localizedSaveButton}");
                    • 4
                      Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
                  • 807
                    Button.viewNotPresent(button = "${localizedSaveButton}");
                    • 120
                      AssertElementNotPresent( key_text = "${button}", locator1 = "Button#ANY");
                  }
              }
            • 1868
              else {
              • 1869
                User.answerPasswordReminder();
                • 3
                  var password = "test";
                • 4
                  var userEmailAddress = "[email protected]";
                • 784
                  Pause(locator1 = "3000");
                • 786
                  if (IsElementPresent.pauseIsElementPresent(locator1 = "TextInput#REMINDER_QUERY")) {
                  • 787
                    Type( locator1 = "TextInput#REMINDER_QUERY", value1 = "test");
                  • 791
                    Click(locator1 = "Button#SUBMIT");
                  }
              }
            • 1872
              AssertElementPresent(locator1 = "UserBar#USER_AVATAR_IMAGE");
          }
      • 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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
            • 17
              if (("${isSet}" == "false") && ("${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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
              • 17
                if (("${isSet}" == "false") && ("${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}");
              • 146
                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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                  • 17
                    if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                    • 18
                      fail("Please set '${parameter}'");
                    }
                  }
              • 148
                var companyId = JSONCompany.getCompanyId();
                • 4
                  var portalInstanceName = JSONCompany.getPortalInstanceName();
                  • 19
                    var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                  • 20
                    var testPortalInstance = PropsUtil.get("test.portal.instance");
                  • 22
                    if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                    • 23
                      var portalURL = JSONCompany.getPortalURL();
                      • 36
                        var portalURL = PropsUtil.get("portal.url");
                      • 38
                        return "${portalURL}";
                    • 25
                      var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                    • 26
                      var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                    • 28
                      return "${portalInstanceName}";
                    }
                  • 30
                    else {
                    • 31
                      return "localhost";
                    }
                • 6
                  var portalURL = JSONCompany.getPortalURL();
                  • 36
                    var portalURL = PropsUtil.get("portal.url");
                  • 38
                    return "${portalURL}";
                • 8
                  var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u [email protected]:test ''';
                • 13
                  var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                • 15
                  return "${companyId}";
              • 150
                var grandParentGroupId = JSONGroupSetter.setGrandParentGroupId(grandParentGroupName = "${grandParentGroupName}");
                • 4
                  if (isSet(grandParentGroupName)) {
                  • 5
                    if (!(isSet(site))) {
                    • 6
                      var site = "true";
                    }
                  • 9
                    var grandParentGroupId = JSONGroupAPI._getGroupIdByName(groupName = "${grandParentGroupName}", site = "${site}");
                    • 104
                      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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                          • 18
                            fail("Please set '${parameter}'");
                          }
                        }
                    • 106
                      var companyId = JSONCompany.getCompanyId();
                      • 4
                        var portalInstanceName = JSONCompany.getPortalInstanceName();
                        • 19
                          var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                        • 20
                          var testPortalInstance = PropsUtil.get("test.portal.instance");
                        • 22
                          if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                          • 23
                            var portalURL = JSONCompany.getPortalURL();
                            • 36
                              var portalURL = PropsUtil.get("portal.url");
                            • 38
                              return "${portalURL}";
                          • 25
                            var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                          • 26
                            var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                          • 28
                            return "${portalInstanceName}";
                          }
                        • 30
                          else {
                          • 31
                            return "localhost";
                          }
                      • 6
                        var portalURL = JSONCompany.getPortalURL();
                        • 36
                          var portalURL = PropsUtil.get("portal.url");
                        • 38
                          return "${portalURL}";
                      • 8
                        var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u [email protected]:test ''';
                      • 13
                        var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                      • 15
                        return "${companyId}";
                    • 108
                      var portalURL = JSONCompany.getPortalURL();
                      • 36
                        var portalURL = PropsUtil.get("portal.url");
                      • 38
                        return "${portalURL}";
                    • 110
                      var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/0/site/${site} \ -u [email protected]:test ''';
                    • 115
                      var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                    • 116
                      var groupId = StringUtil.replace("${groupId}", "["", "");
                    • 117
                      var groupId = StringUtil.replace("${groupId}", ""]", "");
                    • 119
                      if ("${groupId}" == "[]") {
                      • 120
                        fail("FAIL. Cannot find group.");
                      }
                    • 123
                      return "${groupId}";
                  }
                • 11
                  else {
                  • 12
                    var grandParentGroupId = "0";
                  }
                • 15
                  return "${grandParentGroupId}";
              • 152
                var portalURL = JSONCompany.getPortalURL();
                • 36
                  var portalURL = PropsUtil.get("portal.url");
                • 38
                  return "${portalURL}";
              • 154
                var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${grandParentGroupId}/site/true \ -u [email protected]:test ''';
              • 159
                var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
              • 160
                var groupId = StringUtil.replace("${groupId}", "["", "");
              • 161
                var groupId = StringUtil.replace("${groupId}", ""]", "");
              • 163
                if ("${groupId}" == "[]") {
                • 164
                  fail("FAIL. Cannot find group.");
                }
              • 167
                return "${groupId}";
            }
          • 57
            else {
            • 58
              var parentGroupId = "0";
            }
          • 61
            return "${parentGroupId}";
        • 33
          JSONGroupAPI._addGroup( groupDescriptionMap = "${groupDescriptionMap}", groupNameMap = "${groupNameMap}", parentGroupId = "${parentGroupId}");
          • 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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
              • 17
                if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                • 18
                  fail("Please set '${parameter}'");
                }
              }
          • 7
            var portalURL = JSONCompany.getPortalURL();
            • 36
              var portalURL = PropsUtil.get("portal.url");
            • 38
              return "${portalURL}";
          • 9
            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=1 \ -d manualMembership=true \ -d membershipRestriction=0 \ -d friendlyURL= \ -d site=true \ -d inheritContent=false \ -d active=true ''';
          • 25
            com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
      }
    • 29
      test DisplayRelatedAssetsInAssetPublisher {
      • 27
        @description = "This is a use case for LPS-110191. The related assets should be in AP when select Related Assets as Collection Provider."
      • 30
        task ("Add a Web Content Article, a Blogs Entry and a Document") {
        • 31
          JSONWebcontent.addWebContent( content = "Web Content Content", groupName = "Test Site Name", title = "Web Content Title");
          • 57
            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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
              • 17
                if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                • 18
                  fail("Please set '${parameter}'");
                }
              }
          • 59
            var groupId = JSONWebcontentSetter.setGroupId(groupName = "${groupName}", site = "${site}");
            • 61
              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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                • 17
                  if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                  • 18
                    fail("Please set '${parameter}'");
                  }
                }
            • 63
              if (!(isSet(site))) {
              • 64
                var site = "true";
              }
            • 67
              var groupId = JSONGroupAPI._getGroupIdByName(groupName = "${groupName}", site = "${site}");
              • 104
                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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                  • 17
                    if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                    • 18
                      fail("Please set '${parameter}'");
                    }
                  }
              • 106
                var companyId = JSONCompany.getCompanyId();
                • 4
                  var portalInstanceName = JSONCompany.getPortalInstanceName();
                  • 19
                    var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                  • 20
                    var testPortalInstance = PropsUtil.get("test.portal.instance");
                  • 22
                    if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                    • 23
                      var portalURL = JSONCompany.getPortalURL();
                      • 36
                        var portalURL = PropsUtil.get("portal.url");
                      • 38
                        return "${portalURL}";
                    • 25
                      var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                    • 26
                      var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                    • 28
                      return "${portalInstanceName}";
                    }
                  • 30
                    else {
                    • 31
                      return "localhost";
                    }
                • 6
                  var portalURL = JSONCompany.getPortalURL();
                  • 36
                    var portalURL = PropsUtil.get("portal.url");
                  • 38
                    return "${portalURL}";
                • 8
                  var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u [email protected]:test ''';
                • 13
                  var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                • 15
                  return "${companyId}";
              • 108
                var portalURL = JSONCompany.getPortalURL();
                • 36
                  var portalURL = PropsUtil.get("portal.url");
                • 38
                  return "${portalURL}";
              • 110
                var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/0/site/${site} \ -u [email protected]:test ''';
              • 115
                var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
              • 116
                var groupId = StringUtil.replace("${groupId}", "["", "");
              • 117
                var groupId = StringUtil.replace("${groupId}", ""]", "");
              • 119
                if ("${groupId}" == "[]") {
                • 120
                  fail("FAIL. Cannot find group.");
                }
              • 123
                return "${groupId}";
            • 69
              return "${groupId}";
          • 61
            var contentXML = JSONWebcontentSetter.setContentXML(content = "${content}");
            • 19
              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}");
                }
            • 24
              if (isSet(contentMap)) {
              • 25
                var contentXML = JSONWebcontentUtil._localizedConvertToXML(contentMap = "${contentMap}");
                • 14
                  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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                    • 17
                      if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                      • 18
                        fail("Please set '${parameter}'");
                      }
                    }
                • 18
                  var localeList = "";
                • 20
                  for (var i : list "${contentMap}") {
                  • 21
                    var locale = StringUtil.extractFirst("${i}", ":");
                  • 22
                    var localeList = "${localeList},${locale}";
                  }
                • 25
                  var localeList = RegexUtil.replace("${localeList}", ",(.*)", "1");
                • 29
                  var dynamicContent = "";
                • 31
                  for (var i : list "${contentMap}") {
                  • 32
                    var locale = StringUtil.extractFirst("${i}", ":");
                  • 33
                    var translated = StringUtil.extractLast("${i}", ":");
                  • 35
                    var dynamicContent = '''${dynamicContent} ${translated}''';
                  }
                • 40
                  var contentXML = ''' ${dynamicContent} ''';
                • 42
                  return "${contentXML}";
              }
            • 27
              else {
              • 28
                var contentXML = JSONWebcontentUtil._convertToXML(content = "${content}");
                • 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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                    • 17
                      if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                      • 18
                        fail("Please set '${parameter}'");
                      }
                    }
                • 7
                  var contentXML = ''' ${content} ''';
                • 9
                  return "${contentXML}";
              }
            • 31
              return "${contentXML}";
          • 63
            var descriptionMap = JSONWebcontentSetter.setDescriptionMap(description = "${description}");
            • 35
              if (isSet(description)) {
              • 36
                var descriptionMap = '''{"en_US":"${description}"}''';
              }
            • 38
              else {
              • 39
                var descriptionMap = "{}";
              }
            • 42
              return "${descriptionMap}";
          • 65
            var folderId = JSONWebcontentSetter.setFolderId( folderName = "${folderName}", groupId = "${groupId}");
            • 46
              if (isSet(folderName)) {
              • 47
                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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                  • 17
                    if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                    • 18
                      fail("Please set '${parameter}'");
                    }
                  }
              • 49
                var folderId = JSONWebcontentAPI._getFolderIdByFolderName( folderName = "${folderName}", groupId = "${groupId}");
                • 83
                  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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                    • 17
                      if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                      • 18
                        fail("Please set '${parameter}'");
                      }
                    }
                • 85
                  var portalURL = JSONCompany.getPortalURL();
                  • 36
                    var portalURL = PropsUtil.get("portal.url");
                  • 38
                    return "${portalURL}";
                • 87
                  var curl = ''' ${portalURL}/api/jsonws/journal.journalfolder/get-folders \ -u [email protected]:test \ -d groupId=${groupId} ''';
                • 93
                  var folderId = JSONCurlUtil.post("${curl}", "$.[?(@['name'] == '${folderName}')]['folderId']");
                • 94
                  var folderId = StringUtil.replace("${folderId}", "["", "");
                • 95
                  var folderId = StringUtil.replace("${folderId}", ""]", "");
                • 97
                  if ("${folderId}" == "[]") {
                  • 98
                    fail("FAIL. Cannot find folder.");
                  }
                • 100
                  else {
                  • 101
                    return "${folderId}";
                  }
              }
            • 53
              else {
              • 54
                var folderId = "0";
              }
            • 57
              return "${folderId}";
          • 69
            var serviceContext = JSONWebcontentSetter.setServiceContext( assetCategoryIds = "${assetCategoryIds}", assetTagNames = "${assetTagNames}", serviceContext = "${serviceContext}", workflowAction = "${workflowAction}");
            • 73
              if (!(isSet(serviceContext))) {
              • 74
                var serviceContext = JSONServiceContextUtil.setServiceContext( addGuestPermissions = "true", assetCategoryIds = "${assetCategoryIds}", assetTagNames = "${assetTagNames}", workflowAction = "${workflowAction}");
                • 88
                  var serviceContext = "{}";
                • 90
                  if (isSet(assetCategoryIds)) {
                  • 91
                    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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${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}";
                  }
                • 96
                  if (isSet(assetTagNames)) {
                  • 97
                    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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${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}";
                  }
                • 102
                  if (isSet(addGuestPermissions)) {
                  • 103
                    var serviceContext = JSONServiceContextUtil._addGuestPermissions( addGuestPermissions = "${addGuestPermissions}", JSON = "${serviceContext}");
                    • 51
                      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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                          • 18
                            fail("Please set '${parameter}'");
                          }
                        }
                    • 53
                      if (!(("${addGuestPermissions}" == "true") || ("${addGuestPermissions}" == "false"))) {
                      • 54
                        fail("Invalid addGuestPermissions: '${addGuestPermissions}' specified. Allowed values are 'true' or 'false'.");
                      }
                    • 57
                      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}";
                    • 62
                      return "${JSON}";
                  }
                • 108
                  if (isSet(groupName)) {
                  • 109
                    var serviceContext = JSONServiceContextUtil._addGroupId( groupName = "${groupName}", JSON = "${serviceContext}");
                    • 34
                      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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                          • 18
                            fail("Please set '${parameter}'");
                          }
                        }
                    • 36
                      if (!(isSet(site))) {
                      • 37
                        var site = "true";
                      }
                    • 40
                      var groupId = JSONGroupAPI._getGroupIdByName(groupName = "${groupName}", site = "${site}");
                      • 104
                        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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                          • 17
                            if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                            • 18
                              fail("Please set '${parameter}'");
                            }
                          }
                      • 106
                        var companyId = JSONCompany.getCompanyId();
                        • 4
                          var portalInstanceName = JSONCompany.getPortalInstanceName();
                          • 19
                            var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                          • 20
                            var testPortalInstance = PropsUtil.get("test.portal.instance");
                          • 22
                            if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                            • 23
                              var portalURL = JSONCompany.getPortalURL();
                              • 36
                                var portalURL = PropsUtil.get("portal.url");
                              • 38
                                return "${portalURL}";
                            • 25
                              var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                            • 26
                              var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                            • 28
                              return "${portalInstanceName}";
                            }
                          • 30
                            else {
                            • 31
                              return "localhost";
                            }
                        • 6
                          var portalURL = JSONCompany.getPortalURL();
                          • 36
                            var portalURL = PropsUtil.get("portal.url");
                          • 38
                            return "${portalURL}";
                        • 8
                          var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u [email protected]:test ''';
                        • 13
                          var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                        • 15
                          return "${companyId}";
                      • 108
                        var portalURL = JSONCompany.getPortalURL();
                        • 36
                          var portalURL = PropsUtil.get("portal.url");
                        • 38
                          return "${portalURL}";
                      • 110
                        var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/0/site/${site} \ -u [email protected]:test ''';
                      • 115
                        var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                      • 116
                        var groupId = StringUtil.replace("${groupId}", "["", "");
                      • 117
                        var groupId = StringUtil.replace("${groupId}", ""]", "");
                      • 119
                        if ("${groupId}" == "[]") {
                        • 120
                          fail("FAIL. Cannot find group.");
                        }
                      • 123
                        return "${groupId}";
                    • 42
                      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}";
                    • 47
                      return "${JSON}";
                  }
                • 114
                  if (isSet(workflowAction)) {
                  • 115
                    var serviceContext = JSONServiceContextUtil._addWorkflowAction( JSON = "${serviceContext}", workflowAction = "${workflowAction}");
                    • 67
                      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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                          • 18
                            fail("Please set '${parameter}'");
                          }
                        }
                    • 69
                      if ("${workflowAction}" == "DRAFT") {
                      • 70
                        var workflowActionNumber = "2";
                      }
                    • 72
                      else if ("${workflowAction}" == "PUBLISH") {
                      • 73
                        var workflowActionNumber = "1";
                      }
                    • 75
                      else {
                      • 76
                        fail("Invalid workflowAction: '${workflowAction}' specified. Allowed values are 'DRAFT' or 'PUBLISH'.");
                      }
                    • 79
                      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}";
                    • 84
                      return "${JSON}";
                  }
                • 120
                  return "${serviceContext}";
              }
            • 81
              return "${serviceContext}";
          • 75
            var titleMap = JSONWebcontentSetter.setTitleMap(title = "${title}");
            • 85
              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}");
                }
            • 90
              if (isSet(titleMap)) {
              • 91
                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}";
              }
            • 93
              else {
              • 94
                var titleMap = '''{"en_US":"${title}"}''';
              }
            • 97
              return "${titleMap}";
          • 77
            JSONWebcontentAPI._addWebContent( contentXML = "${contentXML}", descriptionMap = "${descriptionMap}", folderId = "${folderId}", groupId = "${groupId}", serviceContext = "${serviceContext}", titleMap = "${titleMap}");
            • 23
              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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                • 17
                  if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                  • 18
                    fail("Please set '${parameter}'");
                  }
                }
            • 25
              var portalURL = JSONCompany.getPortalURL();
              • 36
                var portalURL = PropsUtil.get("portal.url");
              • 38
                return "${portalURL}";
            • 27
              var curl = ''' ${portalURL}/api/jsonws/journal.journalarticle/add-article \ -u [email protected]:test \ -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} ''';
            • 40
              com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
        • 36
          JSONBlog.addEntry( entryContent = "Blogs Entry Content", entryTitle = "Blogs Entry Title", groupName = "Test Site Name");
          • 5
            var portalURL = JSONCompany.getPortalURL();
            • 36
              var portalURL = PropsUtil.get("portal.url");
            • 38
              return "${portalURL}";
          • 7
            if (!(isSet(entryContent))) {
            • 8
              var entryContent = "";
            }
          • 11
            if (!(isSet(entrySubtitle))) {
            • 12
              var entrySubtitle = "";
            }
          • 15
            if (isSet(groupName)) {
            • 16
              var serviceContext = JSONBlogSetter.setServiceContext(groupName = "${groupName}");
              • 4
                var serviceContext = JSONServiceContextUtil.setServiceContext(groupName = "${groupName}");
                • 88
                  var serviceContext = "{}";
                • 90
                  if (isSet(assetCategoryIds)) {
                  • 91
                    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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${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}";
                  }
                • 96
                  if (isSet(assetTagNames)) {
                  • 97
                    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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${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}";
                  }
                • 102
                  if (isSet(addGuestPermissions)) {
                  • 103
                    var serviceContext = JSONServiceContextUtil._addGuestPermissions( addGuestPermissions = "${addGuestPermissions}", JSON = "${serviceContext}");
                    • 51
                      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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                          • 18
                            fail("Please set '${parameter}'");
                          }
                        }
                    • 53
                      if (!(("${addGuestPermissions}" == "true") || ("${addGuestPermissions}" == "false"))) {
                      • 54
                        fail("Invalid addGuestPermissions: '${addGuestPermissions}' specified. Allowed values are 'true' or 'false'.");
                      }
                    • 57
                      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}";
                    • 62
                      return "${JSON}";
                  }
                • 108
                  if (isSet(groupName)) {
                  • 109
                    var serviceContext = JSONServiceContextUtil._addGroupId( groupName = "${groupName}", JSON = "${serviceContext}");
                    • 34
                      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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                          • 18
                            fail("Please set '${parameter}'");
                          }
                        }
                    • 36
                      if (!(isSet(site))) {
                      • 37
                        var site = "true";
                      }
                    • 40
                      var groupId = JSONGroupAPI._getGroupIdByName(groupName = "${groupName}", site = "${site}");
                      • 104
                        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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                          • 17
                            if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                            • 18
                              fail("Please set '${parameter}'");
                            }
                          }
                      • 106
                        var companyId = JSONCompany.getCompanyId();
                        • 4
                          var portalInstanceName = JSONCompany.getPortalInstanceName();
                          • 19
                            var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                          • 20
                            var testPortalInstance = PropsUtil.get("test.portal.instance");
                          • 22
                            if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                            • 23
                              var portalURL = JSONCompany.getPortalURL();
                              • 36
                                var portalURL = PropsUtil.get("portal.url");
                              • 38
                                return "${portalURL}";
                            • 25
                              var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                            • 26
                              var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                            • 28
                              return "${portalInstanceName}";
                            }
                          • 30
                            else {
                            • 31
                              return "localhost";
                            }
                        • 6
                          var portalURL = JSONCompany.getPortalURL();
                          • 36
                            var portalURL = PropsUtil.get("portal.url");
                          • 38
                            return "${portalURL}";
                        • 8
                          var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u [email protected]:test ''';
                        • 13
                          var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                        • 15
                          return "${companyId}";
                      • 108
                        var portalURL = JSONCompany.getPortalURL();
                        • 36
                          var portalURL = PropsUtil.get("portal.url");
                        • 38
                          return "${portalURL}";
                      • 110
                        var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/0/site/${site} \ -u [email protected]:test ''';
                      • 115
                        var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                      • 116
                        var groupId = StringUtil.replace("${groupId}", "["", "");
                      • 117
                        var groupId = StringUtil.replace("${groupId}", ""]", "");
                      • 119
                        if ("${groupId}" == "[]") {
                        • 120
                          fail("FAIL. Cannot find group.");
                        }
                      • 123
                        return "${groupId}";
                    • 42
                      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}";
                    • 47
                      return "${JSON}";
                  }
                • 114
                  if (isSet(workflowAction)) {
                  • 115
                    var serviceContext = JSONServiceContextUtil._addWorkflowAction( JSON = "${serviceContext}", workflowAction = "${workflowAction}");
                    • 67
                      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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                          • 18
                            fail("Please set '${parameter}'");
                          }
                        }
                    • 69
                      if ("${workflowAction}" == "DRAFT") {
                      • 70
                        var workflowActionNumber = "2";
                      }
                    • 72
                      else if ("${workflowAction}" == "PUBLISH") {
                      • 73
                        var workflowActionNumber = "1";
                      }
                    • 75
                      else {
                      • 76
                        fail("Invalid workflowAction: '${workflowAction}' specified. Allowed values are 'DRAFT' or 'PUBLISH'.");
                      }
                    • 79
                      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}";
                    • 84
                      return "${JSON}";
                  }
                • 120
                  return "${serviceContext}";
              • 6
                return "${serviceContext}";
            }
          • 18
            else {
            • 19
              var serviceContext = JSONBlogSetter.setServiceContext(groupName = "Guest");
              • 4
                var serviceContext = JSONServiceContextUtil.setServiceContext(groupName = "${groupName}");
                • 88
                  var serviceContext = "{}";
                • 90
                  if (isSet(assetCategoryIds)) {
                  • 91
                    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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${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}";
                  }
                • 96
                  if (isSet(assetTagNames)) {
                  • 97
                    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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${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}";
                  }
                • 102
                  if (isSet(addGuestPermissions)) {
                  • 103
                    var serviceContext = JSONServiceContextUtil._addGuestPermissions( addGuestPermissions = "${addGuestPermissions}", JSON = "${serviceContext}");
                    • 51
                      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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                          • 18
                            fail("Please set '${parameter}'");
                          }
                        }
                    • 53
                      if (!(("${addGuestPermissions}" == "true") || ("${addGuestPermissions}" == "false"))) {
                      • 54
                        fail("Invalid addGuestPermissions: '${addGuestPermissions}' specified. Allowed values are 'true' or 'false'.");
                      }
                    • 57
                      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}";
                    • 62
                      return "${JSON}";
                  }
                • 108
                  if (isSet(groupName)) {
                  • 109
                    var serviceContext = JSONServiceContextUtil._addGroupId( groupName = "${groupName}", JSON = "${serviceContext}");
                    • 34
                      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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                          • 18
                            fail("Please set '${parameter}'");
                          }
                        }
                    • 36
                      if (!(isSet(site))) {
                      • 37
                        var site = "true";
                      }
                    • 40
                      var groupId = JSONGroupAPI._getGroupIdByName(groupName = "${groupName}", site = "${site}");
                      • 104
                        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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                          • 17
                            if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                            • 18
                              fail("Please set '${parameter}'");
                            }
                          }
                      • 106
                        var companyId = JSONCompany.getCompanyId();
                        • 4
                          var portalInstanceName = JSONCompany.getPortalInstanceName();
                          • 19
                            var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                          • 20
                            var testPortalInstance = PropsUtil.get("test.portal.instance");
                          • 22
                            if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                            • 23
                              var portalURL = JSONCompany.getPortalURL();
                              • 36
                                var portalURL = PropsUtil.get("portal.url");
                              • 38
                                return "${portalURL}";
                            • 25
                              var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                            • 26
                              var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                            • 28
                              return "${portalInstanceName}";
                            }
                          • 30
                            else {
                            • 31
                              return "localhost";
                            }
                        • 6
                          var portalURL = JSONCompany.getPortalURL();
                          • 36
                            var portalURL = PropsUtil.get("portal.url");
                          • 38
                            return "${portalURL}";
                        • 8
                          var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u [email protected]:test ''';
                        • 13
                          var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                        • 15
                          return "${companyId}";
                      • 108
                        var portalURL = JSONCompany.getPortalURL();
                        • 36
                          var portalURL = PropsUtil.get("portal.url");
                        • 38
                          return "${portalURL}";
                      • 110
                        var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/0/site/${site} \ -u [email protected]:test ''';
                      • 115
                        var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                      • 116
                        var groupId = StringUtil.replace("${groupId}", "["", "");
                      • 117
                        var groupId = StringUtil.replace("${groupId}", ""]", "");
                      • 119
                        if ("${groupId}" == "[]") {
                        • 120
                          fail("FAIL. Cannot find group.");
                        }
                      • 123
                        return "${groupId}";
                    • 42
                      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}";
                    • 47
                      return "${JSON}";
                  }
                • 114
                  if (isSet(workflowAction)) {
                  • 115
                    var serviceContext = JSONServiceContextUtil._addWorkflowAction( JSON = "${serviceContext}", workflowAction = "${workflowAction}");
                    • 67
                      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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                          • 18
                            fail("Please set '${parameter}'");
                          }
                        }
                    • 69
                      if ("${workflowAction}" == "DRAFT") {
                      • 70
                        var workflowActionNumber = "2";
                      }
                    • 72
                      else if ("${workflowAction}" == "PUBLISH") {
                      • 73
                        var workflowActionNumber = "1";
                      }
                    • 75
                      else {
                      • 76
                        fail("Invalid workflowAction: '${workflowAction}' specified. Allowed values are 'DRAFT' or 'PUBLISH'.");
                      }
                    • 79
                      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}";
                    • 84
                      return "${JSON}";
                  }
                • 120
                  return "${serviceContext}";
              • 6
                return "${serviceContext}";
            }
          • 22
            var curl = ''' ${portalURL}/api/jsonws/blogs.blogsentry/add-entry \ -u [email protected]:test \ -d title=${entryTitle} \ -d subtitle=${entrySubtitle} \ -d description='' \ -d content=${entryContent} \ -d displayDateMonth=01 \ -d displayDateDay=01 \ -d displayDateYear=2004 \ -d displayDateHour=01 \ -d displayDateMinute=01 \ -d allowPingbacks=true \ -d allowTrackbacks=true \ -d trackbacks= \ -d coverImageCaption='' \ -d -coverImageImageSelector= \ -d -smallImageImageSelector= \ -d serviceContext=${serviceContext} ''';
          • 43
            echo("## Adding a 'Blog' with the following info using JSONWS:");
          • 45
            echo("## * Title: ${entryTitle}");
          • 47
            echo("## * Content: ${entryContent}");
          • 49
            var messageId = JSONCurlUtil.post("${curl}");
        • 41
          JSONDocument.addFileWithUploadedFile( dmDocumentTitle = "Document_1.png", groupName = "Test Site Name", mimeType = "image/png", sourceFileName = "Document_1.png");
          • 44
            Variables.assertDefined(parameterList = "${groupName},${mimeType},${sourceFileName}");
            • 5
              if (contains("${parameterList}","{parameterList}")) {
              • 6
                fail("Please define a parameter list in 'parameterList'");
              }
            • 9
              for (var parameter : list "${parameterList}") {
              • 13
                var isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
              • 17
                if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                • 18
                  fail("Please set '${parameter}'");
                }
              }
          • 46
            var portalURL = JSONCompany.getPortalURL();
            • 36
              var portalURL = PropsUtil.get("portal.url");
            • 38
              return "${portalURL}";
          • 48
            var repositoryId = JSONGroupAPI._getSiteIdByGroupKey(groupName = "${groupName}");
            • 172
              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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                • 17
                  if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                  • 18
                    fail("Please set '${parameter}'");
                  }
                }
            • 174
              var companyId = JSONCompany.getCompanyId();
              • 4
                var portalInstanceName = JSONCompany.getPortalInstanceName();
                • 19
                  var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                • 20
                  var testPortalInstance = PropsUtil.get("test.portal.instance");
                • 22
                  if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                  • 23
                    var portalURL = JSONCompany.getPortalURL();
                    • 36
                      var portalURL = PropsUtil.get("portal.url");
                    • 38
                      return "${portalURL}";
                  • 25
                    var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                  • 26
                    var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                  • 28
                    return "${portalInstanceName}";
                  }
                • 30
                  else {
                  • 31
                    return "localhost";
                  }
              • 6
                var portalURL = JSONCompany.getPortalURL();
                • 36
                  var portalURL = PropsUtil.get("portal.url");
                • 38
                  return "${portalURL}";
              • 8
                var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u [email protected]:test ''';
              • 13
                var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
              • 15
                return "${companyId}";
            • 176
              var portalURL = JSONCompany.getPortalURL();
              • 36
                var portalURL = PropsUtil.get("portal.url");
              • 38
                return "${portalURL}";
            • 178
              var curl = ''' ${portalURL}/api/jsonws/group/get-group \ -u [email protected]:test \ -d companyId=${companyId} \ -d groupKey=${groupName} ''';
            • 185
              var groupId = JSONCurlUtil.post("${curl}", "$.[?(@['groupKey'] == '${groupName}')]['groupId']");
            • 186
              var groupId = StringUtil.replace("${groupId}", "["", "");
            • 187
              var groupId = StringUtil.replace("${groupId}", ""]", "");
            • 189
              if ("${groupId}" == "[]") {
              • 190
                fail("FAIL. Cannot find group.");
              }
            • 193
              return "${groupId}";
          • 50
            if (isSet(folderName)) {
            • 51
              Variables.assertDefined(parameterList = "${folderName}");
              • 5
                if (contains("${parameterList}","{parameterList}")) {
                • 6
                  fail("Please define a parameter list in 'parameterList'");
                }
              • 9
                for (var parameter : list "${parameterList}") {
                • 13
                  var isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                • 17
                  if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                  • 18
                    fail("Please set '${parameter}'");
                  }
                }
            • 53
              var folderId = JSONDocumentAPI._getFolderIdByFolderName( name = "${folderName}", groupName = "${groupName}");
              • 5
                Variables.assertDefined(parameterList = "${groupName},${name}");
                • 5
                  if (contains("${parameterList}","{parameterList}")) {
                  • 6
                    fail("Please define a parameter list in 'parameterList'");
                  }
                • 9
                  for (var parameter : list "${parameterList}") {
                  • 13
                    var isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                  • 17
                    if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                    • 18
                      fail("Please set '${parameter}'");
                    }
                  }
              • 7
                var portalURL = JSONCompany.getPortalURL();
                • 36
                  var portalURL = PropsUtil.get("portal.url");
                • 38
                  return "${portalURL}";
              • 9
                var repositoryId = JSONGroupAPI._getSiteIdByGroupKey(groupName = "${groupName}");
                • 172
                  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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                    • 17
                      if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                      • 18
                        fail("Please set '${parameter}'");
                      }
                    }
                • 174
                  var companyId = JSONCompany.getCompanyId();
                  • 4
                    var portalInstanceName = JSONCompany.getPortalInstanceName();
                    • 19
                      var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                    • 20
                      var testPortalInstance = PropsUtil.get("test.portal.instance");
                    • 22
                      if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                      • 23
                        var portalURL = JSONCompany.getPortalURL();
                        • 36
                          var portalURL = PropsUtil.get("portal.url");
                        • 38
                          return "${portalURL}";
                      • 25
                        var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                      • 26
                        var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                      • 28
                        return "${portalInstanceName}";
                      }
                    • 30
                      else {
                      • 31
                        return "localhost";
                      }
                  • 6
                    var portalURL = JSONCompany.getPortalURL();
                    • 36
                      var portalURL = PropsUtil.get("portal.url");
                    • 38
                      return "${portalURL}";
                  • 8
                    var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u [email protected]:test ''';
                  • 13
                    var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                  • 15
                    return "${companyId}";
                • 176
                  var portalURL = JSONCompany.getPortalURL();
                  • 36
                    var portalURL = PropsUtil.get("portal.url");
                  • 38
                    return "${portalURL}";
                • 178
                  var curl = ''' ${portalURL}/api/jsonws/group/get-group \ -u [email protected]:test \ -d companyId=${companyId} \ -d groupKey=${groupName} ''';
                • 185
                  var groupId = JSONCurlUtil.post("${curl}", "$.[?(@['groupKey'] == '${groupName}')]['groupId']");
                • 186
                  var groupId = StringUtil.replace("${groupId}", "["", "");
                • 187
                  var groupId = StringUtil.replace("${groupId}", ""]", "");
                • 189
                  if ("${groupId}" == "[]") {
                  • 190
                    fail("FAIL. Cannot find group.");
                  }
                • 193
                  return "${groupId}";
              • 11
                if (!(isSet(parentFolderId))) {
                • 12
                  var parentFolderId = "0";
                }
              • 15
                var curl = ''' ${portalURL}/api/jsonws/dlapp/get-folder \ -u [email protected]:test \ -d repositoryId=${repositoryId} \ -d parentFolderId=${parentFolderId} \ -d name=${name} ''';
              • 23
                var folderId = JSONCurlUtil.post("${curl}", "$.[?(@['name'] == '${name}')]['folderId']");
              • 24
                var folderId = StringUtil.replace("${folderId}", "["", "");
              • 25
                var folderId = StringUtil.replace("${folderId}", ""]", "");
              • 27
                if ("${folderId}" == "[]") {
                • 28
                  fail("FAIL. Cannot find folder.");
                }
              • 30
                else {
                • 31
                  return "${folderId}";
                }
            }
          • 57
            else {
            • 58
              var folderId = "0";
            }
          • 61
            var baseDir = PropsUtil.get("test.base.dir.name");
          • 62
            var dependenciesDir = PropsUtil.get("test.dependencies.dir.name");
          • 63
            var filePath = "${baseDir}${dependenciesDir}/${sourceFileName}";
          • 65
            if (isSet(dmDocumentDescription)) {
            • 66
              var description = "${dmDocumentDescription}";
            }
          • 68
            else {
            • 69
              var description = "";
            }
          • 72
            var curl = ''' ${portalURL}/api/jsonws/dlapp/add-file-entry \ -u [email protected]:test \ -F repositoryId=${repositoryId} \ -F folderId=${folderId} \ -F sourceFileName=${sourceFileName} \ -F mimeType=${mimeType} \ -F title=${dmDocumentTitle} \ -F description=${description} \ -F changeLog='' \ -F [email protected]${filePath} ''';
          • 85
            echo("## Adding a 'File' with the following info using JSONWS:");
          • 87
            echo("## * Title: ${dmDocumentTitle}");
          • 89
            echo("## * Description: ${description}");
          • 91
            var messageId = JSONCurlUtil.post("${curl}");
        }
      • 48
        task ("Select the Blogs Entry and Document as Relate Assets in Web Content Article") {
        • 49
          WebContentNavigator.openWebContentAdmin(siteURLKey = "test-site-name");
          • 137
            Navigator.openWithAppendToBaseURL( baseURL = "${baseURL}", urlAppend = "group/${siteURLKey}/~/control_panel/manage?p_p_id=com_liferay_journal_web_portlet_JournalPortlet");
            • 284
              var baseURL = "${baseURL}";
            • 286
              if (contains("${baseURL}", "{baseURL}")) {
              • 287
                var baseURL = PropsUtil.get("portal.url");
              }
            • 290
              Open(locator1 = "${baseURL}/${urlAppend}");
        • 51
          WebContentNavigator.gotoEditCP(webContentTitle = "Web Content Title");
          • 48
            WebContentNavigator._openDescriptiveMenulistCP( webContentTitle = "${webContentTitle}", webContentTitleEscapeCharacter = "${webContentTitleEscapeCharacter}");
            • 4
              if (!(contains("${webContentTitleEscapeCharacter}", "{webContentTitleEscapeCharacter}"))) {
              • 5
                var key_webContentTitle = "${webContentTitleEscapeCharacter}";
              }
            • 7
              else {
              • 8
                var key_webContentTitle = "${webContentTitle}";
              }
            • 11
              LexiconEntry.changeDisplayStyle(displayStyle = "list");
              • 4
                var browserType = PropsUtil.get("browser.type");
              • 6
                if ("${browserType}" == "chrome") {
                • 7
                  MetalComponent.waitForManagementBar();
                  • 16
                    AssertVisible(locator1 = "//nav[contains(@class,'management-bar')]");
                  • 18
                    MetalComponent.waitForMetalComponent(id = '''document.querySelector("nav.management-bar").parentNode.id''');
                    • 22
                      var javaScript = ''' var metalComponent = Liferay.component(${id}); if (metalComponent !== undefined) { if (metalComponent.wasRendered) { return 'ready'; } else { return 'pending'; } } else { return 'pending'; } ''';
                    • 37
                      var metalComponentReady = "";
                    • 39
                      while ("${metalComponentReady}" != "ready" && (maxIterations = "30")) {
                      • 40
                        var metalComponentReady = selenium.getEval("${javaScript}");
                      • 42
                        Pause(locator1 = "1000");
                      }
                }
              • 10
                Click(locator1 = "Icon#CURRENT_DISPLAY_STYLE");
              • 12
                MenuItem.click(menuItem = StringUtil.upperCaseFirstLetter("${displayStyle}"));
                • 4
                  Click( key_menuItem = "${menuItem}", locator1 = "MenuItem#ANY_MENU_ITEM");
            • 13
              AssertTextEquals.assertPartialText( locator1 = "WC#ENTRY_LIST_TITLE", value1 = "${webContentTitle}");
            • 17
              Click.waitForMenuToggleJSClick(locator1 = "WC#ENTRY_LIST_MENULIST_ICON");
          • 52
            MenuItem.click(menuItem = "Edit");
            • 4
              Click( key_menuItem = "${menuItem}", locator1 = "MenuItem#ANY_MENU_ITEM");
          • 54
            AssertElementPresent(locator1 = "Icon#BACK");
        • 53
          RelatedAssets.selectAsset( assetTitle = "Blogs Entry Title", assetType = "Blogs Entry");
          • 47
            Panel.expandPanel(panel = "Related Assets");
            • 4
              Portlet.waitForForm();
              • 557
                AssertElementNotPresent(locator1 = "//fieldset[@disabled]");
            • 6
              var key_panel = "${panel}";
            • 8
              AssertVisible( key_panel = "${panel}", locator1 = "Panel#PANEL");
            • 12
              if ((IsElementPresent(locator1 = "Panel#PANEL_COLLAPSED")) && (IsVisible(locator1 = "Panel#PANEL_COLLAPSED"))) {
              • 13
                AssertClick( locator1 = "Panel#PANEL_COLLAPSED", value1 = "${panel}");
              }
            • 18
              AssertElementPresent(locator1 = "Panel#PANEL_EXPANDED");
          • 49
            RelatedAssets._selectAssetType(assetType = "${assetType}");
            • 4
              var key_assetType = "${assetType}";
            • 6
              AssertClick( locator1 = "AssetRelatedAssets#RELATED_ASSETS_SELECT", value1 = "Select");
            • 10
              var assetTypeLocator = StringUtil.replace("${assetType}", " ", "_");
            • 11
              var assetTypeLocator = StringUtil.upperCase("${assetTypeLocator}");
            • 13
              MenuItem.click(menuItem = "${assetType}");
              • 4
                Click( key_menuItem = "${menuItem}", locator1 = "MenuItem#ANY_MENU_ITEM");
          • 51
            SelectFrame(value1 = "relative=top");
          • 53
            SelectFrame(locator1 = "IFrame#DIALOG");
          • 55
            if (isSet(scopeSite)) {
            • 56
              Click(locator1 = "Dropdown#FILTER_AND_ORDER");
            • 58
              MenuItem.click(menuItem = "${scopeSite}");
              • 4
                Click( key_menuItem = "${menuItem}", locator1 = "MenuItem#ANY_MENU_ITEM");
            }
          • 61
            if (isSet(assetAll)) {
            • 62
              PortletEntry.selectAll();
              • 153
                if (IsNotChecked.isNotCheckedNotVisible(locator1 = "Checkbox#LEXICON_SELECT_ALL_INPUT")) {
                • 154
                  Click(locator1 = "Checkbox#LEXICON_SELECT_ALL_CONTAINER");
                }
              • 156
                else if (IsNotChecked(locator1 = "Checkbox#SELECT_ALL")) {
                • 157
                  Click(locator1 = "Checkbox#SELECT_ALL");
                }
              • 160
                AssertChecked.assertCheckedNotVisible(locator1 = "Checkbox#LEXICON_SELECT_ALL_INPUT");
            }
          • 64
            else {
            • 65
              var key_assetTitle = "${assetTitle}";
            • 67
              Click( key_assetTitle = "${assetTitle}", locator1 = "AssetRelatedAssets#ASSET_TABLE_CHECKBOX");
            }
          • 72
            SelectFrame(value1 = "relative=top");
          • 74
            Button.clickDone();
            • 38
              Button.click(button = "Done");
              • 4
                Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
        • 57
          WaitForElementNotPresent(locator1 = "IFrame#DIALOG");
        • 59
          AssertTextEquals.assertPartialText( key_assetTitle = "Blogs Entry Title", locator1 = "AssetRelatedAssets#RELATED_ASSETS_TABLE_TITLE", value1 = "Blogs Entry Title");
        • 64
          RelatedAssets.selectAsset( assetTitle = "Document_1.png", assetType = "Basic Document");
          • 47
            Panel.expandPanel(panel = "Related Assets");
            • 4
              Portlet.waitForForm();
              • 557
                AssertElementNotPresent(locator1 = "//fieldset[@disabled]");
            • 6
              var key_panel = "${panel}";
            • 8
              AssertVisible( key_panel = "${panel}", locator1 = "Panel#PANEL");
            • 12
              if ((IsElementPresent(locator1 = "Panel#PANEL_COLLAPSED")) && (IsVisible(locator1 = "Panel#PANEL_COLLAPSED"))) {
              • 13
                AssertClick( locator1 = "Panel#PANEL_COLLAPSED", value1 = "${panel}");
              }
            • 18
              AssertElementPresent(locator1 = "Panel#PANEL_EXPANDED");
          • 49
            RelatedAssets._selectAssetType(assetType = "${assetType}");
            • 4
              var key_assetType = "${assetType}";
            • 6
              AssertClick( locator1 = "AssetRelatedAssets#RELATED_ASSETS_SELECT", value1 = "Select");
            • 10
              var assetTypeLocator = StringUtil.replace("${assetType}", " ", "_");
            • 11
              var assetTypeLocator = StringUtil.upperCase("${assetTypeLocator}");
            • 13
              MenuItem.click(menuItem = "${assetType}");
              • 4
                Click( key_menuItem = "${menuItem}", locator1 = "MenuItem#ANY_MENU_ITEM");
          • 51
            SelectFrame(value1 = "relative=top");
          • 53
            SelectFrame(locator1 = "IFrame#DIALOG");
          • 55
            if (isSet(scopeSite)) {
            • 56
              Click(locator1 = "Dropdown#FILTER_AND_ORDER");
            • 58
              MenuItem.click(menuItem = "${scopeSite}");
              • 4
                Click( key_menuItem = "${menuItem}", locator1 = "MenuItem#ANY_MENU_ITEM");
            }
          • 61
            if (isSet(assetAll)) {
            • 62
              PortletEntry.selectAll();
              • 153
                if (IsNotChecked.isNotCheckedNotVisible(locator1 = "Checkbox#LEXICON_SELECT_ALL_INPUT")) {
                • 154
                  Click(locator1 = "Checkbox#LEXICON_SELECT_ALL_CONTAINER");
                }
              • 156
                else if (IsNotChecked(locator1 = "Checkbox#SELECT_ALL")) {
                • 157
                  Click(locator1 = "Checkbox#SELECT_ALL");
                }
              • 160
                AssertChecked.assertCheckedNotVisible(locator1 = "Checkbox#LEXICON_SELECT_ALL_INPUT");
            }
          • 64
            else {
            • 65
              var key_assetTitle = "${assetTitle}";
            • 67
              Click( key_assetTitle = "${assetTitle}", locator1 = "AssetRelatedAssets#ASSET_TABLE_CHECKBOX");
            }
          • 72
            SelectFrame(value1 = "relative=top");
          • 74
            Button.clickDone();
            • 38
              Button.click(button = "Done");
              • 4
                Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
        • 68
          WaitForElementNotPresent(locator1 = "IFrame#DIALOG");
        • 70
          AssertTextEquals.assertPartialText( key_assetTitle = "Blogs Entry Title", locator1 = "AssetRelatedAssets#RELATED_ASSETS_TABLE_TITLE", value1 = "Blogs Entry Title");
        • 75
          AssertTextEquals.assertPartialText( key_assetTitle = "Document_1.png", locator1 = "AssetRelatedAssets#RELATED_ASSETS_TABLE_TITLE", value1 = "Document_1.png");
        • 80
          PortletEntry.publish();
          • 127
            Button.clickPublish();
            • 68
              ScrollWebElementIntoView( key_text = "Publish", locator1 = "Button#ANY");
            • 72
              Button.click(button = "Publish");
              • 4
                Click.mouseDownMouseUp( key_text = "${button}", locator1 = "Button#ANY");
          • 129
            Alert.viewSuccessMessage();
            • 77
              VerifyElementPresent(locator1 = "Message#SUCCESS_DISMISSIBLE");
            • 79
              if (IsElementPresent(locator1 = "Button#CLOSE_MESSAGE")) {
              • 80
                Click(locator1 = "Button#CLOSE_MESSAGE");
              }
        }
      • 83
        task ("Add a widget page and add two Asset Publisher portlets to page") {
        • 84
          JSONLayout.addPublicLayout( groupName = "Test Site Name", layoutName = "Test Page Name");
          • 67
            Variables.assertDefined(parameterList = "${groupName},${layoutName}");
            • 5
              if (contains("${parameterList}","{parameterList}")) {
              • 6
                fail("Please define a parameter list in 'parameterList'");
              }
            • 9
              for (var parameter : list "${parameterList}") {
              • 13
                var isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
              • 17
                if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                • 18
                  fail("Please set '${parameter}'");
                }
              }
          • 69
            var friendlyURL = JSONLayoutSetter.setFriendlyURL(friendlyURL = "${friendlyURL}");
            • 12
              if (!(isSet(friendlyURL))) {
              • 13
                var friendlyURL = "";
              }
            • 16
              return "${friendlyURL}";
          • 71
            var groupId = JSONLayoutSetter.setGroupId(groupKey = "${groupName}", parentGroupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
            • 20
              JSONUtil2._exclusiveOrCheck( A = "${groupName}", B = "${groupKey}", failMessage = "Please only set 'groupName' or 'groupKey' but not both or none.");
              • 113
                if (((isSet(A)) && (isSet(B))) || ((!(isSet(B))) && (!(isSet(A))))) {
                • 114
                  fail("${failMessage}");
                }
            • 25
              if (isSet(groupName)) {
              • 26
                if (!(isSet(site))) {
                • 27
                  var site = "true";
                }
              • 30
                var groupId = JSONGroupAPI._getGroupIdByName(groupName = "${groupName}", site = "${site}");
                • 104
                  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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                    • 17
                      if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                      • 18
                        fail("Please set '${parameter}'");
                      }
                    }
                • 106
                  var companyId = JSONCompany.getCompanyId();
                  • 4
                    var portalInstanceName = JSONCompany.getPortalInstanceName();
                    • 19
                      var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                    • 20
                      var testPortalInstance = PropsUtil.get("test.portal.instance");
                    • 22
                      if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                      • 23
                        var portalURL = JSONCompany.getPortalURL();
                        • 36
                          var portalURL = PropsUtil.get("portal.url");
                        • 38
                          return "${portalURL}";
                      • 25
                        var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                      • 26
                        var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                      • 28
                        return "${portalInstanceName}";
                      }
                    • 30
                      else {
                      • 31
                        return "localhost";
                      }
                  • 6
                    var portalURL = JSONCompany.getPortalURL();
                    • 36
                      var portalURL = PropsUtil.get("portal.url");
                    • 38
                      return "${portalURL}";
                  • 8
                    var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u [email protected]:test ''';
                  • 13
                    var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                  • 15
                    return "${companyId}";
                • 108
                  var portalURL = JSONCompany.getPortalURL();
                  • 36
                    var portalURL = PropsUtil.get("portal.url");
                  • 38
                    return "${portalURL}";
                • 110
                  var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/0/site/${site} \ -u [email protected]:test ''';
                • 115
                  var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                • 116
                  var groupId = StringUtil.replace("${groupId}", "["", "");
                • 117
                  var groupId = StringUtil.replace("${groupId}", ""]", "");
                • 119
                  if ("${groupId}" == "[]") {
                  • 120
                    fail("FAIL. Cannot find group.");
                  }
                • 123
                  return "${groupId}";
              }
            • 32
              else if (isSet(groupKey)) {
              • 33
                var site = JSONLayoutSetter.setSite(site = "${site}");
                • 91
                  if (!(isSet(site))) {
                  • 92
                    var site = "true";
                  }
                • 95
                  return "${site}";
              • 35
                var groupId = JSONGroupAPI._getGroupIdByGroupKey(groupKey = "${groupKey}", site = "${site}", parentGroupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                • 78
                  Variables.assertDefined(parameterList = "${groupKey},${site}");
                  • 5
                    if (contains("${parameterList}","{parameterList}")) {
                    • 6
                      fail("Please define a parameter list in 'parameterList'");
                    }
                  • 9
                    for (var parameter : list "${parameterList}") {
                    • 13
                      var isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                    • 17
                      if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                      • 18
                        fail("Please set '${parameter}'");
                      }
                    }
                • 80
                  var companyId = JSONCompany.getCompanyId();
                  • 4
                    var portalInstanceName = JSONCompany.getPortalInstanceName();
                    • 19
                      var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                    • 20
                      var testPortalInstance = PropsUtil.get("test.portal.instance");
                    • 22
                      if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                      • 23
                        var portalURL = JSONCompany.getPortalURL();
                        • 36
                          var portalURL = PropsUtil.get("portal.url");
                        • 38
                          return "${portalURL}";
                      • 25
                        var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                      • 26
                        var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                      • 28
                        return "${portalInstanceName}";
                      }
                    • 30
                      else {
                      • 31
                        return "localhost";
                      }
                  • 6
                    var portalURL = JSONCompany.getPortalURL();
                    • 36
                      var portalURL = PropsUtil.get("portal.url");
                    • 38
                      return "${portalURL}";
                  • 8
                    var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u [email protected]:test ''';
                  • 13
                    var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                  • 15
                    return "${companyId}";
                • 82
                  var parentGroupId = JSONGroupSetter.setParentGroupId(parentGroupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                  • 54
                    if (isSet(parentGroupName)) {
                    • 55
                      var parentGroupId = JSONGroupAPI._getParentGroupIdByName(groupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                      • 146
                        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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                          • 17
                            if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                            • 18
                              fail("Please set '${parameter}'");
                            }
                          }
                      • 148
                        var companyId = JSONCompany.getCompanyId();
                        • 4
                          var portalInstanceName = JSONCompany.getPortalInstanceName();
                          • 19
                            var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                          • 20
                            var testPortalInstance = PropsUtil.get("test.portal.instance");
                          • 22
                            if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                            • 23
                              var portalURL = JSONCompany.getPortalURL();
                              • 36
                                var portalURL = PropsUtil.get("portal.url");
                              • 38
                                return "${portalURL}";
                            • 25
                              var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                            • 26
                              var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                            • 28
                              return "${portalInstanceName}";
                            }
                          • 30
                            else {
                            • 31
                              return "localhost";
                            }
                        • 6
                          var portalURL = JSONCompany.getPortalURL();
                          • 36
                            var portalURL = PropsUtil.get("portal.url");
                          • 38
                            return "${portalURL}";
                        • 8
                          var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u [email protected]:test ''';
                        • 13
                          var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                        • 15
                          return "${companyId}";
                      • 150
                        var grandParentGroupId = JSONGroupSetter.setGrandParentGroupId(grandParentGroupName = "${grandParentGroupName}");
                        • 4
                          if (isSet(grandParentGroupName)) {
                          • 5
                            if (!(isSet(site))) {
                            • 6
                              var site = "true";
                            }
                          • 9
                            var grandParentGroupId = JSONGroupAPI._getGroupIdByName(groupName = "${grandParentGroupName}", site = "${site}");
                            • 104
                              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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                                • 17
                                  if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                                  • 18
                                    fail("Please set '${parameter}'");
                                  }
                                }
                            • 106
                              var companyId = JSONCompany.getCompanyId();
                              • 4
                                var portalInstanceName = JSONCompany.getPortalInstanceName();
                                • 19
                                  var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                                • 20
                                  var testPortalInstance = PropsUtil.get("test.portal.instance");
                                • 22
                                  if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                                  • 23
                                    var portalURL = JSONCompany.getPortalURL();
                                    • 36
                                      var portalURL = PropsUtil.get("portal.url");
                                    • 38
                                      return "${portalURL}";
                                  • 25
                                    var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                                  • 26
                                    var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                                  • 28
                                    return "${portalInstanceName}";
                                  }
                                • 30
                                  else {
                                  • 31
                                    return "localhost";
                                  }
                              • 6
                                var portalURL = JSONCompany.getPortalURL();
                                • 36
                                  var portalURL = PropsUtil.get("portal.url");
                                • 38
                                  return "${portalURL}";
                              • 8
                                var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u [email protected]:test ''';
                              • 13
                                var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                              • 15
                                return "${companyId}";
                            • 108
                              var portalURL = JSONCompany.getPortalURL();
                              • 36
                                var portalURL = PropsUtil.get("portal.url");
                              • 38
                                return "${portalURL}";
                            • 110
                              var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/0/site/${site} \ -u [email protected]:test ''';
                            • 115
                              var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                            • 116
                              var groupId = StringUtil.replace("${groupId}", "["", "");
                            • 117
                              var groupId = StringUtil.replace("${groupId}", ""]", "");
                            • 119
                              if ("${groupId}" == "[]") {
                              • 120
                                fail("FAIL. Cannot find group.");
                              }
                            • 123
                              return "${groupId}";
                          }
                        • 11
                          else {
                          • 12
                            var grandParentGroupId = "0";
                          }
                        • 15
                          return "${grandParentGroupId}";
                      • 152
                        var portalURL = JSONCompany.getPortalURL();
                        • 36
                          var portalURL = PropsUtil.get("portal.url");
                        • 38
                          return "${portalURL}";
                      • 154
                        var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${grandParentGroupId}/site/true \ -u [email protected]:test ''';
                      • 159
                        var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                      • 160
                        var groupId = StringUtil.replace("${groupId}", "["", "");
                      • 161
                        var groupId = StringUtil.replace("${groupId}", ""]", "");
                      • 163
                        if ("${groupId}" == "[]") {
                        • 164
                          fail("FAIL. Cannot find group.");
                        }
                      • 167
                        return "${groupId}";
                    }
                  • 57
                    else {
                    • 58
                      var parentGroupId = "0";
                    }
                  • 61
                    return "${parentGroupId}";
                • 84
                  var portalURL = JSONCompany.getPortalURL();
                  • 36
                    var portalURL = PropsUtil.get("portal.url");
                  • 38
                    return "${portalURL}";
                • 86
                  var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${parentGroupId}/site/${site} \ -u [email protected]:test ''';
                • 91
                  var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['groupKey'] == '${groupKey}')]['groupId']");
                • 92
                  var groupId = StringUtil.replace("${groupId}", "["", "");
                • 93
                  var groupId = StringUtil.replace("${groupId}", ""]", "");
                • 95
                  if ("${groupId}" == "[]") {
                  • 96
                    fail("FAIL. Cannot find group.");
                  }
                • 99
                  return "${groupId}";
              }
            • 38
              return "${groupId}";
          • 73
            var parentLayoutId = JSONLayoutSetter.setParentLayoutId( groupId = "${groupId}", parentLayoutName = "${parentLayoutName}", privateLayout = "false");
            • 53
              var privateLayout = JSONLayoutSetter.setPrivateLayout(privateLayout = "${privateLayout}");
              • 71
                if (!(isSet(privateLayout))) {
                • 72
                  var privateLayout = "false";
                }
              • 75
                return "${privateLayout}";
            • 55
              if (isSet(parentLayoutName)) {
              • 56
                Variables.assertDefined(parameterList = "${groupId},${parentLayoutName}");
                • 5
                  if (contains("${parameterList}","{parameterList}")) {
                  • 6
                    fail("Please define a parameter list in 'parameterList'");
                  }
                • 9
                  for (var parameter : list "${parameterList}") {
                  • 13
                    var isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                  • 17
                    if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                    • 18
                      fail("Please set '${parameter}'");
                    }
                  }
              • 58
                var parentLayoutId = JSONLayoutAPI._getLayoutIdByName( groupId = "${groupId}", layoutName = "${parentLayoutName}", privateLayout = "${privateLayout}");
                • 70
                  Variables.assertDefined(parameterList = "${groupId},${layoutName},${privateLayout}");
                  • 5
                    if (contains("${parameterList}","{parameterList}")) {
                    • 6
                      fail("Please define a parameter list in 'parameterList'");
                    }
                  • 9
                    for (var parameter : list "${parameterList}") {
                    • 13
                      var isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                    • 17
                      if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                      • 18
                        fail("Please set '${parameter}'");
                      }
                    }
                • 72
                  var portalURL = JSONCompany.getPortalURL();
                  • 36
                    var portalURL = PropsUtil.get("portal.url");
                  • 38
                    return "${portalURL}";
                • 74
                  var curl = ''' ${portalURL}/api/jsonws/layout/get-layouts \ -u [email protected]:test \ -d groupId=${groupId} \ -d privateLayout=${privateLayout} ''';
                • 81
                  var layoutId = JSONCurlUtil.post("${curl}", "$.[?(@['nameCurrentValue'] == '${layoutName}')]['layoutId']");
                • 82
                  var layoutId = StringUtil.replace("${layoutId}", "["", "");
                • 83
                  var layoutId = StringUtil.replace("${layoutId}", ""]", "");
                • 85
                  if ("${layoutId}" == "[]") {
                  • 86
                    fail("FAIL. Cannot find layout.");
                  }
                • 89
                  return "${layoutId}";
              }
            • 63
              else {
              • 64
                var parentLayoutId = "0";
              }
            • 67
              return "${parentLayoutId}";
          • 78
            var serviceContext = JSONLayoutSetter.setServiceContext( assetCategoryIds = "${assetCategoryIds}", assetTagNames = "${assetTagNames}", serviceContext = "${serviceContext}", workflowAction = "${workflowAction}");
            • 79
              if (!(isSet(serviceContext))) {
              • 80
                var serviceContext = JSONServiceContextUtil.setServiceContext( addGuestPermissions = "true", assetCategoryIds = "${assetCategoryIds}", assetTagNames = "${assetTagNames}", workflowAction = "${workflowAction}");
                • 88
                  var serviceContext = "{}";
                • 90
                  if (isSet(assetCategoryIds)) {
                  • 91
                    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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${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}";
                  }
                • 96
                  if (isSet(assetTagNames)) {
                  • 97
                    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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${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}";
                  }
                • 102
                  if (isSet(addGuestPermissions)) {
                  • 103
                    var serviceContext = JSONServiceContextUtil._addGuestPermissions( addGuestPermissions = "${addGuestPermissions}", JSON = "${serviceContext}");
                    • 51
                      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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                          • 18
                            fail("Please set '${parameter}'");
                          }
                        }
                    • 53
                      if (!(("${addGuestPermissions}" == "true") || ("${addGuestPermissions}" == "false"))) {
                      • 54
                        fail("Invalid addGuestPermissions: '${addGuestPermissions}' specified. Allowed values are 'true' or 'false'.");
                      }
                    • 57
                      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}";
                    • 62
                      return "${JSON}";
                  }
                • 108
                  if (isSet(groupName)) {
                  • 109
                    var serviceContext = JSONServiceContextUtil._addGroupId( groupName = "${groupName}", JSON = "${serviceContext}");
                    • 34
                      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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                          • 18
                            fail("Please set '${parameter}'");
                          }
                        }
                    • 36
                      if (!(isSet(site))) {
                      • 37
                        var site = "true";
                      }
                    • 40
                      var groupId = JSONGroupAPI._getGroupIdByName(groupName = "${groupName}", site = "${site}");
                      • 104
                        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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                          • 17
                            if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                            • 18
                              fail("Please set '${parameter}'");
                            }
                          }
                      • 106
                        var companyId = JSONCompany.getCompanyId();
                        • 4
                          var portalInstanceName = JSONCompany.getPortalInstanceName();
                          • 19
                            var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                          • 20
                            var testPortalInstance = PropsUtil.get("test.portal.instance");
                          • 22
                            if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                            • 23
                              var portalURL = JSONCompany.getPortalURL();
                              • 36
                                var portalURL = PropsUtil.get("portal.url");
                              • 38
                                return "${portalURL}";
                            • 25
                              var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                            • 26
                              var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                            • 28
                              return "${portalInstanceName}";
                            }
                          • 30
                            else {
                            • 31
                              return "localhost";
                            }
                        • 6
                          var portalURL = JSONCompany.getPortalURL();
                          • 36
                            var portalURL = PropsUtil.get("portal.url");
                          • 38
                            return "${portalURL}";
                        • 8
                          var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u [email protected]:test ''';
                        • 13
                          var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                        • 15
                          return "${companyId}";
                      • 108
                        var portalURL = JSONCompany.getPortalURL();
                        • 36
                          var portalURL = PropsUtil.get("portal.url");
                        • 38
                          return "${portalURL}";
                      • 110
                        var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/0/site/${site} \ -u [email protected]:test ''';
                      • 115
                        var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                      • 116
                        var groupId = StringUtil.replace("${groupId}", "["", "");
                      • 117
                        var groupId = StringUtil.replace("${groupId}", ""]", "");
                      • 119
                        if ("${groupId}" == "[]") {
                        • 120
                          fail("FAIL. Cannot find group.");
                        }
                      • 123
                        return "${groupId}";
                    • 42
                      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}";
                    • 47
                      return "${JSON}";
                  }
                • 114
                  if (isSet(workflowAction)) {
                  • 115
                    var serviceContext = JSONServiceContextUtil._addWorkflowAction( JSON = "${serviceContext}", workflowAction = "${workflowAction}");
                    • 67
                      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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                        • 17
                          if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                          • 18
                            fail("Please set '${parameter}'");
                          }
                        }
                    • 69
                      if ("${workflowAction}" == "DRAFT") {
                      • 70
                        var workflowActionNumber = "2";
                      }
                    • 72
                      else if ("${workflowAction}" == "PUBLISH") {
                      • 73
                        var workflowActionNumber = "1";
                      }
                    • 75
                      else {
                      • 76
                        fail("Invalid workflowAction: '${workflowAction}' specified. Allowed values are 'DRAFT' or 'PUBLISH'.");
                      }
                    • 79
                      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}";
                    • 84
                      return "${JSON}";
                  }
                • 120
                  return "${serviceContext}";
              }
            • 87
              return "${serviceContext}";
          • 84
            var type = JSONLayoutSetter.setType(type = "${type}");
            • 100
              if (!(isSet(type))) {
              • 101
                var type = "portlet";
              }
            • 104
              return "${type}";
          • 86
            JSONLayoutAPI._addLayout( friendlyURL = "${friendlyURL}", groupId = "${groupId}", layoutName = "${layoutName}", parentLayoutId = "${parentLayoutId}", privateLayout = "false", serviceContext = "${serviceContext}", type = "${type}");
            • 5
              Variables.assertDefined(parameterList = "${friendlyURL},${groupId},${privateLayout},${parentLayoutId},${layoutName},${serviceContext}");
              • 5
                if (contains("${parameterList}","{parameterList}")) {
                • 6
                  fail("Please define a parameter list in 'parameterList'");
                }
              • 9
                for (var parameter : list "${parameterList}") {
                • 13
                  var isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                • 17
                  if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                  • 18
                    fail("Please set '${parameter}'");
                  }
                }
            • 7
              var portalURL = JSONCompany.getPortalURL();
              • 36
                var portalURL = PropsUtil.get("portal.url");
              • 38
                return "${portalURL}";
            • 9
              var curl = ''' ${portalURL}/api/jsonws/layout/add-layout \ -u [email protected]:test \ -d groupId=${groupId} \ -d privateLayout=${privateLayout} \ -d parentLayoutId=${parentLayoutId} \ -d name=${layoutName} \ -d title= \ -d description= \ -d type=${type} \ -d hidden=false \ -d friendlyURL=${friendlyURL} \ -d serviceContext=${serviceContext} ''';
            • 24
              com.liferay.poshi.runner.util.JSONCurlUtil.post("${curl}");
        • 88
          JSONLayout.addWidgetToPublicLayout( column = "1", groupName = "Test Site Name", layoutName = "Test Page Name", widgetName = "Asset Publisher");
          • 153
            Variables.assertDefined(parameterList = "${groupName},${layoutName},${widgetName}");
            • 5
              if (contains("${parameterList}","{parameterList}")) {
              • 6
                fail("Please define a parameter list in 'parameterList'");
              }
            • 9
              for (var parameter : list "${parameterList}") {
              • 13
                var isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
              • 17
                if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                • 18
                  fail("Please set '${parameter}'");
                }
              }
          • 155
            var groupId = JSONLayoutSetter.setGroupId(groupName = "${groupName}");
            • 20
              JSONUtil2._exclusiveOrCheck( A = "${groupName}", B = "${groupKey}", failMessage = "Please only set 'groupName' or 'groupKey' but not both or none.");
              • 113
                if (((isSet(A)) && (isSet(B))) || ((!(isSet(B))) && (!(isSet(A))))) {
                • 114
                  fail("${failMessage}");
                }
            • 25
              if (isSet(groupName)) {
              • 26
                if (!(isSet(site))) {
                • 27
                  var site = "true";
                }
              • 30
                var groupId = JSONGroupAPI._getGroupIdByName(groupName = "${groupName}", site = "${site}");
                • 104
                  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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                    • 17
                      if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                      • 18
                        fail("Please set '${parameter}'");
                      }
                    }
                • 106
                  var companyId = JSONCompany.getCompanyId();
                  • 4
                    var portalInstanceName = JSONCompany.getPortalInstanceName();
                    • 19
                      var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                    • 20
                      var testPortalInstance = PropsUtil.get("test.portal.instance");
                    • 22
                      if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                      • 23
                        var portalURL = JSONCompany.getPortalURL();
                        • 36
                          var portalURL = PropsUtil.get("portal.url");
                        • 38
                          return "${portalURL}";
                      • 25
                        var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                      • 26
                        var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                      • 28
                        return "${portalInstanceName}";
                      }
                    • 30
                      else {
                      • 31
                        return "localhost";
                      }
                  • 6
                    var portalURL = JSONCompany.getPortalURL();
                    • 36
                      var portalURL = PropsUtil.get("portal.url");
                    • 38
                      return "${portalURL}";
                  • 8
                    var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u [email protected]:test ''';
                  • 13
                    var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                  • 15
                    return "${companyId}";
                • 108
                  var portalURL = JSONCompany.getPortalURL();
                  • 36
                    var portalURL = PropsUtil.get("portal.url");
                  • 38
                    return "${portalURL}";
                • 110
                  var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/0/site/${site} \ -u [email protected]:test ''';
                • 115
                  var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                • 116
                  var groupId = StringUtil.replace("${groupId}", "["", "");
                • 117
                  var groupId = StringUtil.replace("${groupId}", ""]", "");
                • 119
                  if ("${groupId}" == "[]") {
                  • 120
                    fail("FAIL. Cannot find group.");
                  }
                • 123
                  return "${groupId}";
              }
            • 32
              else if (isSet(groupKey)) {
              • 33
                var site = JSONLayoutSetter.setSite(site = "${site}");
                • 91
                  if (!(isSet(site))) {
                  • 92
                    var site = "true";
                  }
                • 95
                  return "${site}";
              • 35
                var groupId = JSONGroupAPI._getGroupIdByGroupKey(groupKey = "${groupKey}", site = "${site}", parentGroupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                • 78
                  Variables.assertDefined(parameterList = "${groupKey},${site}");
                  • 5
                    if (contains("${parameterList}","{parameterList}")) {
                    • 6
                      fail("Please define a parameter list in 'parameterList'");
                    }
                  • 9
                    for (var parameter : list "${parameterList}") {
                    • 13
                      var isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                    • 17
                      if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                      • 18
                        fail("Please set '${parameter}'");
                      }
                    }
                • 80
                  var companyId = JSONCompany.getCompanyId();
                  • 4
                    var portalInstanceName = JSONCompany.getPortalInstanceName();
                    • 19
                      var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                    • 20
                      var testPortalInstance = PropsUtil.get("test.portal.instance");
                    • 22
                      if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                      • 23
                        var portalURL = JSONCompany.getPortalURL();
                        • 36
                          var portalURL = PropsUtil.get("portal.url");
                        • 38
                          return "${portalURL}";
                      • 25
                        var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                      • 26
                        var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                      • 28
                        return "${portalInstanceName}";
                      }
                    • 30
                      else {
                      • 31
                        return "localhost";
                      }
                  • 6
                    var portalURL = JSONCompany.getPortalURL();
                    • 36
                      var portalURL = PropsUtil.get("portal.url");
                    • 38
                      return "${portalURL}";
                  • 8
                    var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u [email protected]:test ''';
                  • 13
                    var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                  • 15
                    return "${companyId}";
                • 82
                  var parentGroupId = JSONGroupSetter.setParentGroupId(parentGroupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                  • 54
                    if (isSet(parentGroupName)) {
                    • 55
                      var parentGroupId = JSONGroupAPI._getParentGroupIdByName(groupName = "${parentGroupName}", grandParentGroupName = "${grandParentGroupName}");
                      • 146
                        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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                          • 17
                            if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                            • 18
                              fail("Please set '${parameter}'");
                            }
                          }
                      • 148
                        var companyId = JSONCompany.getCompanyId();
                        • 4
                          var portalInstanceName = JSONCompany.getPortalInstanceName();
                          • 19
                            var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                          • 20
                            var testPortalInstance = PropsUtil.get("test.portal.instance");
                          • 22
                            if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                            • 23
                              var portalURL = JSONCompany.getPortalURL();
                              • 36
                                var portalURL = PropsUtil.get("portal.url");
                              • 38
                                return "${portalURL}";
                            • 25
                              var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                            • 26
                              var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                            • 28
                              return "${portalInstanceName}";
                            }
                          • 30
                            else {
                            • 31
                              return "localhost";
                            }
                        • 6
                          var portalURL = JSONCompany.getPortalURL();
                          • 36
                            var portalURL = PropsUtil.get("portal.url");
                          • 38
                            return "${portalURL}";
                        • 8
                          var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u [email protected]:test ''';
                        • 13
                          var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                        • 15
                          return "${companyId}";
                      • 150
                        var grandParentGroupId = JSONGroupSetter.setGrandParentGroupId(grandParentGroupName = "${grandParentGroupName}");
                        • 4
                          if (isSet(grandParentGroupName)) {
                          • 5
                            if (!(isSet(site))) {
                            • 6
                              var site = "true";
                            }
                          • 9
                            var grandParentGroupId = JSONGroupAPI._getGroupIdByName(groupName = "${grandParentGroupName}", site = "${site}");
                            • 104
                              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 isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                                • 17
                                  if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                                  • 18
                                    fail("Please set '${parameter}'");
                                  }
                                }
                            • 106
                              var companyId = JSONCompany.getCompanyId();
                              • 4
                                var portalInstanceName = JSONCompany.getPortalInstanceName();
                                • 19
                                  var testNameSkipPortalInstance = PropsUtil.get("test.name.skip.portal.instance");
                                • 20
                                  var testPortalInstance = PropsUtil.get("test.portal.instance");
                                • 22
                                  if (("${testPortalInstance}" == "true") && (!(IsTestName(locator1 = "", value1 = "${testNameSkipPortalInstance}")))) {
                                  • 23
                                    var portalURL = JSONCompany.getPortalURL();
                                    • 36
                                      var portalURL = PropsUtil.get("portal.url");
                                    • 38
                                      return "${portalURL}";
                                  • 25
                                    var portalInstanceName = StringUtil.replace("${portalURL}", "http://", "");
                                  • 26
                                    var portalInstanceName = StringUtil.replace("${portalInstanceName}", ":8080", "");
                                  • 28
                                    return "${portalInstanceName}";
                                  }
                                • 30
                                  else {
                                  • 31
                                    return "localhost";
                                  }
                              • 6
                                var portalURL = JSONCompany.getPortalURL();
                                • 36
                                  var portalURL = PropsUtil.get("portal.url");
                                • 38
                                  return "${portalURL}";
                              • 8
                                var curl = ''' ${portalURL}/api/jsonws/company/get-company-by-virtual-host/virtual-host/${portalInstanceName} \ -u [email protected]:test ''';
                              • 13
                                var companyId = JSONCurlUtil.get("${curl}", "$['companyId']");
                              • 15
                                return "${companyId}";
                            • 108
                              var portalURL = JSONCompany.getPortalURL();
                              • 36
                                var portalURL = PropsUtil.get("portal.url");
                              • 38
                                return "${portalURL}";
                            • 110
                              var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/0/site/${site} \ -u [email protected]:test ''';
                            • 115
                              var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                            • 116
                              var groupId = StringUtil.replace("${groupId}", "["", "");
                            • 117
                              var groupId = StringUtil.replace("${groupId}", ""]", "");
                            • 119
                              if ("${groupId}" == "[]") {
                              • 120
                                fail("FAIL. Cannot find group.");
                              }
                            • 123
                              return "${groupId}";
                          }
                        • 11
                          else {
                          • 12
                            var grandParentGroupId = "0";
                          }
                        • 15
                          return "${grandParentGroupId}";
                      • 152
                        var portalURL = JSONCompany.getPortalURL();
                        • 36
                          var portalURL = PropsUtil.get("portal.url");
                        • 38
                          return "${portalURL}";
                      • 154
                        var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${grandParentGroupId}/site/true \ -u [email protected]:test ''';
                      • 159
                        var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['nameCurrentValue'] == '${groupName}')]['groupId']");
                      • 160
                        var groupId = StringUtil.replace("${groupId}", "["", "");
                      • 161
                        var groupId = StringUtil.replace("${groupId}", ""]", "");
                      • 163
                        if ("${groupId}" == "[]") {
                        • 164
                          fail("FAIL. Cannot find group.");
                        }
                      • 167
                        return "${groupId}";
                    }
                  • 57
                    else {
                    • 58
                      var parentGroupId = "0";
                    }
                  • 61
                    return "${parentGroupId}";
                • 84
                  var portalURL = JSONCompany.getPortalURL();
                  • 36
                    var portalURL = PropsUtil.get("portal.url");
                  • 38
                    return "${portalURL}";
                • 86
                  var curl = ''' ${portalURL}/api/jsonws/group/get-groups/company-id/${companyId}/parent-group-id/${parentGroupId}/site/${site} \ -u [email protected]:test ''';
                • 91
                  var groupId = JSONCurlUtil.get("${curl}", "$.[?(@['groupKey'] == '${groupKey}')]['groupId']");
                • 92
                  var groupId = StringUtil.replace("${groupId}", "["", "");
                • 93
                  var groupId = StringUtil.replace("${groupId}", ""]", "");
                • 95
                  if ("${groupId}" == "[]") {
                  • 96
                    fail("FAIL. Cannot find group.");
                  }
                • 99
                  return "${groupId}";
              }
            • 38
              return "${groupId}";
          • 157
            var layoutId = JSONLayoutSetter.setLayoutId( groupId = "${groupId}", layoutName = "${layoutName}", privateLayout = "false");
            • 42
              Variables.assertDefined(parameterList = "${groupId},${layoutName},${privateLayout}");
              • 5
                if (contains("${parameterList}","{parameterList}")) {
                • 6
                  fail("Please define a parameter list in 'parameterList'");
                }
              • 9
                for (var parameter : list "${parameterList}") {
                • 13
                  var isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                • 17
                  if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                  • 18
                    fail("Please set '${parameter}'");
                  }
                }
            • 44
              var layoutId = JSONLayoutAPI._getLayoutIdByName( groupId = "${groupId}", layoutName = "${layoutName}", privateLayout = "${privateLayout}");
              • 70
                Variables.assertDefined(parameterList = "${groupId},${layoutName},${privateLayout}");
                • 5
                  if (contains("${parameterList}","{parameterList}")) {
                  • 6
                    fail("Please define a parameter list in 'parameterList'");
                  }
                • 9
                  for (var parameter : list "${parameterList}") {
                  • 13
                    var isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                  • 17
                    if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                    • 18
                      fail("Please set '${parameter}'");
                    }
                  }
              • 72
                var portalURL = JSONCompany.getPortalURL();
                • 36
                  var portalURL = PropsUtil.get("portal.url");
                • 38
                  return "${portalURL}";
              • 74
                var curl = ''' ${portalURL}/api/jsonws/layout/get-layouts \ -u [email protected]:test \ -d groupId=${groupId} \ -d privateLayout=${privateLayout} ''';
              • 81
                var layoutId = JSONCurlUtil.post("${curl}", "$.[?(@['nameCurrentValue'] == '${layoutName}')]['layoutId']");
              • 82
                var layoutId = StringUtil.replace("${layoutId}", "["", "");
              • 83
                var layoutId = StringUtil.replace("${layoutId}", ""]", "");
              • 85
                if ("${layoutId}" == "[]") {
                • 86
                  fail("FAIL. Cannot find layout.");
                }
              • 89
                return "${layoutId}";
            • 49
              return "${layoutId}";
          • 162
            var typeSettings = JSONLayoutSetter.setTypeSettings( column = "${column}", groupId = "${groupId}", layoutName = "${layoutName}", privateLayout = "false", widgetName = "${widgetName}");
            • 108
              Variables.assertDefined(parameterList = "${groupId},${layoutName},${privateLayout}");
              • 5
                if (contains("${parameterList}","{parameterList}")) {
                • 6
                  fail("Please define a parameter list in 'parameterList'");
                }
              • 9
                for (var parameter : list "${parameterList}") {
                • 13
                  var isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                • 17
                  if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                  • 18
                    fail("Please set '${parameter}'");
                  }
                }
            • 110
              var typeSettings = JSONLayoutAPI._getTypeSettingsByName( groupId = "${groupId}", layoutName = "${layoutName}", privateLayout = "${privateLayout}");
              • 94
                Variables.assertDefined(parameterList = "${groupId},${layoutName},${privateLayout}");
                • 5
                  if (contains("${parameterList}","{parameterList}")) {
                  • 6
                    fail("Please define a parameter list in 'parameterList'");
                  }
                • 9
                  for (var parameter : list "${parameterList}") {
                  • 13
                    var isSet = StringUtil.regexReplaceFirst("${parameter}","\$\{[^\$\{\s]*\}","false");
                  • 17
                    if (("${isSet}" == "false") && ("${parameter}" != "false")) {
                    • 18
                      fail("Please set '${parameter}'");
                    }
                  }
              • 96
                var portalURL = JSONCompany.getPortalURL();
                • 36
                  var portalURL = PropsUtil.get("portal.url");
                • 38
                  return "${portalURL}";
              • 98
                var curl = ''' ${portalURL}/api/jsonws/layout/get-layouts \ -u [email protected]:test \ -d groupId=${groupId} \ -d privateLayout=${privateLayout} ''';
              • 105
                var typeSettings = JSONCurlUtil.post("${curl}", "$.[?(@['nameCurrentValue'] == '${layoutName}')]['typeSettings']");
              • 106
                var typeSettings = StringUtil.replace("${typeSettings}", "["", "");
              • 107
                var typeSettings = StringUtil.replace("${typeSettings}", ""]", "");
              • 109
                if ("${typeSettings}" == "[]") {
                • 110
                  fail("FAIL. Cannot find layout.");
                }
              • 113
                return "${typeSettings}";
            • 115
              if (isSet(layoutTemplate)) {
              • 116
                var typeSettings = JSONLayoutUtil._updateLayoutTemplateId( layoutTemplate = "${layoutTemplate}", typeSettings = "${typeSettings}");
                • 191
                  if (!(isSet(layoutTemplate))) {
                  • 192
                    fail("layoutTemplate not set.");
                  }
                • 195
                  if (!(isSet(typeSettings))) {
                  • 196
                    fail("layoutTemplateId not set.");
                  }
                • 199
                  var layoutTemplateId = JSONLayoutUtil._getLayoutTemplateId(layoutTemplate = "${layoutTemplate}");
                  • <