You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficcontrol.apache.org by GitBox <gi...@apache.org> on 2021/11/15 21:00:59 UTC

[GitHub] [trafficcontrol] dpham692 opened a new pull request #6352: Migrate Delivery Service Request from E2E to integrated

dpham692 opened a new pull request #6352:
URL: https://github.com/apache/trafficcontrol/pull/6352


   <!--
   Thank you for contributing! Please be sure to read our contribution guidelines: https://github.com/apache/trafficcontrol/blob/master/CONTRIBUTING.md
   If this closes or relates to an existing issue, please reference it using one of the following:
   
   Closes: #ISSUE
   Related: #ISSUE
   
   If this PR fixes a security vulnerability, DO NOT submit! Instead, contact
   the Apache Traffic Control Security Team at security@trafficcontrol.apache.org and follow the
   guidelines at https://apache.org/security regarding vulnerability disclosure.
   -->
   
   
   <!-- **^ Add meaningful description above** --><hr>
   
   ## Which Traffic Control components are affected by this PR?
   <!-- Please delete all components from this list that are NOT affected by this PR.
   Feel free to add the name of a tool or script that is affected but not on the list.
   -->
   - Documentation
   - Traffic Portal
   - CDN in a Box
   
   
   ## What is the best way to verify this PR?
   <!-- Please include here ALL the steps necessary to test your PR.
   If your PR has tests (and most should), provide the steps needed to run the tests.
   If not, please provide step-by-step instructions to test the PR manually and explain why your PR does not need tests. -->
   This test does not run on Github Action. Make sure all test are migrate from https://github.com/apache/trafficcontrol/blob/master/traffic_portal/test/e2e_deprecated/deliveryServiceRequests/delivery-service-requests-spec.js to `integration/Data/deliveryservicerequest.ts` file
   1. Run CDN in a Box.
   2. Use docker exec and change the config file in `/opt/traffic_portal/public/traffic_portal_properties.json` to allow Delivery Service Request function.
   3.  Go to `config.json` file and change "specs/*.spec.js" to "specs/DeliveryServiceRequest.spec.js"
   4.  Go to `DeliveryServiceRequest.spec.ts` in specs folder and change all **xit** function to **it** function
   5. Now run the test using command `npm test -- --params.baseUrl https://localhost --capabilities.shardTestFiles true`
   ## If this is a bugfix, which Traffic Control versions contained the bug?
   <!-- Delete this section if the PR is not a bugfix, or if the bug is only in the master branch.
   Examples:
   - 5.1.2
   - 5.1.3 (RC1)
    -->
   
   
   ## PR submission checklist
   - [x] This PR has tests <!-- If not, please delete this text and explain why this PR does not need tests. -->
   - [x] This PR has documentation <!-- If not, please delete this text and explain why this PR does not need documentation. -->
   - [x] This PR has a CHANGELOG.md entry <!-- A fix for a bug from an ATC release, an improvement, or a new feature should have a changelog entry. -->
   - [x] This PR **DOES NOT FIX A SERIOUS SECURITY VULNERABILITY** (see [the Apache Software Foundation's security guidelines](https://apache.org/security) for details)
   
   <!--
   Licensed to the Apache Software Foundation (ASF) under one
   or more contributor license agreements.  See the NOTICE file
   distributed with this work for additional information
   regarding copyright ownership.  The ASF licenses this file
   to you under the Apache License, Version 2.0 (the
   "License"); you may not use this file except in compliance
   with the License.  You may obtain a copy of the License at
   
       http://www.apache.org/licenses/LICENSE-2.0
   
   Unless required by applicable law or agreed to in writing,
   software distributed under the License is distributed on an
   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
   KIND, either express or implied.  See the License for the
   specific language governing permissions and limitations
   under the License.
   -->
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@trafficcontrol.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [trafficcontrol] dpham692 commented on a change in pull request #6352: Migrate Delivery Service Request from E2E to integrated

Posted by GitBox <gi...@apache.org>.
dpham692 commented on a change in pull request #6352:
URL: https://github.com/apache/trafficcontrol/pull/6352#discussion_r750638778



##########
File path: traffic_portal/test/integration/specs/DeliveryServiceRequest.spec.ts
##########
@@ -0,0 +1,85 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+import { browser } from 'protractor'
+import { LoginPage } from '../PageObjects/LoginPage.po'
+import { DeliveryServicesRequestPage } from '../PageObjects/DeliveryServiceRequestPage.po';
+import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
+import { deliveryservicerequest } from '../Data/deliveryservicerequest';
+
+
+const loginPage = new LoginPage();
+const topNavigation = new TopNavigationPage();
+const deliveryServiceRequestPage = new DeliveryServicesRequestPage();
+
+
+
+deliveryservicerequest.tests.forEach(deliveryServiceRequestData => {
+    deliveryServiceRequestData.logins.forEach(login => {
+        describe(`Traffic Portal - Delivery Service Request - ${login.description}`, () => {
+            afterEach(async function () {
+                await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+            });
+            afterAll(async function () {
+                expect(await topNavigation.Logout()).toBeTruthy();
+            })
+            xit('can login', async function(){
+                browser.get(browser.params.baseUrl);
+                await loginPage.Login(login);
+                expect(await loginPage.CheckUserName(login)).toBeTruthy();
+                await deliveryServiceRequestPage.OpenServicesMenu();
+            })
+            deliveryServiceRequestData.create.forEach(create => {
+                xit(create.description, async () => {
+                    await deliveryServiceRequestPage.OpenDeliveryServicePage();
+                    expect(await deliveryServiceRequestPage.CreateDeliveryServiceRequest(create)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(create);
+                    expect(await deliveryServiceRequestPage.FullFillDeliveryServiceRequest(create)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(create);
+                    expect(await deliveryServiceRequestPage.CompleteDeliveryServiceRequest(create)).toBe(true);
+
+                });
+            });
+            deliveryServiceRequestData.remove.forEach(remove =>{
+                xit(remove.description, async () =>{
+                    await deliveryServiceRequestPage.OpenDeliveryServicePage();
+                    expect(await deliveryServiceRequestPage.CreateDeliveryServiceRequest(remove)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(remove);
+                    expect(await deliveryServiceRequestPage.DeleteDeliveryServiceRequest(remove)).toBe(true);
+                })
+            })
+            deliveryServiceRequestData.update.forEach(update=>{
+                xit(update.description, async () =>{
+                    await deliveryServiceRequestPage.OpenDeliveryServicePage();
+                    expect(await deliveryServiceRequestPage.CreateDeliveryServiceRequest(update)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(update);
+                    expect(await deliveryServiceRequestPage.UpdateDeliveryServiceRequest(update)).toBe(true);
+                    expect(await deliveryServiceRequestPage.FullFillDeliveryServiceRequest(update)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(update);
+                    expect(await deliveryServiceRequestPage.CompleteDeliveryServiceRequest(update)).toBe(true);
+                })
+            })
+        });
+    });
+});

Review comment:
       Because the DSR is unable to be turn on and off in Github Actions. So right now, test is created just for migrate from E2E to integration and user have options to run it or not like E2E.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@trafficcontrol.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [trafficcontrol] ocket8888 merged pull request #6352: Migrate Delivery Service Request from E2E to integrated

Posted by GitBox <gi...@apache.org>.
ocket8888 merged pull request #6352:
URL: https://github.com/apache/trafficcontrol/pull/6352


   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@trafficcontrol.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [trafficcontrol] ocket8888 commented on a change in pull request #6352: Migrate Delivery Service Request from E2E to integrated

Posted by GitBox <gi...@apache.org>.
ocket8888 commented on a change in pull request #6352:
URL: https://github.com/apache/trafficcontrol/pull/6352#discussion_r750721772



##########
File path: traffic_portal/test/integration/specs/DeliveryServiceRequest.spec.ts
##########
@@ -0,0 +1,85 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+import { browser } from 'protractor'
+import { LoginPage } from '../PageObjects/LoginPage.po'
+import { DeliveryServicesRequestPage } from '../PageObjects/DeliveryServiceRequestPage.po';
+import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
+import { deliveryservicerequest } from '../Data/deliveryservicerequest';
+
+
+const loginPage = new LoginPage();
+const topNavigation = new TopNavigationPage();
+const deliveryServiceRequestPage = new DeliveryServicesRequestPage();
+
+
+
+deliveryservicerequest.tests.forEach(deliveryServiceRequestData => {
+    deliveryServiceRequestData.logins.forEach(login => {
+        describe(`Traffic Portal - Delivery Service Request - ${login.description}`, () => {
+            afterEach(async function () {
+                await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+            });
+            afterAll(async function () {
+                expect(await topNavigation.Logout()).toBeTruthy();
+            })
+            xit('can login', async function(){
+                browser.get(browser.params.baseUrl);
+                await loginPage.Login(login);
+                expect(await loginPage.CheckUserName(login)).toBeTruthy();
+                await deliveryServiceRequestPage.OpenServicesMenu();
+            })
+            deliveryServiceRequestData.create.forEach(create => {
+                xit(create.description, async () => {
+                    await deliveryServiceRequestPage.OpenDeliveryServicePage();
+                    expect(await deliveryServiceRequestPage.CreateDeliveryServiceRequest(create)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(create);
+                    expect(await deliveryServiceRequestPage.FullFillDeliveryServiceRequest(create)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(create);
+                    expect(await deliveryServiceRequestPage.CompleteDeliveryServiceRequest(create)).toBe(true);
+
+                });
+            });
+            deliveryServiceRequestData.remove.forEach(remove =>{
+                xit(remove.description, async () =>{
+                    await deliveryServiceRequestPage.OpenDeliveryServicePage();
+                    expect(await deliveryServiceRequestPage.CreateDeliveryServiceRequest(remove)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(remove);
+                    expect(await deliveryServiceRequestPage.DeleteDeliveryServiceRequest(remove)).toBe(true);
+                })
+            })
+            deliveryServiceRequestData.update.forEach(update=>{
+                xit(update.description, async () =>{
+                    await deliveryServiceRequestPage.OpenDeliveryServicePage();
+                    expect(await deliveryServiceRequestPage.CreateDeliveryServiceRequest(update)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(update);
+                    expect(await deliveryServiceRequestPage.UpdateDeliveryServiceRequest(update)).toBe(true);
+                    expect(await deliveryServiceRequestPage.FullFillDeliveryServiceRequest(update)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(update);
+                    expect(await deliveryServiceRequestPage.CompleteDeliveryServiceRequest(update)).toBe(true);
+                })
+            })
+        });
+    });
+});

Review comment:
       Hm. That means that the GHA passing on this PR doesn't actually run these tests, huh? I'll try to get 'em running locally, but ultimately we need to figure out how to get that running so we don't break things. That's the only way tests are actually useful (because I guarantee nobody is running these tests prior to opening a PR for Traffic Portal)

##########
File path: traffic_portal/test/integration/specs/DeliveryServiceRequest.spec.ts
##########
@@ -0,0 +1,85 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+import { browser } from 'protractor'
+import { LoginPage } from '../PageObjects/LoginPage.po'
+import { DeliveryServicesRequestPage } from '../PageObjects/DeliveryServiceRequestPage.po';
+import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
+import { deliveryservicerequest } from '../Data/deliveryservicerequest';
+
+
+const loginPage = new LoginPage();
+const topNavigation = new TopNavigationPage();
+const deliveryServiceRequestPage = new DeliveryServicesRequestPage();
+
+
+
+deliveryservicerequest.tests.forEach(deliveryServiceRequestData => {
+    deliveryServiceRequestData.logins.forEach(login => {
+        describe(`Traffic Portal - Delivery Service Request - ${login.description}`, () => {
+            afterEach(async function () {
+                await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+            });
+            afterAll(async function () {
+                expect(await topNavigation.Logout()).toBeTruthy();
+            })
+            xit('can login', async function(){
+                browser.get(browser.params.baseUrl);
+                await loginPage.Login(login);
+                expect(await loginPage.CheckUserName(login)).toBeTruthy();
+                await deliveryServiceRequestPage.OpenServicesMenu();
+            })
+            deliveryServiceRequestData.create.forEach(create => {
+                xit(create.description, async () => {
+                    await deliveryServiceRequestPage.OpenDeliveryServicePage();
+                    expect(await deliveryServiceRequestPage.CreateDeliveryServiceRequest(create)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(create);
+                    expect(await deliveryServiceRequestPage.FullFillDeliveryServiceRequest(create)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(create);
+                    expect(await deliveryServiceRequestPage.CompleteDeliveryServiceRequest(create)).toBe(true);
+
+                });
+            });
+            deliveryServiceRequestData.remove.forEach(remove =>{
+                xit(remove.description, async () =>{
+                    await deliveryServiceRequestPage.OpenDeliveryServicePage();
+                    expect(await deliveryServiceRequestPage.CreateDeliveryServiceRequest(remove)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(remove);
+                    expect(await deliveryServiceRequestPage.DeleteDeliveryServiceRequest(remove)).toBe(true);
+                })
+            })
+            deliveryServiceRequestData.update.forEach(update=>{
+                xit(update.description, async () =>{
+                    await deliveryServiceRequestPage.OpenDeliveryServicePage();
+                    expect(await deliveryServiceRequestPage.CreateDeliveryServiceRequest(update)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(update);
+                    expect(await deliveryServiceRequestPage.UpdateDeliveryServiceRequest(update)).toBe(true);
+                    expect(await deliveryServiceRequestPage.FullFillDeliveryServiceRequest(update)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(update);
+                    expect(await deliveryServiceRequestPage.CompleteDeliveryServiceRequest(update)).toBe(true);
+                })
+            })
+        });
+    });
+});

Review comment:
       Hm. That means that the GHA passing on this PR doesn't actually run these tests, huh? I'll try to get 'em running locally, but ultimately we need to figure out how to get that running in the GHA so we don't break things. That's the only way tests are actually useful (because I guarantee nobody is running these tests prior to opening a PR for Traffic Portal)




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@trafficcontrol.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [trafficcontrol] ocket8888 commented on a change in pull request #6352: Migrate Delivery Service Request from E2E to integrated

Posted by GitBox <gi...@apache.org>.
ocket8888 commented on a change in pull request #6352:
URL: https://github.com/apache/trafficcontrol/pull/6352#discussion_r749842684



##########
File path: traffic_portal/test/integration/PageObjects/DeliveryServiceRequestPage.po.ts
##########
@@ -0,0 +1,149 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import {  browser, by, element} from 'protractor';
+import { BasePage } from './BasePage.po';
+import { SideNavigationPage } from '../PageObjects/SideNavigationPage.po';
+import { randomize } from '../config';
+
+
+interface CreateDeliveryServiceRequest{
+  description: string;
+  XmlId: string;
+  DisplayName: string;
+  Active: string;
+  ContentRoutingType: string;
+  Tenant: string;
+  CDN: string;
+  RawText: string;
+  validationMessage:string;
+}
+interface SearchDeliveryServiceRequest{
+  XmlId: string;
+}
+interface FullfillDeliveryServiceRequest{
+  XmlId: string;
+  FullfillMessage: string;
+}
+interface CompleteDeliveryServiceRequest{
+  XmlId: string;
+  CompleteMessage: string;
+}
+interface DeleteDeliveryServiceRequest{
+  XmlId: string;
+  DeleteMessage: string;
+}
+interface UpdateDeliveryServiceRequest{
+  XmlId: string;
+  UpdateMessage: string;
+}
+
+export class DeliveryServicesRequestPage extends BasePage {
+  private btnFullfillRequest = element(by.buttonText("Fulfill Request"))
+  private btnCompleteRequest = element(by.buttonText("Complete Request"))
+  private btnDeleteRequest = element(by.buttonText("Delete Request"))
+  private btnUpdateRequest = element(by.buttonText("Update Request"))
+  private btnYes = element(by.buttonText("Yes"))
+  private btnMore = element(by.name("moreBtn"))
+  private btnCreateDS = element(by.linkText("Create Delivery Service"));
+  private formDropDown = element(by.name("selectFormDropdown"))
+  private txtXmlId = element(by.id("xmlId"));
+  private txtDisplayName = element(by.id("displayName"));
+  private txtActive = element(by.id("active"));
+  private txtContentRoutingType = element(by.id("type"));
+  private txtTenant = element(by.id("tenantId"));
+  private txtCDN = element(by.id("cdn"));
+  private txtRawRemapText = element(by.id("remapText"));
+  private txtRequestStatus = element(by.name("requestStatus"))
+  private txtComment = element(by.name("comment"))
+  private txtQuickSearch = element(by.id("quickSearch"))
+  private txtConfirmInput = element(by.name("confirmWithNameInput"))
+  private randomize = randomize;
+  public async OpenDeliveryServiceRequestPage(){
+    const snp = new SideNavigationPage();
+    await snp.NavigateToDeliveryServicesRequestsPage();
+  }
+  public async OpenServicesMenu(){
+    const snp = new SideNavigationPage();
+    await snp.ClickServicesMenu();
+  }
+  public async OpenDeliveryServicePage(){
+    const snp = new SideNavigationPage();
+    await snp.NavigateToDeliveryServicesPage();
+  }
+  public async CreateDeliveryServiceRequest(deliveryservicerequest: CreateDeliveryServiceRequest): Promise<boolean>{
+    const basePage = new BasePage();
+    const outPutMessage = deliveryservicerequest.validationMessage.replace(deliveryservicerequest.XmlId,deliveryservicerequest.XmlId+this.randomize)
+    await this.btnMore.click();
+    await this.btnCreateDS.click();
+    await this.formDropDown.sendKeys("ANY_MAP");
+    await basePage.ClickSubmit();
+    await this.txtXmlId.sendKeys(deliveryservicerequest.XmlId + this.randomize);
+    await this.txtDisplayName.sendKeys(deliveryservicerequest.DisplayName + this.randomize);
+    await this.txtActive.sendKeys(deliveryservicerequest.Active);
+    await this.txtContentRoutingType.sendKeys(deliveryservicerequest.ContentRoutingType);
+    await this.txtTenant.sendKeys(deliveryservicerequest.Tenant);
+    await this.txtCDN.sendKeys(deliveryservicerequest.CDN);
+    await this.txtRawRemapText.sendKeys(deliveryservicerequest.RawText);
+    await basePage.ClickCreate();
+    await this.txtRequestStatus.sendKeys("Submit Request for Review and Deployment");
+    await this.txtComment.sendKeys("test");
+    await basePage.ClickSubmit();
+    return await basePage.GetOutputMessage().then(value => outPutMessage === value);
+  }
+  public async SearchDeliveryServiceRequest(deliveryservicerequest: SearchDeliveryServiceRequest){
+    const name = deliveryservicerequest.XmlId+this.randomize;
+    await this.txtQuickSearch.clear();
+    await this.txtQuickSearch.sendKeys(name)
+    await browser.actions().click(element(by.cssContainingText("span", name))).perform();
+  }
+  public async FullFillDeliveryServiceRequest(deliveryservicerequest: FullfillDeliveryServiceRequest): Promise<boolean>{
+    const basePage = new BasePage();
+    const outPutMessage = deliveryservicerequest.FullfillMessage.replace(deliveryservicerequest.XmlId,deliveryservicerequest.XmlId+this.randomize)
+    await this.btnFullfillRequest.click();
+    await this.btnYes.click();
+    return await basePage.GetOutputMessage().then(value => outPutMessage === value);

Review comment:
       Same as above RE: `await` in a `return`

##########
File path: traffic_portal/test/integration/PageObjects/DeliveryServiceRequestPage.po.ts
##########
@@ -0,0 +1,149 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import {  browser, by, element} from 'protractor';
+import { BasePage } from './BasePage.po';
+import { SideNavigationPage } from '../PageObjects/SideNavigationPage.po';
+import { randomize } from '../config';
+
+
+interface CreateDeliveryServiceRequest{
+  description: string;
+  XmlId: string;
+  DisplayName: string;
+  Active: string;
+  ContentRoutingType: string;
+  Tenant: string;
+  CDN: string;
+  RawText: string;
+  validationMessage:string;
+}
+interface SearchDeliveryServiceRequest{
+  XmlId: string;
+}
+interface FullfillDeliveryServiceRequest{
+  XmlId: string;
+  FullfillMessage: string;
+}
+interface CompleteDeliveryServiceRequest{
+  XmlId: string;
+  CompleteMessage: string;
+}
+interface DeleteDeliveryServiceRequest{
+  XmlId: string;
+  DeleteMessage: string;
+}
+interface UpdateDeliveryServiceRequest{
+  XmlId: string;
+  UpdateMessage: string;
+}
+
+export class DeliveryServicesRequestPage extends BasePage {
+  private btnFullfillRequest = element(by.buttonText("Fulfill Request"))
+  private btnCompleteRequest = element(by.buttonText("Complete Request"))
+  private btnDeleteRequest = element(by.buttonText("Delete Request"))
+  private btnUpdateRequest = element(by.buttonText("Update Request"))
+  private btnYes = element(by.buttonText("Yes"))
+  private btnMore = element(by.name("moreBtn"))
+  private btnCreateDS = element(by.linkText("Create Delivery Service"));
+  private formDropDown = element(by.name("selectFormDropdown"))
+  private txtXmlId = element(by.id("xmlId"));
+  private txtDisplayName = element(by.id("displayName"));
+  private txtActive = element(by.id("active"));
+  private txtContentRoutingType = element(by.id("type"));
+  private txtTenant = element(by.id("tenantId"));
+  private txtCDN = element(by.id("cdn"));
+  private txtRawRemapText = element(by.id("remapText"));
+  private txtRequestStatus = element(by.name("requestStatus"))
+  private txtComment = element(by.name("comment"))
+  private txtQuickSearch = element(by.id("quickSearch"))
+  private txtConfirmInput = element(by.name("confirmWithNameInput"))
+  private randomize = randomize;
+  public async OpenDeliveryServiceRequestPage(){
+    const snp = new SideNavigationPage();
+    await snp.NavigateToDeliveryServicesRequestsPage();
+  }
+  public async OpenServicesMenu(){
+    const snp = new SideNavigationPage();
+    await snp.ClickServicesMenu();
+  }
+  public async OpenDeliveryServicePage(){
+    const snp = new SideNavigationPage();
+    await snp.NavigateToDeliveryServicesPage();
+  }
+  public async CreateDeliveryServiceRequest(deliveryservicerequest: CreateDeliveryServiceRequest): Promise<boolean>{
+    const basePage = new BasePage();
+    const outPutMessage = deliveryservicerequest.validationMessage.replace(deliveryservicerequest.XmlId,deliveryservicerequest.XmlId+this.randomize)
+    await this.btnMore.click();
+    await this.btnCreateDS.click();
+    await this.formDropDown.sendKeys("ANY_MAP");
+    await basePage.ClickSubmit();
+    await this.txtXmlId.sendKeys(deliveryservicerequest.XmlId + this.randomize);
+    await this.txtDisplayName.sendKeys(deliveryservicerequest.DisplayName + this.randomize);
+    await this.txtActive.sendKeys(deliveryservicerequest.Active);
+    await this.txtContentRoutingType.sendKeys(deliveryservicerequest.ContentRoutingType);
+    await this.txtTenant.sendKeys(deliveryservicerequest.Tenant);
+    await this.txtCDN.sendKeys(deliveryservicerequest.CDN);
+    await this.txtRawRemapText.sendKeys(deliveryservicerequest.RawText);

Review comment:
       nit but the order in which these are done isn't important, which means it can more efficiently be written using actual asynchronous calls, rather than awaiting them all sequentially, like:
   ```typescript
   await Promise.all([
   	this.txtXmlId.sendKeys(deliveryservicerequest.XmlId + this.randomize),
   	this.txtDisplayName.sendKeys(deliveryservicerequest.DisplayName + this.randomize),
   	this.txtActive.sendKeys(deliveryservicerequest.Active),
   	this.txtContentRoutingType.sendKeys(deliveryservicerequest.ContentRoutingType),
   	this.txtTenant.sendKeys(deliveryservicerequest.Tenant),
   	this.txtCDN.sendKeys(deliveryservicerequest.CDN),
   	this.txtRawRemapText.sendKeys(deliveryservicerequest.RawText)
   )];
   ```

##########
File path: traffic_portal/test/integration/PageObjects/DeliveryServiceRequestPage.po.ts
##########
@@ -0,0 +1,149 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import {  browser, by, element} from 'protractor';
+import { BasePage } from './BasePage.po';
+import { SideNavigationPage } from '../PageObjects/SideNavigationPage.po';
+import { randomize } from '../config';
+
+
+interface CreateDeliveryServiceRequest{
+  description: string;
+  XmlId: string;
+  DisplayName: string;
+  Active: string;
+  ContentRoutingType: string;
+  Tenant: string;
+  CDN: string;
+  RawText: string;
+  validationMessage:string;
+}
+interface SearchDeliveryServiceRequest{
+  XmlId: string;
+}
+interface FullfillDeliveryServiceRequest{
+  XmlId: string;
+  FullfillMessage: string;
+}
+interface CompleteDeliveryServiceRequest{
+  XmlId: string;
+  CompleteMessage: string;
+}
+interface DeleteDeliveryServiceRequest{
+  XmlId: string;
+  DeleteMessage: string;
+}
+interface UpdateDeliveryServiceRequest{
+  XmlId: string;
+  UpdateMessage: string;
+}
+
+export class DeliveryServicesRequestPage extends BasePage {
+  private btnFullfillRequest = element(by.buttonText("Fulfill Request"))
+  private btnCompleteRequest = element(by.buttonText("Complete Request"))
+  private btnDeleteRequest = element(by.buttonText("Delete Request"))
+  private btnUpdateRequest = element(by.buttonText("Update Request"))
+  private btnYes = element(by.buttonText("Yes"))
+  private btnMore = element(by.name("moreBtn"))
+  private btnCreateDS = element(by.linkText("Create Delivery Service"));
+  private formDropDown = element(by.name("selectFormDropdown"))
+  private txtXmlId = element(by.id("xmlId"));
+  private txtDisplayName = element(by.id("displayName"));
+  private txtActive = element(by.id("active"));
+  private txtContentRoutingType = element(by.id("type"));
+  private txtTenant = element(by.id("tenantId"));
+  private txtCDN = element(by.id("cdn"));
+  private txtRawRemapText = element(by.id("remapText"));
+  private txtRequestStatus = element(by.name("requestStatus"))
+  private txtComment = element(by.name("comment"))
+  private txtQuickSearch = element(by.id("quickSearch"))
+  private txtConfirmInput = element(by.name("confirmWithNameInput"))
+  private randomize = randomize;
+  public async OpenDeliveryServiceRequestPage(){
+    const snp = new SideNavigationPage();
+    await snp.NavigateToDeliveryServicesRequestsPage();
+  }
+  public async OpenServicesMenu(){
+    const snp = new SideNavigationPage();
+    await snp.ClickServicesMenu();
+  }
+  public async OpenDeliveryServicePage(){
+    const snp = new SideNavigationPage();
+    await snp.NavigateToDeliveryServicesPage();
+  }
+  public async CreateDeliveryServiceRequest(deliveryservicerequest: CreateDeliveryServiceRequest): Promise<boolean>{
+    const basePage = new BasePage();
+    const outPutMessage = deliveryservicerequest.validationMessage.replace(deliveryservicerequest.XmlId,deliveryservicerequest.XmlId+this.randomize)
+    await this.btnMore.click();
+    await this.btnCreateDS.click();
+    await this.formDropDown.sendKeys("ANY_MAP");
+    await basePage.ClickSubmit();
+    await this.txtXmlId.sendKeys(deliveryservicerequest.XmlId + this.randomize);
+    await this.txtDisplayName.sendKeys(deliveryservicerequest.DisplayName + this.randomize);
+    await this.txtActive.sendKeys(deliveryservicerequest.Active);
+    await this.txtContentRoutingType.sendKeys(deliveryservicerequest.ContentRoutingType);
+    await this.txtTenant.sendKeys(deliveryservicerequest.Tenant);
+    await this.txtCDN.sendKeys(deliveryservicerequest.CDN);
+    await this.txtRawRemapText.sendKeys(deliveryservicerequest.RawText);
+    await basePage.ClickCreate();
+    await this.txtRequestStatus.sendKeys("Submit Request for Review and Deployment");
+    await this.txtComment.sendKeys("test");
+    await basePage.ClickSubmit();
+    return await basePage.GetOutputMessage().then(value => outPutMessage === value);
+  }
+  public async SearchDeliveryServiceRequest(deliveryservicerequest: SearchDeliveryServiceRequest){
+    const name = deliveryservicerequest.XmlId+this.randomize;
+    await this.txtQuickSearch.clear();
+    await this.txtQuickSearch.sendKeys(name)
+    await browser.actions().click(element(by.cssContainingText("span", name))).perform();
+  }
+  public async FullFillDeliveryServiceRequest(deliveryservicerequest: FullfillDeliveryServiceRequest): Promise<boolean>{
+    const basePage = new BasePage();
+    const outPutMessage = deliveryservicerequest.FullfillMessage.replace(deliveryservicerequest.XmlId,deliveryservicerequest.XmlId+this.randomize)
+    await this.btnFullfillRequest.click();
+    await this.btnYes.click();
+    return await basePage.GetOutputMessage().then(value => outPutMessage === value);
+  }
+  public async CompleteDeliveryServiceRequest(deliveryservicerequest: CompleteDeliveryServiceRequest): Promise<boolean>{
+    const basePage = new BasePage();
+    await this.btnCompleteRequest.click();
+    await this.btnYes.click();
+    return await basePage.GetOutputMessage().then(value => deliveryservicerequest.CompleteMessage === value);

Review comment:
       Same as above RE: `await` in a `return`

##########
File path: traffic_portal/test/integration/PageObjects/DeliveryServiceRequestPage.po.ts
##########
@@ -0,0 +1,149 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import {  browser, by, element} from 'protractor';
+import { BasePage } from './BasePage.po';
+import { SideNavigationPage } from '../PageObjects/SideNavigationPage.po';
+import { randomize } from '../config';
+
+
+interface CreateDeliveryServiceRequest{
+  description: string;
+  XmlId: string;
+  DisplayName: string;
+  Active: string;
+  ContentRoutingType: string;
+  Tenant: string;
+  CDN: string;
+  RawText: string;
+  validationMessage:string;
+}
+interface SearchDeliveryServiceRequest{
+  XmlId: string;
+}
+interface FullfillDeliveryServiceRequest{
+  XmlId: string;
+  FullfillMessage: string;
+}
+interface CompleteDeliveryServiceRequest{
+  XmlId: string;
+  CompleteMessage: string;
+}
+interface DeleteDeliveryServiceRequest{
+  XmlId: string;
+  DeleteMessage: string;
+}
+interface UpdateDeliveryServiceRequest{
+  XmlId: string;
+  UpdateMessage: string;
+}
+
+export class DeliveryServicesRequestPage extends BasePage {
+  private btnFullfillRequest = element(by.buttonText("Fulfill Request"))
+  private btnCompleteRequest = element(by.buttonText("Complete Request"))
+  private btnDeleteRequest = element(by.buttonText("Delete Request"))
+  private btnUpdateRequest = element(by.buttonText("Update Request"))
+  private btnYes = element(by.buttonText("Yes"))
+  private btnMore = element(by.name("moreBtn"))
+  private btnCreateDS = element(by.linkText("Create Delivery Service"));
+  private formDropDown = element(by.name("selectFormDropdown"))
+  private txtXmlId = element(by.id("xmlId"));
+  private txtDisplayName = element(by.id("displayName"));
+  private txtActive = element(by.id("active"));
+  private txtContentRoutingType = element(by.id("type"));
+  private txtTenant = element(by.id("tenantId"));
+  private txtCDN = element(by.id("cdn"));
+  private txtRawRemapText = element(by.id("remapText"));
+  private txtRequestStatus = element(by.name("requestStatus"))
+  private txtComment = element(by.name("comment"))
+  private txtQuickSearch = element(by.id("quickSearch"))
+  private txtConfirmInput = element(by.name("confirmWithNameInput"))
+  private randomize = randomize;
+  public async OpenDeliveryServiceRequestPage(){
+    const snp = new SideNavigationPage();
+    await snp.NavigateToDeliveryServicesRequestsPage();
+  }
+  public async OpenServicesMenu(){
+    const snp = new SideNavigationPage();
+    await snp.ClickServicesMenu();
+  }
+  public async OpenDeliveryServicePage(){
+    const snp = new SideNavigationPage();
+    await snp.NavigateToDeliveryServicesPage();
+  }
+  public async CreateDeliveryServiceRequest(deliveryservicerequest: CreateDeliveryServiceRequest): Promise<boolean>{
+    const basePage = new BasePage();
+    const outPutMessage = deliveryservicerequest.validationMessage.replace(deliveryservicerequest.XmlId,deliveryservicerequest.XmlId+this.randomize)
+    await this.btnMore.click();
+    await this.btnCreateDS.click();
+    await this.formDropDown.sendKeys("ANY_MAP");
+    await basePage.ClickSubmit();
+    await this.txtXmlId.sendKeys(deliveryservicerequest.XmlId + this.randomize);
+    await this.txtDisplayName.sendKeys(deliveryservicerequest.DisplayName + this.randomize);
+    await this.txtActive.sendKeys(deliveryservicerequest.Active);
+    await this.txtContentRoutingType.sendKeys(deliveryservicerequest.ContentRoutingType);
+    await this.txtTenant.sendKeys(deliveryservicerequest.Tenant);
+    await this.txtCDN.sendKeys(deliveryservicerequest.CDN);
+    await this.txtRawRemapText.sendKeys(deliveryservicerequest.RawText);
+    await basePage.ClickCreate();
+    await this.txtRequestStatus.sendKeys("Submit Request for Review and Deployment");
+    await this.txtComment.sendKeys("test");
+    await basePage.ClickSubmit();
+    return await basePage.GetOutputMessage().then(value => outPutMessage === value);
+  }
+  public async SearchDeliveryServiceRequest(deliveryservicerequest: SearchDeliveryServiceRequest){
+    const name = deliveryservicerequest.XmlId+this.randomize;
+    await this.txtQuickSearch.clear();
+    await this.txtQuickSearch.sendKeys(name)
+    await browser.actions().click(element(by.cssContainingText("span", name))).perform();
+  }
+  public async FullFillDeliveryServiceRequest(deliveryservicerequest: FullfillDeliveryServiceRequest): Promise<boolean>{
+    const basePage = new BasePage();
+    const outPutMessage = deliveryservicerequest.FullfillMessage.replace(deliveryservicerequest.XmlId,deliveryservicerequest.XmlId+this.randomize)
+    await this.btnFullfillRequest.click();
+    await this.btnYes.click();
+    return await basePage.GetOutputMessage().then(value => outPutMessage === value);
+  }
+  public async CompleteDeliveryServiceRequest(deliveryservicerequest: CompleteDeliveryServiceRequest): Promise<boolean>{
+    const basePage = new BasePage();
+    await this.btnCompleteRequest.click();
+    await this.btnYes.click();
+    return await basePage.GetOutputMessage().then(value => deliveryservicerequest.CompleteMessage === value);
+
+  }
+  public async DeleteDeliveryServiceRequest(deliveryservicerequest: DeleteDeliveryServiceRequest): Promise<boolean>{
+    const basePage = new BasePage();
+    await this.btnDeleteRequest.click();
+    await this.txtConfirmInput.sendKeys(deliveryservicerequest.XmlId+this.randomize+" request");
+    await basePage.ClickDeletePermanently();
+    return await basePage.GetOutputMessage().then(value=>deliveryservicerequest.DeleteMessage === value);
+  }
+  public async UpdateDeliveryServiceRequest(deliveryservicerequest: UpdateDeliveryServiceRequest): Promise<boolean>{
+    const basePage = new BasePage();
+    const outPutMessage = deliveryservicerequest.UpdateMessage.replace(deliveryservicerequest.XmlId,deliveryservicerequest.XmlId+this.randomize)
+    await this.txtRawRemapText.clear();
+    await this.txtRawRemapText.sendKeys("change");
+    await this.btnUpdateRequest.click();
+    await this.txtRequestStatus.sendKeys("Submit for Review / Deployment")
+    await this.txtComment.sendKeys("test");
+    await basePage.ClickSubmit();
+    return await basePage.GetOutputMessage().then(value => outPutMessage === value);

Review comment:
       Same as above RE: `await` in a `return`

##########
File path: traffic_portal/test/integration/specs/DeliveryServiceRequest.spec.ts
##########
@@ -0,0 +1,85 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+import { browser } from 'protractor'
+import { LoginPage } from '../PageObjects/LoginPage.po'
+import { DeliveryServicesRequestPage } from '../PageObjects/DeliveryServiceRequestPage.po';
+import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
+import { deliveryservicerequest } from '../Data/deliveryservicerequest';
+
+
+const loginPage = new LoginPage();
+const topNavigation = new TopNavigationPage();
+const deliveryServiceRequestPage = new DeliveryServicesRequestPage();
+
+
+
+deliveryservicerequest.tests.forEach(deliveryServiceRequestData => {
+    deliveryServiceRequestData.logins.forEach(login => {
+        describe(`Traffic Portal - Delivery Service Request - ${login.description}`, () => {
+            afterEach(async function () {
+                await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+            });
+            afterAll(async function () {
+                expect(await topNavigation.Logout()).toBeTruthy();
+            })
+            xit('can login', async function(){
+                browser.get(browser.params.baseUrl);
+                await loginPage.Login(login);
+                expect(await loginPage.CheckUserName(login)).toBeTruthy();
+                await deliveryServiceRequestPage.OpenServicesMenu();
+            })
+            deliveryServiceRequestData.create.forEach(create => {
+                xit(create.description, async () => {
+                    await deliveryServiceRequestPage.OpenDeliveryServicePage();
+                    expect(await deliveryServiceRequestPage.CreateDeliveryServiceRequest(create)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(create);
+                    expect(await deliveryServiceRequestPage.FullFillDeliveryServiceRequest(create)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(create);
+                    expect(await deliveryServiceRequestPage.CompleteDeliveryServiceRequest(create)).toBe(true);
+
+                });
+            });
+            deliveryServiceRequestData.remove.forEach(remove =>{
+                xit(remove.description, async () =>{
+                    await deliveryServiceRequestPage.OpenDeliveryServicePage();
+                    expect(await deliveryServiceRequestPage.CreateDeliveryServiceRequest(remove)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(remove);
+                    expect(await deliveryServiceRequestPage.DeleteDeliveryServiceRequest(remove)).toBe(true);
+                })
+            })
+            deliveryServiceRequestData.update.forEach(update=>{
+                xit(update.description, async () =>{
+                    await deliveryServiceRequestPage.OpenDeliveryServicePage();
+                    expect(await deliveryServiceRequestPage.CreateDeliveryServiceRequest(update)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(update);
+                    expect(await deliveryServiceRequestPage.UpdateDeliveryServiceRequest(update)).toBe(true);
+                    expect(await deliveryServiceRequestPage.FullFillDeliveryServiceRequest(update)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(update);
+                    expect(await deliveryServiceRequestPage.CompleteDeliveryServiceRequest(update)).toBe(true);
+                })
+            })
+        });
+    });
+});

Review comment:
       None of these `xit` blocks will ever be run. That's meant to aid in debugging - why are we adding tests that never run when the testing suite is run? In any case, since every single `it` has the `x` prefix in this describe, it may be better to use `xdescribe` to ignore the whole thing in one fell swoop.

##########
File path: traffic_portal/test/integration/PageObjects/DeliveryServiceRequestPage.po.ts
##########
@@ -0,0 +1,149 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import {  browser, by, element} from 'protractor';
+import { BasePage } from './BasePage.po';
+import { SideNavigationPage } from '../PageObjects/SideNavigationPage.po';
+import { randomize } from '../config';
+
+
+interface CreateDeliveryServiceRequest{
+  description: string;
+  XmlId: string;
+  DisplayName: string;
+  Active: string;
+  ContentRoutingType: string;
+  Tenant: string;
+  CDN: string;
+  RawText: string;
+  validationMessage:string;
+}
+interface SearchDeliveryServiceRequest{
+  XmlId: string;
+}
+interface FullfillDeliveryServiceRequest{
+  XmlId: string;
+  FullfillMessage: string;
+}
+interface CompleteDeliveryServiceRequest{
+  XmlId: string;
+  CompleteMessage: string;
+}
+interface DeleteDeliveryServiceRequest{
+  XmlId: string;
+  DeleteMessage: string;
+}
+interface UpdateDeliveryServiceRequest{
+  XmlId: string;
+  UpdateMessage: string;
+}
+
+export class DeliveryServicesRequestPage extends BasePage {
+  private btnFullfillRequest = element(by.buttonText("Fulfill Request"))
+  private btnCompleteRequest = element(by.buttonText("Complete Request"))
+  private btnDeleteRequest = element(by.buttonText("Delete Request"))
+  private btnUpdateRequest = element(by.buttonText("Update Request"))
+  private btnYes = element(by.buttonText("Yes"))
+  private btnMore = element(by.name("moreBtn"))
+  private btnCreateDS = element(by.linkText("Create Delivery Service"));
+  private formDropDown = element(by.name("selectFormDropdown"))
+  private txtXmlId = element(by.id("xmlId"));
+  private txtDisplayName = element(by.id("displayName"));
+  private txtActive = element(by.id("active"));
+  private txtContentRoutingType = element(by.id("type"));
+  private txtTenant = element(by.id("tenantId"));
+  private txtCDN = element(by.id("cdn"));
+  private txtRawRemapText = element(by.id("remapText"));
+  private txtRequestStatus = element(by.name("requestStatus"))
+  private txtComment = element(by.name("comment"))
+  private txtQuickSearch = element(by.id("quickSearch"))
+  private txtConfirmInput = element(by.name("confirmWithNameInput"))
+  private randomize = randomize;
+  public async OpenDeliveryServiceRequestPage(){
+    const snp = new SideNavigationPage();
+    await snp.NavigateToDeliveryServicesRequestsPage();
+  }
+  public async OpenServicesMenu(){
+    const snp = new SideNavigationPage();
+    await snp.ClickServicesMenu();
+  }
+  public async OpenDeliveryServicePage(){
+    const snp = new SideNavigationPage();
+    await snp.NavigateToDeliveryServicesPage();
+  }
+  public async CreateDeliveryServiceRequest(deliveryservicerequest: CreateDeliveryServiceRequest): Promise<boolean>{
+    const basePage = new BasePage();
+    const outPutMessage = deliveryservicerequest.validationMessage.replace(deliveryservicerequest.XmlId,deliveryservicerequest.XmlId+this.randomize)
+    await this.btnMore.click();
+    await this.btnCreateDS.click();
+    await this.formDropDown.sendKeys("ANY_MAP");
+    await basePage.ClickSubmit();
+    await this.txtXmlId.sendKeys(deliveryservicerequest.XmlId + this.randomize);
+    await this.txtDisplayName.sendKeys(deliveryservicerequest.DisplayName + this.randomize);
+    await this.txtActive.sendKeys(deliveryservicerequest.Active);
+    await this.txtContentRoutingType.sendKeys(deliveryservicerequest.ContentRoutingType);
+    await this.txtTenant.sendKeys(deliveryservicerequest.Tenant);
+    await this.txtCDN.sendKeys(deliveryservicerequest.CDN);
+    await this.txtRawRemapText.sendKeys(deliveryservicerequest.RawText);
+    await basePage.ClickCreate();
+    await this.txtRequestStatus.sendKeys("Submit Request for Review and Deployment");
+    await this.txtComment.sendKeys("test");
+    await basePage.ClickSubmit();
+    return await basePage.GetOutputMessage().then(value => outPutMessage === value);

Review comment:
       `await` is unnecessary in a `return` statement of an `async` function.

##########
File path: traffic_portal/test/integration/PageObjects/DeliveryServiceRequestPage.po.ts
##########
@@ -0,0 +1,149 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import {  browser, by, element} from 'protractor';
+import { BasePage } from './BasePage.po';
+import { SideNavigationPage } from '../PageObjects/SideNavigationPage.po';
+import { randomize } from '../config';
+
+
+interface CreateDeliveryServiceRequest{
+  description: string;
+  XmlId: string;
+  DisplayName: string;
+  Active: string;
+  ContentRoutingType: string;
+  Tenant: string;
+  CDN: string;
+  RawText: string;
+  validationMessage:string;
+}
+interface SearchDeliveryServiceRequest{
+  XmlId: string;
+}
+interface FullfillDeliveryServiceRequest{
+  XmlId: string;
+  FullfillMessage: string;
+}
+interface CompleteDeliveryServiceRequest{
+  XmlId: string;
+  CompleteMessage: string;
+}
+interface DeleteDeliveryServiceRequest{
+  XmlId: string;
+  DeleteMessage: string;
+}
+interface UpdateDeliveryServiceRequest{
+  XmlId: string;
+  UpdateMessage: string;
+}
+
+export class DeliveryServicesRequestPage extends BasePage {
+  private btnFullfillRequest = element(by.buttonText("Fulfill Request"))
+  private btnCompleteRequest = element(by.buttonText("Complete Request"))
+  private btnDeleteRequest = element(by.buttonText("Delete Request"))
+  private btnUpdateRequest = element(by.buttonText("Update Request"))
+  private btnYes = element(by.buttonText("Yes"))
+  private btnMore = element(by.name("moreBtn"))
+  private btnCreateDS = element(by.linkText("Create Delivery Service"));
+  private formDropDown = element(by.name("selectFormDropdown"))
+  private txtXmlId = element(by.id("xmlId"));
+  private txtDisplayName = element(by.id("displayName"));
+  private txtActive = element(by.id("active"));
+  private txtContentRoutingType = element(by.id("type"));
+  private txtTenant = element(by.id("tenantId"));
+  private txtCDN = element(by.id("cdn"));
+  private txtRawRemapText = element(by.id("remapText"));
+  private txtRequestStatus = element(by.name("requestStatus"))
+  private txtComment = element(by.name("comment"))
+  private txtQuickSearch = element(by.id("quickSearch"))
+  private txtConfirmInput = element(by.name("confirmWithNameInput"))
+  private randomize = randomize;
+  public async OpenDeliveryServiceRequestPage(){
+    const snp = new SideNavigationPage();
+    await snp.NavigateToDeliveryServicesRequestsPage();
+  }
+  public async OpenServicesMenu(){
+    const snp = new SideNavigationPage();
+    await snp.ClickServicesMenu();
+  }
+  public async OpenDeliveryServicePage(){
+    const snp = new SideNavigationPage();
+    await snp.NavigateToDeliveryServicesPage();
+  }
+  public async CreateDeliveryServiceRequest(deliveryservicerequest: CreateDeliveryServiceRequest): Promise<boolean>{
+    const basePage = new BasePage();
+    const outPutMessage = deliveryservicerequest.validationMessage.replace(deliveryservicerequest.XmlId,deliveryservicerequest.XmlId+this.randomize)
+    await this.btnMore.click();
+    await this.btnCreateDS.click();
+    await this.formDropDown.sendKeys("ANY_MAP");
+    await basePage.ClickSubmit();
+    await this.txtXmlId.sendKeys(deliveryservicerequest.XmlId + this.randomize);
+    await this.txtDisplayName.sendKeys(deliveryservicerequest.DisplayName + this.randomize);
+    await this.txtActive.sendKeys(deliveryservicerequest.Active);
+    await this.txtContentRoutingType.sendKeys(deliveryservicerequest.ContentRoutingType);
+    await this.txtTenant.sendKeys(deliveryservicerequest.Tenant);
+    await this.txtCDN.sendKeys(deliveryservicerequest.CDN);
+    await this.txtRawRemapText.sendKeys(deliveryservicerequest.RawText);
+    await basePage.ClickCreate();
+    await this.txtRequestStatus.sendKeys("Submit Request for Review and Deployment");
+    await this.txtComment.sendKeys("test");
+    await basePage.ClickSubmit();
+    return await basePage.GetOutputMessage().then(value => outPutMessage === value);
+  }
+  public async SearchDeliveryServiceRequest(deliveryservicerequest: SearchDeliveryServiceRequest){
+    const name = deliveryservicerequest.XmlId+this.randomize;
+    await this.txtQuickSearch.clear();
+    await this.txtQuickSearch.sendKeys(name)
+    await browser.actions().click(element(by.cssContainingText("span", name))).perform();
+  }
+  public async FullFillDeliveryServiceRequest(deliveryservicerequest: FullfillDeliveryServiceRequest): Promise<boolean>{
+    const basePage = new BasePage();
+    const outPutMessage = deliveryservicerequest.FullfillMessage.replace(deliveryservicerequest.XmlId,deliveryservicerequest.XmlId+this.randomize)
+    await this.btnFullfillRequest.click();
+    await this.btnYes.click();
+    return await basePage.GetOutputMessage().then(value => outPutMessage === value);
+  }
+  public async CompleteDeliveryServiceRequest(deliveryservicerequest: CompleteDeliveryServiceRequest): Promise<boolean>{
+    const basePage = new BasePage();
+    await this.btnCompleteRequest.click();
+    await this.btnYes.click();
+    return await basePage.GetOutputMessage().then(value => deliveryservicerequest.CompleteMessage === value);
+
+  }
+  public async DeleteDeliveryServiceRequest(deliveryservicerequest: DeleteDeliveryServiceRequest): Promise<boolean>{
+    const basePage = new BasePage();
+    await this.btnDeleteRequest.click();
+    await this.txtConfirmInput.sendKeys(deliveryservicerequest.XmlId+this.randomize+" request");
+    await basePage.ClickDeletePermanently();
+    return await basePage.GetOutputMessage().then(value=>deliveryservicerequest.DeleteMessage === value);

Review comment:
       Same as above RE: `await` in a `return`

##########
File path: traffic_portal/test/integration/PageObjects/DeliveryServiceRequestPage.po.ts
##########
@@ -0,0 +1,149 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import {  browser, by, element} from 'protractor';
+import { BasePage } from './BasePage.po';
+import { SideNavigationPage } from '../PageObjects/SideNavigationPage.po';
+import { randomize } from '../config';
+
+
+interface CreateDeliveryServiceRequest{
+  description: string;
+  XmlId: string;
+  DisplayName: string;
+  Active: string;
+  ContentRoutingType: string;
+  Tenant: string;
+  CDN: string;
+  RawText: string;
+  validationMessage:string;
+}
+interface SearchDeliveryServiceRequest{
+  XmlId: string;
+}
+interface FullfillDeliveryServiceRequest{
+  XmlId: string;
+  FullfillMessage: string;
+}
+interface CompleteDeliveryServiceRequest{
+  XmlId: string;
+  CompleteMessage: string;
+}
+interface DeleteDeliveryServiceRequest{
+  XmlId: string;
+  DeleteMessage: string;
+}
+interface UpdateDeliveryServiceRequest{
+  XmlId: string;
+  UpdateMessage: string;
+}

Review comment:
       These interfaces are only used as arguments to functions, where their properties are accessed individually and directly. They also don't group a lot of properties. Surely it would be much simpler to just use one or two function parameters that pass the necessary information?




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@trafficcontrol.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [trafficcontrol] dpham692 commented on a change in pull request #6352: Migrate Delivery Service Request from E2E to integrated

Posted by GitBox <gi...@apache.org>.
dpham692 commented on a change in pull request #6352:
URL: https://github.com/apache/trafficcontrol/pull/6352#discussion_r750642197



##########
File path: traffic_portal/test/integration/PageObjects/DeliveryServiceRequestPage.po.ts
##########
@@ -0,0 +1,149 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import {  browser, by, element} from 'protractor';
+import { BasePage } from './BasePage.po';
+import { SideNavigationPage } from '../PageObjects/SideNavigationPage.po';
+import { randomize } from '../config';
+
+
+interface CreateDeliveryServiceRequest{
+  description: string;
+  XmlId: string;
+  DisplayName: string;
+  Active: string;
+  ContentRoutingType: string;
+  Tenant: string;
+  CDN: string;
+  RawText: string;
+  validationMessage:string;
+}
+interface SearchDeliveryServiceRequest{
+  XmlId: string;
+}
+interface FullfillDeliveryServiceRequest{
+  XmlId: string;
+  FullfillMessage: string;
+}
+interface CompleteDeliveryServiceRequest{
+  XmlId: string;
+  CompleteMessage: string;
+}
+interface DeleteDeliveryServiceRequest{
+  XmlId: string;
+  DeleteMessage: string;
+}
+interface UpdateDeliveryServiceRequest{
+  XmlId: string;
+  UpdateMessage: string;
+}
+
+export class DeliveryServicesRequestPage extends BasePage {
+  private btnFullfillRequest = element(by.buttonText("Fulfill Request"))
+  private btnCompleteRequest = element(by.buttonText("Complete Request"))
+  private btnDeleteRequest = element(by.buttonText("Delete Request"))
+  private btnUpdateRequest = element(by.buttonText("Update Request"))
+  private btnYes = element(by.buttonText("Yes"))
+  private btnMore = element(by.name("moreBtn"))
+  private btnCreateDS = element(by.linkText("Create Delivery Service"));
+  private formDropDown = element(by.name("selectFormDropdown"))
+  private txtXmlId = element(by.id("xmlId"));
+  private txtDisplayName = element(by.id("displayName"));
+  private txtActive = element(by.id("active"));
+  private txtContentRoutingType = element(by.id("type"));
+  private txtTenant = element(by.id("tenantId"));
+  private txtCDN = element(by.id("cdn"));
+  private txtRawRemapText = element(by.id("remapText"));
+  private txtRequestStatus = element(by.name("requestStatus"))
+  private txtComment = element(by.name("comment"))
+  private txtQuickSearch = element(by.id("quickSearch"))
+  private txtConfirmInput = element(by.name("confirmWithNameInput"))
+  private randomize = randomize;
+  public async OpenDeliveryServiceRequestPage(){
+    const snp = new SideNavigationPage();
+    await snp.NavigateToDeliveryServicesRequestsPage();
+  }
+  public async OpenServicesMenu(){
+    const snp = new SideNavigationPage();
+    await snp.ClickServicesMenu();
+  }
+  public async OpenDeliveryServicePage(){
+    const snp = new SideNavigationPage();
+    await snp.NavigateToDeliveryServicesPage();
+  }
+  public async CreateDeliveryServiceRequest(deliveryservicerequest: CreateDeliveryServiceRequest): Promise<boolean>{
+    const basePage = new BasePage();
+    const outPutMessage = deliveryservicerequest.validationMessage.replace(deliveryservicerequest.XmlId,deliveryservicerequest.XmlId+this.randomize)
+    await this.btnMore.click();
+    await this.btnCreateDS.click();
+    await this.formDropDown.sendKeys("ANY_MAP");
+    await basePage.ClickSubmit();
+    await this.txtXmlId.sendKeys(deliveryservicerequest.XmlId + this.randomize);
+    await this.txtDisplayName.sendKeys(deliveryservicerequest.DisplayName + this.randomize);
+    await this.txtActive.sendKeys(deliveryservicerequest.Active);
+    await this.txtContentRoutingType.sendKeys(deliveryservicerequest.ContentRoutingType);
+    await this.txtTenant.sendKeys(deliveryservicerequest.Tenant);
+    await this.txtCDN.sendKeys(deliveryservicerequest.CDN);
+    await this.txtRawRemapText.sendKeys(deliveryservicerequest.RawText);

Review comment:
       Fixed.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@trafficcontrol.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [trafficcontrol] dpham692 commented on pull request #6352: Migrate Delivery Service Request from E2E to integrated

Posted by GitBox <gi...@apache.org>.
dpham692 commented on pull request #6352:
URL: https://github.com/apache/trafficcontrol/pull/6352#issuecomment-974468760


   @ocket8888 The test failed because that is the Delivery Service test written for Github Action without the DSR turn on. You probably run all the test.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@trafficcontrol.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [trafficcontrol] dpham692 commented on a change in pull request #6352: Migrate Delivery Service Request from E2E to integrated

Posted by GitBox <gi...@apache.org>.
dpham692 commented on a change in pull request #6352:
URL: https://github.com/apache/trafficcontrol/pull/6352#discussion_r750638924



##########
File path: traffic_portal/test/integration/PageObjects/DeliveryServiceRequestPage.po.ts
##########
@@ -0,0 +1,149 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import {  browser, by, element} from 'protractor';
+import { BasePage } from './BasePage.po';
+import { SideNavigationPage } from '../PageObjects/SideNavigationPage.po';
+import { randomize } from '../config';
+
+
+interface CreateDeliveryServiceRequest{
+  description: string;
+  XmlId: string;
+  DisplayName: string;
+  Active: string;
+  ContentRoutingType: string;
+  Tenant: string;
+  CDN: string;
+  RawText: string;
+  validationMessage:string;
+}
+interface SearchDeliveryServiceRequest{
+  XmlId: string;
+}
+interface FullfillDeliveryServiceRequest{
+  XmlId: string;
+  FullfillMessage: string;
+}
+interface CompleteDeliveryServiceRequest{
+  XmlId: string;
+  CompleteMessage: string;
+}
+interface DeleteDeliveryServiceRequest{
+  XmlId: string;
+  DeleteMessage: string;
+}
+interface UpdateDeliveryServiceRequest{
+  XmlId: string;
+  UpdateMessage: string;
+}
+
+export class DeliveryServicesRequestPage extends BasePage {
+  private btnFullfillRequest = element(by.buttonText("Fulfill Request"))
+  private btnCompleteRequest = element(by.buttonText("Complete Request"))
+  private btnDeleteRequest = element(by.buttonText("Delete Request"))
+  private btnUpdateRequest = element(by.buttonText("Update Request"))
+  private btnYes = element(by.buttonText("Yes"))
+  private btnMore = element(by.name("moreBtn"))
+  private btnCreateDS = element(by.linkText("Create Delivery Service"));
+  private formDropDown = element(by.name("selectFormDropdown"))
+  private txtXmlId = element(by.id("xmlId"));
+  private txtDisplayName = element(by.id("displayName"));
+  private txtActive = element(by.id("active"));
+  private txtContentRoutingType = element(by.id("type"));
+  private txtTenant = element(by.id("tenantId"));
+  private txtCDN = element(by.id("cdn"));
+  private txtRawRemapText = element(by.id("remapText"));
+  private txtRequestStatus = element(by.name("requestStatus"))
+  private txtComment = element(by.name("comment"))
+  private txtQuickSearch = element(by.id("quickSearch"))
+  private txtConfirmInput = element(by.name("confirmWithNameInput"))
+  private randomize = randomize;
+  public async OpenDeliveryServiceRequestPage(){
+    const snp = new SideNavigationPage();
+    await snp.NavigateToDeliveryServicesRequestsPage();
+  }
+  public async OpenServicesMenu(){
+    const snp = new SideNavigationPage();
+    await snp.ClickServicesMenu();
+  }
+  public async OpenDeliveryServicePage(){
+    const snp = new SideNavigationPage();
+    await snp.NavigateToDeliveryServicesPage();
+  }
+  public async CreateDeliveryServiceRequest(deliveryservicerequest: CreateDeliveryServiceRequest): Promise<boolean>{
+    const basePage = new BasePage();
+    const outPutMessage = deliveryservicerequest.validationMessage.replace(deliveryservicerequest.XmlId,deliveryservicerequest.XmlId+this.randomize)
+    await this.btnMore.click();
+    await this.btnCreateDS.click();
+    await this.formDropDown.sendKeys("ANY_MAP");
+    await basePage.ClickSubmit();
+    await this.txtXmlId.sendKeys(deliveryservicerequest.XmlId + this.randomize);
+    await this.txtDisplayName.sendKeys(deliveryservicerequest.DisplayName + this.randomize);
+    await this.txtActive.sendKeys(deliveryservicerequest.Active);
+    await this.txtContentRoutingType.sendKeys(deliveryservicerequest.ContentRoutingType);
+    await this.txtTenant.sendKeys(deliveryservicerequest.Tenant);
+    await this.txtCDN.sendKeys(deliveryservicerequest.CDN);
+    await this.txtRawRemapText.sendKeys(deliveryservicerequest.RawText);
+    await basePage.ClickCreate();
+    await this.txtRequestStatus.sendKeys("Submit Request for Review and Deployment");
+    await this.txtComment.sendKeys("test");
+    await basePage.ClickSubmit();
+    return await basePage.GetOutputMessage().then(value => outPutMessage === value);

Review comment:
       Fixed.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@trafficcontrol.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [trafficcontrol] ocket8888 commented on pull request #6352: Migrate Delivery Service Request from E2E to integrated

Posted by GitBox <gi...@apache.org>.
ocket8888 commented on pull request #6352:
URL: https://github.com/apache/trafficcontrol/pull/6352#issuecomment-974462397


   When running these tests as described in the "Verify this PR" section, I get 21 failures 
   
   <details><summary>Testing Logs</summary>
   
   ```
   [chrome #01-5] Failures:
   [chrome #01-5] 1) Traffic Portal - Delivery Service - Admin Role assign server to delivery service
   [chrome #01-5]   Message:
   [chrome #01-5]     Failed: No element found using locator: by.cssContainingText(".ag-cell-value", "DSTest")
   [chrome #01-5]   Stack:
   [chrome #01-5]     NoSuchElementError: No element found using locator: by.cssContainingText(".ag-cell-value", "DSTest")
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:814:27
   [chrome #01-5]         at ManagedPromise.invokeCallback_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1376:14)
   [chrome #01-5]         at TaskQueue.execute_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3084:14)
   [chrome #01-5]         at TaskQueue.executeNext_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3067:27)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2927:27
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)Error
   [chrome #01-5]         at ElementArrayFinder.applyAction_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:459:27)
   [chrome #01-5]         at ElementArrayFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:91:29)
   [chrome #01-5]         at ElementFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:831:22)
   [chrome #01-5]         at DeliveryServicePage.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/PageObjects/DeliveryServicePage.po.ts:201:87)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/DeliveryServicePage.po.js:23:58)
   [chrome #01-5]     From: Task: Run it("assign server to delivery service") in control flow
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:94:19)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:64:48
   [chrome #01-5]         at ControlFlow.emit (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/events.js:62:21)
   [chrome #01-5]         at ControlFlow.shutdown_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2674:10)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2599:53
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2728:9
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From asynchronous test: 
   [chrome #01-5]     Error
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:63:17
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Suite.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:62:47)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:39:9
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:38:33
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:26:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:22:12)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:61
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Object.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:24)
   [chrome #01-5]         at Module._compile (internal/modules/cjs/loader.js:999:30)
   [chrome #01-5]         at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
   [chrome #01-5]         at Module.load (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/node_modules/coffeescript/lib/coffee-script/register.js:45:36)
   [chrome #01-5]         at Function.Module._load (internal/modules/cjs/loader.js:708:14)
   [chrome #01-5]         at Module.require (internal/modules/cjs/loader.js:887:19)
   [chrome #01-5]         at require (internal/modules/cjs/helpers.js:74:18)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:93:5
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Jasmine.loadSpecs (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:92:18)
   [chrome #01-5]         at Jasmine.execute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:197:8)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:132:15
   [chrome #01-5]         at Function.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:682:9)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:104:14
   [chrome #01-5]         at _fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:834:54)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:863:30
   [chrome #01-5]         at Promise.promise.promiseDispatch (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:796:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:604:44
   [chrome #01-5]         at runSingle (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:137:13)
   [chrome #01-5]         at flush (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:125:13)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:79:11)
   [chrome #01-5] 
   [chrome #01-5] 2) Traffic Portal - Delivery Service - Admin Role assign required capabilities to delivery service
   [chrome #01-5]   Message:
   [chrome #01-5]     Failed: No element found using locator: by.cssContainingText("span", "tpdservice2acty")
   [chrome #01-5]   Stack:
   [chrome #01-5]     NoSuchElementError: No element found using locator: by.cssContainingText("span", "tpdservice2acty")
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:814:27
   [chrome #01-5]         at ManagedPromise.invokeCallback_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1376:14)
   [chrome #01-5]         at TaskQueue.execute_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3084:14)
   [chrome #01-5]         at TaskQueue.executeNext_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3067:27)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2927:27
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)Error
   [chrome #01-5]         at ElementArrayFinder.applyAction_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:459:27)
   [chrome #01-5]         at ElementArrayFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:91:29)
   [chrome #01-5]         at ElementFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:831:22)
   [chrome #01-5]         at DeliveryServicePage.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/PageObjects/DeliveryServicePage.po.ts:155:55)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/DeliveryServicePage.po.js:23:58)
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From: Task: Run it("assign required capabilities to delivery service") in control flow
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:94:19)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:64:48
   [chrome #01-5]         at ControlFlow.emit (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/events.js:62:21)
   [chrome #01-5]         at ControlFlow.shutdown_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2674:10)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2599:53
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2728:9
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From asynchronous test: 
   [chrome #01-5]     Error
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:72:17
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Suite.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:71:61)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:39:9
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:38:33
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:26:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:22:12)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:61
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Object.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:24)
   [chrome #01-5]         at Module._compile (internal/modules/cjs/loader.js:999:30)
   [chrome #01-5]         at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
   [chrome #01-5]         at Module.load (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/node_modules/coffeescript/lib/coffee-script/register.js:45:36)
   [chrome #01-5]         at Function.Module._load (internal/modules/cjs/loader.js:708:14)
   [chrome #01-5]         at Module.require (internal/modules/cjs/loader.js:887:19)
   [chrome #01-5]         at require (internal/modules/cjs/helpers.js:74:18)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:93:5
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Jasmine.loadSpecs (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:92:18)
   [chrome #01-5]         at Jasmine.execute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:197:8)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:132:15
   [chrome #01-5]         at Function.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:682:9)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:104:14
   [chrome #01-5]         at _fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:834:54)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:863:30
   [chrome #01-5]         at Promise.promise.promiseDispatch (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:796:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:604:44
   [chrome #01-5]         at runSingle (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:137:13)
   [chrome #01-5]         at flush (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:125:13)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:79:11)
   [chrome #01-5] 
   [chrome #01-5] 3) Traffic Portal - Delivery Service - Admin Role delete a delivery service
   [chrome #01-5]   Message:
   [chrome #01-5]     Failed: No element found using locator: by.cssContainingText("span", "tpdservice1acty")
   [chrome #01-5]   Stack:
   [chrome #01-5]     NoSuchElementError: No element found using locator: by.cssContainingText("span", "tpdservice1acty")
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:814:27
   [chrome #01-5]         at ManagedPromise.invokeCallback_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1376:14)
   [chrome #01-5]         at TaskQueue.execute_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3084:14)
   [chrome #01-5]         at TaskQueue.executeNext_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3067:27)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2927:27
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)Error
   [chrome #01-5]         at ElementArrayFinder.applyAction_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:459:27)
   [chrome #01-5]         at ElementArrayFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:91:29)
   [chrome #01-5]         at ElementFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:831:22)
   [chrome #01-5]         at DeliveryServicePage.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/PageObjects/DeliveryServicePage.po.ts:155:55)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/DeliveryServicePage.po.js:23:58)
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From: Task: Run it("delete a delivery service") in control flow
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:94:19)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:64:48
   [chrome #01-5]         at ControlFlow.emit (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/events.js:62:21)
   [chrome #01-5]         at ControlFlow.shutdown_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2674:10)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2599:53
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2728:9
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From asynchronous test: 
   [chrome #01-5]     Error
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:79:17
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Suite.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:78:41)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:39:9
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:38:33
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:26:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:22:12)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:61
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Object.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:24)
   [chrome #01-5]         at Module._compile (internal/modules/cjs/loader.js:999:30)
   [chrome #01-5]         at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
   [chrome #01-5]         at Module.load (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/node_modules/coffeescript/lib/coffee-script/register.js:45:36)
   [chrome #01-5]         at Function.Module._load (internal/modules/cjs/loader.js:708:14)
   [chrome #01-5]         at Module.require (internal/modules/cjs/loader.js:887:19)
   [chrome #01-5]         at require (internal/modules/cjs/helpers.js:74:18)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:93:5
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Jasmine.loadSpecs (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:92:18)
   [chrome #01-5]         at Jasmine.execute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:197:8)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:132:15
   [chrome #01-5]         at Function.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:682:9)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:104:14
   [chrome #01-5]         at _fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:834:54)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:863:30
   [chrome #01-5]         at Promise.promise.promiseDispatch (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:796:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:604:44
   [chrome #01-5]         at runSingle (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:137:13)
   [chrome #01-5]         at flush (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:125:13)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:79:11)
   [chrome #01-5] 
   [chrome #01-5] 4) Traffic Portal - Delivery Service - Admin Role delete a delivery service
   [chrome #01-5]   Message:
   [chrome #01-5]     Failed: No element found using locator: by.cssContainingText("span", "tpdservice2acty")
   [chrome #01-5]   Stack:
   [chrome #01-5]     NoSuchElementError: No element found using locator: by.cssContainingText("span", "tpdservice2acty")
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:814:27
   [chrome #01-5]         at ManagedPromise.invokeCallback_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1376:14)
   [chrome #01-5]         at TaskQueue.execute_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3084:14)
   [chrome #01-5]         at TaskQueue.executeNext_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3067:27)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2927:27
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)Error
   [chrome #01-5]         at ElementArrayFinder.applyAction_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:459:27)
   [chrome #01-5]         at ElementArrayFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:91:29)
   [chrome #01-5]         at ElementFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:831:22)
   [chrome #01-5]         at DeliveryServicePage.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/PageObjects/DeliveryServicePage.po.ts:155:55)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/DeliveryServicePage.po.js:23:58)
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From: Task: Run it("delete a delivery service") in control flow
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:94:19)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:64:48
   [chrome #01-5]         at ControlFlow.emit (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/events.js:62:21)
   [chrome #01-5]         at ControlFlow.shutdown_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2674:10)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2599:53
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2728:9
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From asynchronous test: 
   [chrome #01-5]     Error
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:79:17
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Suite.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:78:41)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:39:9
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:38:33
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:26:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:22:12)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:61
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Object.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:24)
   [chrome #01-5]         at Module._compile (internal/modules/cjs/loader.js:999:30)
   [chrome #01-5]         at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
   [chrome #01-5]         at Module.load (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/node_modules/coffeescript/lib/coffee-script/register.js:45:36)
   [chrome #01-5]         at Function.Module._load (internal/modules/cjs/loader.js:708:14)
   [chrome #01-5]         at Module.require (internal/modules/cjs/loader.js:887:19)
   [chrome #01-5]         at require (internal/modules/cjs/helpers.js:74:18)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:93:5
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Jasmine.loadSpecs (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:92:18)
   [chrome #01-5]         at Jasmine.execute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:197:8)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:132:15
   [chrome #01-5]         at Function.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:682:9)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:104:14
   [chrome #01-5]         at _fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:834:54)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:863:30
   [chrome #01-5]         at Promise.promise.promiseDispatch (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:796:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:604:44
   [chrome #01-5]         at runSingle (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:137:13)
   [chrome #01-5]         at flush (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:125:13)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:79:11)
   [chrome #01-5] 
   [chrome #01-5] 5) Traffic Portal - Delivery Service - Admin Role delete a delivery service
   [chrome #01-5]   Message:
   [chrome #01-5]     Failed: No element found using locator: by.cssContainingText("span", "tpdservice3acty")
   [chrome #01-5]   Stack:
   [chrome #01-5]     NoSuchElementError: No element found using locator: by.cssContainingText("span", "tpdservice3acty")
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:814:27
   [chrome #01-5]         at ManagedPromise.invokeCallback_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1376:14)
   [chrome #01-5]         at TaskQueue.execute_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3084:14)
   [chrome #01-5]         at TaskQueue.executeNext_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3067:27)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2927:27
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)Error
   [chrome #01-5]         at ElementArrayFinder.applyAction_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:459:27)
   [chrome #01-5]         at ElementArrayFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:91:29)
   [chrome #01-5]         at ElementFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:831:22)
   [chrome #01-5]         at DeliveryServicePage.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/PageObjects/DeliveryServicePage.po.ts:155:55)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/DeliveryServicePage.po.js:23:58)
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From: Task: Run it("delete a delivery service") in control flow
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:94:19)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:64:48
   [chrome #01-5]         at ControlFlow.emit (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/events.js:62:21)
   [chrome #01-5]         at ControlFlow.shutdown_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2674:10)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2599:53
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2728:9
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From asynchronous test: 
   [chrome #01-5]     Error
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:79:17
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Suite.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:78:41)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:39:9
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:38:33
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:26:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:22:12)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:61
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Object.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:24)
   [chrome #01-5]         at Module._compile (internal/modules/cjs/loader.js:999:30)
   [chrome #01-5]         at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
   [chrome #01-5]         at Module.load (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/node_modules/coffeescript/lib/coffee-script/register.js:45:36)
   [chrome #01-5]         at Function.Module._load (internal/modules/cjs/loader.js:708:14)
   [chrome #01-5]         at Module.require (internal/modules/cjs/loader.js:887:19)
   [chrome #01-5]         at require (internal/modules/cjs/helpers.js:74:18)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:93:5
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Jasmine.loadSpecs (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:92:18)
   [chrome #01-5]         at Jasmine.execute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:197:8)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:132:15
   [chrome #01-5]         at Function.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:682:9)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:104:14
   [chrome #01-5]         at _fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:834:54)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:863:30
   [chrome #01-5]         at Promise.promise.promiseDispatch (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:796:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:604:44
   [chrome #01-5]         at runSingle (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:137:13)
   [chrome #01-5]         at flush (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:125:13)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:79:11)
   [chrome #01-5] 
   [chrome #01-5] 6) Traffic Portal - Delivery Service - Admin Role can close service menu tab
   [chrome #01-5]   Message:
   [chrome #01-5]     Failed: element click intercepted: Element <a href="javascript:void(0);">...</a> is not clickable at point (112, 239). Other element would receive the click: <div modal-render="true" tabindex="-1" role="dialog" class="modal fade ng-isolate-scope in" uib-modal-animation-class="fade" modal-in-class="in" ng-style="{'z-index': 1050 + index*10, display: 'block'}" uib-modal-window="modal-window" size="lg" index="0" animate="animate" modal-animation="true" style="z-index: 1050; display: block;">...</div>
   [chrome #01-5]       (Session info: headless chrome=96.0.4664.45)
   [chrome #01-5]     Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:25:53'
   [chrome #01-5]     System info: host: 'pop-os', ip: '127.0.1.1', os.name: 'Linux', os.arch: 'amd64', os.version: '5.13.0-7620-generic', java.version: '1.8.0_292'
   [chrome #01-5]     Driver info: driver.version: unknown
   [chrome #01-5]   Stack:
   [chrome #01-5]     WebDriverError: element click intercepted: Element <a href="javascript:void(0);">...</a> is not clickable at point (112, 239). Other element would receive the click: <div modal-render="true" tabindex="-1" role="dialog" class="modal fade ng-isolate-scope in" uib-modal-animation-class="fade" modal-in-class="in" ng-style="{'z-index': 1050 + index*10, display: 'block'}" uib-modal-window="modal-window" size="lg" index="0" animate="animate" modal-animation="true" style="z-index: 1050; display: block;">...</div>
   [chrome #01-5]       (Session info: headless chrome=96.0.4664.45)
   [chrome #01-5]     Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:25:53'
   [chrome #01-5]     System info: host: 'pop-os', ip: '127.0.1.1', os.name: 'Linux', os.arch: 'amd64', os.version: '5.13.0-7620-generic', java.version: '1.8.0_292'
   [chrome #01-5]     Driver info: driver.version: unknown
   [chrome #01-5]         at Object.checkLegacyResponse (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:546:15)
   [chrome #01-5]         at parseHttpResponse (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/http.js:509:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/http.js:441:30
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From: Task: WebElement.click()
   [chrome #01-5]         at thenableWebDriverProxy.schedule (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:807:17)
   [chrome #01-5]         at WebElement.schedule_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:2010:25)
   [chrome #01-5]         at WebElement.click (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:2092:17)
   [chrome #01-5]         at actionFn (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:89:44)
   [chrome #01-5]         at Array.map (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:461:65
   [chrome #01-5]         at ManagedPromise.invokeCallback_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1376:14)
   [chrome #01-5]         at TaskQueue.execute_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3084:14)
   [chrome #01-5]         at TaskQueue.executeNext_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3067:27)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2927:27
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)Error
   [chrome #01-5]         at ElementArrayFinder.applyAction_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:459:27)
   [chrome #01-5]         at ElementArrayFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:91:29)
   [chrome #01-5]         at ElementFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:831:22)
   [chrome #01-5]         at SideNavigationPage.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/PageObjects/SideNavigationPage.po.ts:70:32)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/SideNavigationPage.po.js:5:58)
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From: Task: Run it("can close service menu tab") in control flow
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:94:19)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:64:48
   [chrome #01-5]         at ControlFlow.emit (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/events.js:62:21)
   [chrome #01-5]         at ControlFlow.shutdown_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2674:10)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2599:53
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2728:9
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From asynchronous test: 
   [chrome #01-5]     Error
   [chrome #01-5]         at Suite.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:85:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:39:9
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:38:33
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:26:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:22:12)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:61
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Object.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:24)
   [chrome #01-5]         at Module._compile (internal/modules/cjs/loader.js:999:30)
   [chrome #01-5]         at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
   [chrome #01-5]         at Module.load (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/node_modules/coffeescript/lib/coffee-script/register.js:45:36)
   [chrome #01-5]         at Function.Module._load (internal/modules/cjs/loader.js:708:14)
   [chrome #01-5]         at Module.require (internal/modules/cjs/loader.js:887:19)
   [chrome #01-5]         at require (internal/modules/cjs/helpers.js:74:18)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:93:5
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Jasmine.loadSpecs (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:92:18)
   [chrome #01-5]         at Jasmine.execute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:197:8)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:132:15
   [chrome #01-5]         at Function.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:682:9)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:104:14
   [chrome #01-5]         at _fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:834:54)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:863:30
   [chrome #01-5]         at Promise.promise.promiseDispatch (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:796:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:604:44
   [chrome #01-5]         at runSingle (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:137:13)
   [chrome #01-5]         at flush (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:125:13)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:79:11)
   [chrome #01-5] 
   [chrome #01-5] 7) Traffic Portal - Delivery Service - Admin Role can logout
   [chrome #01-5]   Message:
   [chrome #01-5]     Failed: element click intercepted: Element <a title="Logout" ng-show="userLoaded" ng-click="logout()" uib-popover="Logout" popover-trigger="mouseenter">...</a> is not clickable at point (28, 1062). Other element would receive the click: <div modal-render="true" tabindex="-1" role="dialog" class="modal fade ng-isolate-scope in" uib-modal-animation-class="fade" modal-in-class="in" ng-style="{'z-index': 1050 + index*10, display: 'block'}" uib-modal-window="modal-window" size="lg" index="0" animate="animate" modal-animation="true" style="z-index: 1050; display: block;">...</div>
   [chrome #01-5]       (Session info: headless chrome=96.0.4664.45)
   [chrome #01-5]     Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:25:53'
   [chrome #01-5]     System info: host: 'pop-os', ip: '127.0.1.1', os.name: 'Linux', os.arch: 'amd64', os.version: '5.13.0-7620-generic', java.version: '1.8.0_292'
   [chrome #01-5]     Driver info: driver.version: unknown
   [chrome #01-5]   Stack:
   [chrome #01-5]     WebDriverError: element click intercepted: Element <a title="Logout" ng-show="userLoaded" ng-click="logout()" uib-popover="Logout" popover-trigger="mouseenter">...</a> is not clickable at point (28, 1062). Other element would receive the click: <div modal-render="true" tabindex="-1" role="dialog" class="modal fade ng-isolate-scope in" uib-modal-animation-class="fade" modal-in-class="in" ng-style="{'z-index': 1050 + index*10, display: 'block'}" uib-modal-window="modal-window" size="lg" index="0" animate="animate" modal-animation="true" style="z-index: 1050; display: block;">...</div>
   [chrome #01-5]       (Session info: headless chrome=96.0.4664.45)
   [chrome #01-5]     Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:25:53'
   [chrome #01-5]     System info: host: 'pop-os', ip: '127.0.1.1', os.name: 'Linux', os.arch: 'amd64', os.version: '5.13.0-7620-generic', java.version: '1.8.0_292'
   [chrome #01-5]     Driver info: driver.version: unknown
   [chrome #01-5]         at Object.checkLegacyResponse (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:546:15)
   [chrome #01-5]         at parseHttpResponse (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/http.js:509:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/http.js:441:30
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From: Task: WebElement.click()
   [chrome #01-5]         at thenableWebDriverProxy.schedule (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:807:17)
   [chrome #01-5]         at WebElement.schedule_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:2010:25)
   [chrome #01-5]         at WebElement.click (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:2092:17)
   [chrome #01-5]         at actionFn (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:89:44)
   [chrome #01-5]         at Array.map (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:461:65
   [chrome #01-5]         at ManagedPromise.invokeCallback_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1376:14)
   [chrome #01-5]         at TaskQueue.execute_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3084:14)
   [chrome #01-5]         at TaskQueue.executeNext_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3067:27)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2927:27
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)Error
   [chrome #01-5]         at ElementArrayFinder.applyAction_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:459:27)
   [chrome #01-5]         at ElementArrayFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:91:29)
   [chrome #01-5]         at ElementFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:831:22)
   [chrome #01-5]         at TopNavigationPage.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/PageObjects/TopNavigationPage.po.ts:111:30)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/TopNavigationPage.po.js:8:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/TopNavigationPage.po.js:4:12)
   [chrome #01-5]         at TopNavigationPage.Logout (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/TopNavigationPage.po.js:131:16)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:89:44
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:26:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:22:12)
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:88:41)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:112:25
   [chrome #01-5]         at new ManagedPromise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1077:7)
   [chrome #01-5]         at ControlFlow.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2505:12)
   [chrome #01-5]         at schedulerExecute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:95:18)
   [chrome #01-5]         at TaskQueue.execute_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3084:14)
   [chrome #01-5]         at TaskQueue.executeNext_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3067:27)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2974:25
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From: Task: Run it("can logout") in control flow
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:94:19)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:64:48
   [chrome #01-5]         at ControlFlow.emit (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/events.js:62:21)
   [chrome #01-5]         at ControlFlow.shutdown_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2674:10)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2599:53
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2728:9
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From asynchronous test: 
   [chrome #01-5]     Error
   [chrome #01-5]         at Suite.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:88:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:39:9
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:38:33
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:26:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:22:12)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:61
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Object.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:24)
   [chrome #01-5]         at Module._compile (internal/modules/cjs/loader.js:999:30)
   [chrome #01-5]         at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
   [chrome #01-5]         at Module.load (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/node_modules/coffeescript/lib/coffee-script/register.js:45:36)
   [chrome #01-5]         at Function.Module._load (internal/modules/cjs/loader.js:708:14)
   [chrome #01-5]         at Module.require (internal/modules/cjs/loader.js:887:19)
   [chrome #01-5]         at require (internal/modules/cjs/helpers.js:74:18)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:93:5
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Jasmine.loadSpecs (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:92:18)
   [chrome #01-5]         at Jasmine.execute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:197:8)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:132:15
   [chrome #01-5]         at Function.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:682:9)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:104:14
   [chrome #01-5]         at _fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:834:54)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:863:30
   [chrome #01-5]         at Promise.promise.promiseDispatch (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:796:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:604:44
   [chrome #01-5]         at runSingle (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:137:13)
   [chrome #01-5]         at flush (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:125:13)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:79:11)
   [chrome #01-5] 
   [chrome #01-5] 8) Traffic Portal - Delivery Service - Read Only Role can login
   [chrome #01-5]   Message:
   [chrome #01-5]     Failed: No element found using locator: By(css selector, *[id="loginUsername"])
   [chrome #01-5]   Stack:
   [chrome #01-5]     NoSuchElementError: No element found using locator: By(css selector, *[id="loginUsername"])
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:814:27
   [chrome #01-5]         at ManagedPromise.invokeCallback_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1376:14)
   [chrome #01-5]         at TaskQueue.execute_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3084:14)
   [chrome #01-5]         at TaskQueue.executeNext_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3067:27)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2927:27
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)Error
   [chrome #01-5]         at ElementArrayFinder.applyAction_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:459:27)
   [chrome #01-5]         at ElementArrayFinder.<computed> [as sendKeys] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:91:29)
   [chrome #01-5]         at ElementFinder.<computed> [as sendKeys] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:831:22)
   [chrome #01-5]         at LoginPage.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/PageObjects/LoginPage.po.ts:62:36)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/LoginPage.po.js:8:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/LoginPage.po.js:4:12)
   [chrome #01-5]         at LoginPage.Login (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/LoginPage.po.js:46:16)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:42:33
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:26:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:22:12)
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:40:40)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:112:25
   [chrome #01-5]         at new ManagedPromise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1077:7)
   [chrome #01-5]         at ControlFlow.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2505:12)
   [chrome #01-5]         at schedulerExecute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:95:18)
   [chrome #01-5]         at TaskQueue.execute_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3084:14)
   [chrome #01-5]         at TaskQueue.executeNext_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3067:27)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2974:25
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From: Task: Run it("can login") in control flow
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:94:19)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:64:48
   [chrome #01-5]         at ControlFlow.emit (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/events.js:62:21)
   [chrome #01-5]         at ControlFlow.shutdown_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2674:10)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2599:53
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2728:9
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From asynchronous test: 
   [chrome #01-5]     Error
   [chrome #01-5]         at Suite.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:40:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:39:9
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:38:33
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:26:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:22:12)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:61
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Object.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:24)
   [chrome #01-5]         at Module._compile (internal/modules/cjs/loader.js:999:30)
   [chrome #01-5]         at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
   [chrome #01-5]         at Module.load (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/node_modules/coffeescript/lib/coffee-script/register.js:45:36)
   [chrome #01-5]         at Function.Module._load (internal/modules/cjs/loader.js:708:14)
   [chrome #01-5]         at Module.require (internal/modules/cjs/loader.js:887:19)
   [chrome #01-5]         at require (internal/modules/cjs/helpers.js:74:18)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:93:5
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Jasmine.loadSpecs (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:92:18)
   [chrome #01-5]         at Jasmine.execute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:197:8)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:132:15
   [chrome #01-5]         at Function.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:682:9)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:104:14
   [chrome #01-5]         at _fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:834:54)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:863:30
   [chrome #01-5]         at Promise.promise.promiseDispatch (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:796:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:604:44
   [chrome #01-5]         at runSingle (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:137:13)
   [chrome #01-5]         at flush (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:125:13)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:79:11)
   [chrome #01-5] 
   [chrome #01-5] 9) Traffic Portal - Delivery Service - Read Only Role create ANY_MAP delivery service
   [chrome #01-5]   Message:
   [chrome #01-5]     Expected false to be true.
   [chrome #01-5]   Stack:
   [chrome #01-5]     Error: Failed expectation
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:51:83)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:23:58)
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5] 
   [chrome #01-5] 10) Traffic Portal - Delivery Service - Read Only Role update delivery service display name
   [chrome #01-5]   Message:
   [chrome #01-5]     Expected false to be true.
   [chrome #01-5]   Stack:
   [chrome #01-5]     Error: Failed expectation
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:58:86)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:23:58)
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5] 
   [chrome #01-5] 11) Traffic Portal - Delivery Service - Read Only Role assign server to delivery service
   [chrome #01-5]   Message:
   [chrome #01-5]     Expected false to be true.
   [chrome #01-5]   Stack:
   [chrome #01-5]     Error: Failed expectation
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:65:100)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:23:58)
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5] 
   [chrome #01-5] 12) Traffic Portal - Delivery Service - Read Only Role assign required capabilities to delivery service
   [chrome #01-5]   Message:
   [chrome #01-5]     Expected false to be true.
   [chrome #01-5]   Stack:
   [chrome #01-5]     Error: Failed expectation
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:74:97)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:23:58)
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5] 
   [chrome #01-5] 13) Traffic Portal - Delivery Service - Read Only Role delete a delivery service
   [chrome #01-5]   Message:
   [chrome #01-5]     Expected false to be true.
   [chrome #01-5]   Stack:
   [chrome #01-5]     Error: Failed expectation
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:81:86
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:23:58)
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5] 
   [chrome #01-5] 14) Traffic Portal - Delivery Service - Operation Role assign server to delivery service
   [chrome #01-5]   Message:
   [chrome #01-5]     Failed: No element found using locator: by.cssContainingText(".ag-cell-value", "DSTest")
   [chrome #01-5]   Stack:
   [chrome #01-5]     NoSuchElementError: No element found using locator: by.cssContainingText(".ag-cell-value", "DSTest")
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:814:27
   [chrome #01-5]         at ManagedPromise.invokeCallback_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1376:14)
   [chrome #01-5]         at TaskQueue.execute_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3084:14)
   [chrome #01-5]         at TaskQueue.executeNext_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3067:27)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2927:27
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)Error
   [chrome #01-5]         at ElementArrayFinder.applyAction_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:459:27)
   [chrome #01-5]         at ElementArrayFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:91:29)
   [chrome #01-5]         at ElementFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:831:22)
   [chrome #01-5]         at DeliveryServicePage.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/PageObjects/DeliveryServicePage.po.ts:201:87)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/DeliveryServicePage.po.js:23:58)
   [chrome #01-5]     From: Task: Run it("assign server to delivery service") in control flow
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:94:19)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:64:48
   [chrome #01-5]         at ControlFlow.emit (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/events.js:62:21)
   [chrome #01-5]         at ControlFlow.shutdown_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2674:10)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2599:53
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2728:9
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From asynchronous test: 
   [chrome #01-5]     Error
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:63:17
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Suite.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:62:47)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:39:9
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:38:33
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:26:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:22:12)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:61
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Object.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:24)
   [chrome #01-5]         at Module._compile (internal/modules/cjs/loader.js:999:30)
   [chrome #01-5]         at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
   [chrome #01-5]         at Module.load (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/node_modules/coffeescript/lib/coffee-script/register.js:45:36)
   [chrome #01-5]         at Function.Module._load (internal/modules/cjs/loader.js:708:14)
   [chrome #01-5]         at Module.require (internal/modules/cjs/loader.js:887:19)
   [chrome #01-5]         at require (internal/modules/cjs/helpers.js:74:18)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:93:5
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Jasmine.loadSpecs (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:92:18)
   [chrome #01-5]         at Jasmine.execute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:197:8)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:132:15
   [chrome #01-5]         at Function.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:682:9)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:104:14
   [chrome #01-5]         at _fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:834:54)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:863:30
   [chrome #01-5]         at Promise.promise.promiseDispatch (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:796:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:604:44
   [chrome #01-5]         at runSingle (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:137:13)
   [chrome #01-5]         at flush (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:125:13)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:79:11)
   [chrome #01-5] 
   [chrome #01-5] 15) Traffic Portal - Delivery Service - Operation Role assign required capabilities to delivery service
   [chrome #01-5]   Message:
   [chrome #01-5]     Failed: No element found using locator: by.cssContainingText("span", "optpdservice2acty")
   [chrome #01-5]   Stack:
   [chrome #01-5]     NoSuchElementError: No element found using locator: by.cssContainingText("span", "optpdservice2acty")
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:814:27
   [chrome #01-5]         at ManagedPromise.invokeCallback_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1376:14)
   [chrome #01-5]         at TaskQueue.execute_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3084:14)
   [chrome #01-5]         at TaskQueue.executeNext_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3067:27)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2927:27
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)Error
   [chrome #01-5]         at ElementArrayFinder.applyAction_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:459:27)
   [chrome #01-5]         at ElementArrayFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:91:29)
   [chrome #01-5]         at ElementFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:831:22)
   [chrome #01-5]         at DeliveryServicePage.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/PageObjects/DeliveryServicePage.po.ts:155:55)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/DeliveryServicePage.po.js:23:58)
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From: Task: Run it("assign required capabilities to delivery service") in control flow
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:94:19)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:64:48
   [chrome #01-5]         at ControlFlow.emit (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/events.js:62:21)
   [chrome #01-5]         at ControlFlow.shutdown_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2674:10)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2599:53
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2728:9
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From asynchronous test: 
   [chrome #01-5]     Error
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:72:17
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Suite.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:71:61)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:39:9
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:38:33
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:26:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:22:12)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:61
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Object.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:24)
   [chrome #01-5]         at Module._compile (internal/modules/cjs/loader.js:999:30)
   [chrome #01-5]         at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
   [chrome #01-5]         at Module.load (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/node_modules/coffeescript/lib/coffee-script/register.js:45:36)
   [chrome #01-5]         at Function.Module._load (internal/modules/cjs/loader.js:708:14)
   [chrome #01-5]         at Module.require (internal/modules/cjs/loader.js:887:19)
   [chrome #01-5]         at require (internal/modules/cjs/helpers.js:74:18)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:93:5
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Jasmine.loadSpecs (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:92:18)
   [chrome #01-5]         at Jasmine.execute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:197:8)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:132:15
   [chrome #01-5]         at Function.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:682:9)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:104:14
   [chrome #01-5]         at _fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:834:54)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:863:30
   [chrome #01-5]         at Promise.promise.promiseDispatch (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:796:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:604:44
   [chrome #01-5]         at runSingle (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:137:13)
   [chrome #01-5]         at flush (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:125:13)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:79:11)
   [chrome #01-5] 
   [chrome #01-5] 16) Traffic Portal - Delivery Service - Operation Role delete a delivery service
   [chrome #01-5]   Message:
   [chrome #01-5]     Failed: No element found using locator: by.cssContainingText("span", "optpdservice1acty")
   [chrome #01-5]   Stack:
   [chrome #01-5]     NoSuchElementError: No element found using locator: by.cssContainingText("span", "optpdservice1acty")
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:814:27
   [chrome #01-5]         at ManagedPromise.invokeCallback_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1376:14)
   [chrome #01-5]         at TaskQueue.execute_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3084:14)
   [chrome #01-5]         at TaskQueue.executeNext_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3067:27)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2927:27
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)Error
   [chrome #01-5]         at ElementArrayFinder.applyAction_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:459:27)
   [chrome #01-5]         at ElementArrayFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:91:29)
   [chrome #01-5]         at ElementFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:831:22)
   [chrome #01-5]         at DeliveryServicePage.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/PageObjects/DeliveryServicePage.po.ts:155:55)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/DeliveryServicePage.po.js:23:58)
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From: Task: Run it("delete a delivery service") in control flow
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:94:19)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:64:48
   [chrome #01-5]         at ControlFlow.emit (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/events.js:62:21)
   [chrome #01-5]         at ControlFlow.shutdown_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2674:10)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2599:53
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2728:9
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From asynchronous test: 
   [chrome #01-5]     Error
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:79:17
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Suite.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:78:41)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:39:9
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:38:33
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:26:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:22:12)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:61
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Object.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:24)
   [chrome #01-5]         at Module._compile (internal/modules/cjs/loader.js:999:30)
   [chrome #01-5]         at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
   [chrome #01-5]         at Module.load (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/node_modules/coffeescript/lib/coffee-script/register.js:45:36)
   [chrome #01-5]         at Function.Module._load (internal/modules/cjs/loader.js:708:14)
   [chrome #01-5]         at Module.require (internal/modules/cjs/loader.js:887:19)
   [chrome #01-5]         at require (internal/modules/cjs/helpers.js:74:18)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:93:5
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Jasmine.loadSpecs (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:92:18)
   [chrome #01-5]         at Jasmine.execute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:197:8)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:132:15
   [chrome #01-5]         at Function.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:682:9)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:104:14
   [chrome #01-5]         at _fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:834:54)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:863:30
   [chrome #01-5]         at Promise.promise.promiseDispatch (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:796:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:604:44
   [chrome #01-5]         at runSingle (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:137:13)
   [chrome #01-5]         at flush (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:125:13)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:79:11)
   [chrome #01-5] 
   [chrome #01-5] 17) Traffic Portal - Delivery Service - Operation Role delete a delivery service
   [chrome #01-5]   Message:
   [chrome #01-5]     Failed: No element found using locator: by.cssContainingText("span", "optpdservice2acty")
   [chrome #01-5]   Stack:
   [chrome #01-5]     NoSuchElementError: No element found using locator: by.cssContainingText("span", "optpdservice2acty")
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:814:27
   [chrome #01-5]         at ManagedPromise.invokeCallback_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1376:14)
   [chrome #01-5]         at TaskQueue.execute_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3084:14)
   [chrome #01-5]         at TaskQueue.executeNext_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3067:27)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2927:27
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)Error
   [chrome #01-5]         at ElementArrayFinder.applyAction_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:459:27)
   [chrome #01-5]         at ElementArrayFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:91:29)
   [chrome #01-5]         at ElementFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:831:22)
   [chrome #01-5]         at DeliveryServicePage.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/PageObjects/DeliveryServicePage.po.ts:155:55)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/DeliveryServicePage.po.js:23:58)
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From: Task: Run it("delete a delivery service") in control flow
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:94:19)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:64:48
   [chrome #01-5]         at ControlFlow.emit (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/events.js:62:21)
   [chrome #01-5]         at ControlFlow.shutdown_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2674:10)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2599:53
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2728:9
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From asynchronous test: 
   [chrome #01-5]     Error
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:79:17
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Suite.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:78:41)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:39:9
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:38:33
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:26:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:22:12)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:61
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Object.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:24)
   [chrome #01-5]         at Module._compile (internal/modules/cjs/loader.js:999:30)
   [chrome #01-5]         at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
   [chrome #01-5]         at Module.load (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/node_modules/coffeescript/lib/coffee-script/register.js:45:36)
   [chrome #01-5]         at Function.Module._load (internal/modules/cjs/loader.js:708:14)
   [chrome #01-5]         at Module.require (internal/modules/cjs/loader.js:887:19)
   [chrome #01-5]         at require (internal/modules/cjs/helpers.js:74:18)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:93:5
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Jasmine.loadSpecs (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:92:18)
   [chrome #01-5]         at Jasmine.execute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:197:8)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:132:15
   [chrome #01-5]         at Function.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:682:9)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:104:14
   [chrome #01-5]         at _fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:834:54)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:863:30
   [chrome #01-5]         at Promise.promise.promiseDispatch (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:796:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:604:44
   [chrome #01-5]         at runSingle (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:137:13)
   [chrome #01-5]         at flush (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:125:13)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:79:11)
   [chrome #01-5] 
   [chrome #01-5] 18) Traffic Portal - Delivery Service - Operation Role delete a delivery service
   [chrome #01-5]   Message:
   [chrome #01-5]     Failed: No element found using locator: by.cssContainingText("span", "optpdservice3acty")
   [chrome #01-5]   Stack:
   [chrome #01-5]     NoSuchElementError: No element found using locator: by.cssContainingText("span", "optpdservice3acty")
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:814:27
   [chrome #01-5]         at ManagedPromise.invokeCallback_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1376:14)
   [chrome #01-5]         at TaskQueue.execute_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3084:14)
   [chrome #01-5]         at TaskQueue.executeNext_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3067:27)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2927:27
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)Error
   [chrome #01-5]         at ElementArrayFinder.applyAction_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:459:27)
   [chrome #01-5]         at ElementArrayFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:91:29)
   [chrome #01-5]         at ElementFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:831:22)
   [chrome #01-5]         at DeliveryServicePage.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/PageObjects/DeliveryServicePage.po.ts:155:55)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/DeliveryServicePage.po.js:23:58)
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From: Task: Run it("delete a delivery service") in control flow
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:94:19)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:64:48
   [chrome #01-5]         at ControlFlow.emit (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/events.js:62:21)
   [chrome #01-5]         at ControlFlow.shutdown_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2674:10)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2599:53
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2728:9
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From asynchronous test: 
   [chrome #01-5]     Error
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:79:17
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Suite.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:78:41)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:39:9
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:38:33
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:26:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:22:12)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:61
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Object.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:24)
   [chrome #01-5]         at Module._compile (internal/modules/cjs/loader.js:999:30)
   [chrome #01-5]         at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
   [chrome #01-5]         at Module.load (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/node_modules/coffeescript/lib/coffee-script/register.js:45:36)
   [chrome #01-5]         at Function.Module._load (internal/modules/cjs/loader.js:708:14)
   [chrome #01-5]         at Module.require (internal/modules/cjs/loader.js:887:19)
   [chrome #01-5]         at require (internal/modules/cjs/helpers.js:74:18)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:93:5
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Jasmine.loadSpecs (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:92:18)
   [chrome #01-5]         at Jasmine.execute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:197:8)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:132:15
   [chrome #01-5]         at Function.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:682:9)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:104:14
   [chrome #01-5]         at _fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:834:54)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:863:30
   [chrome #01-5]         at Promise.promise.promiseDispatch (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:796:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:604:44
   [chrome #01-5]         at runSingle (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:137:13)
   [chrome #01-5]         at flush (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:125:13)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:79:11)
   [chrome #01-5] 
   [chrome #01-5] 19) Traffic Portal - Delivery Service - Operation Role can close service menu tab
   [chrome #01-5]   Message:
   [chrome #01-5]     Failed: element click intercepted: Element <a href="javascript:void(0);">...</a> is not clickable at point (112, 239). Other element would receive the click: <div modal-render="true" tabindex="-1" role="dialog" class="modal fade ng-isolate-scope in" uib-modal-animation-class="fade" modal-in-class="in" ng-style="{'z-index': 1050 + index*10, display: 'block'}" uib-modal-window="modal-window" size="lg" index="0" animate="animate" modal-animation="true" style="z-index: 1050; display: block;">...</div>
   [chrome #01-5]       (Session info: headless chrome=96.0.4664.45)
   [chrome #01-5]     Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:25:53'
   [chrome #01-5]     System info: host: 'pop-os', ip: '127.0.1.1', os.name: 'Linux', os.arch: 'amd64', os.version: '5.13.0-7620-generic', java.version: '1.8.0_292'
   [chrome #01-5]     Driver info: driver.version: unknown
   [chrome #01-5]   Stack:
   [chrome #01-5]     WebDriverError: element click intercepted: Element <a href="javascript:void(0);">...</a> is not clickable at point (112, 239). Other element would receive the click: <div modal-render="true" tabindex="-1" role="dialog" class="modal fade ng-isolate-scope in" uib-modal-animation-class="fade" modal-in-class="in" ng-style="{'z-index': 1050 + index*10, display: 'block'}" uib-modal-window="modal-window" size="lg" index="0" animate="animate" modal-animation="true" style="z-index: 1050; display: block;">...</div>
   [chrome #01-5]       (Session info: headless chrome=96.0.4664.45)
   [chrome #01-5]     Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:25:53'
   [chrome #01-5]     System info: host: 'pop-os', ip: '127.0.1.1', os.name: 'Linux', os.arch: 'amd64', os.version: '5.13.0-7620-generic', java.version: '1.8.0_292'
   [chrome #01-5]     Driver info: driver.version: unknown
   [chrome #01-5]         at Object.checkLegacyResponse (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:546:15)
   [chrome #01-5]         at parseHttpResponse (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/http.js:509:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/http.js:441:30
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From: Task: WebElement.click()
   [chrome #01-5]         at thenableWebDriverProxy.schedule (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:807:17)
   [chrome #01-5]         at WebElement.schedule_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:2010:25)
   [chrome #01-5]         at WebElement.click (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:2092:17)
   [chrome #01-5]         at actionFn (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:89:44)
   [chrome #01-5]         at Array.map (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:461:65
   [chrome #01-5]         at ManagedPromise.invokeCallback_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1376:14)
   [chrome #01-5]         at TaskQueue.execute_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3084:14)
   [chrome #01-5]         at TaskQueue.executeNext_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3067:27)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2927:27
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)Error
   [chrome #01-5]         at ElementArrayFinder.applyAction_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:459:27)
   [chrome #01-5]         at ElementArrayFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:91:29)
   [chrome #01-5]         at ElementFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:831:22)
   [chrome #01-5]         at SideNavigationPage.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/PageObjects/SideNavigationPage.po.ts:70:32)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/SideNavigationPage.po.js:5:58)
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From: Task: Run it("can close service menu tab") in control flow
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:94:19)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:64:48
   [chrome #01-5]         at ControlFlow.emit (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/events.js:62:21)
   [chrome #01-5]         at ControlFlow.shutdown_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2674:10)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2599:53
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2728:9
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From asynchronous test: 
   [chrome #01-5]     Error
   [chrome #01-5]         at Suite.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:85:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:39:9
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:38:33
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:26:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:22:12)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:61
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Object.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:24)
   [chrome #01-5]         at Module._compile (internal/modules/cjs/loader.js:999:30)
   [chrome #01-5]         at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
   [chrome #01-5]         at Module.load (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/node_modules/coffeescript/lib/coffee-script/register.js:45:36)
   [chrome #01-5]         at Function.Module._load (internal/modules/cjs/loader.js:708:14)
   [chrome #01-5]         at Module.require (internal/modules/cjs/loader.js:887:19)
   [chrome #01-5]         at require (internal/modules/cjs/helpers.js:74:18)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:93:5
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Jasmine.loadSpecs (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:92:18)
   [chrome #01-5]         at Jasmine.execute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:197:8)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:132:15
   [chrome #01-5]         at Function.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:682:9)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:104:14
   [chrome #01-5]         at _fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:834:54)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:863:30
   [chrome #01-5]         at Promise.promise.promiseDispatch (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:796:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:604:44
   [chrome #01-5]         at runSingle (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:137:13)
   [chrome #01-5]         at flush (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:125:13)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:79:11)
   [chrome #01-5] 
   [chrome #01-5] 20) Traffic Portal - Delivery Service - Operation Role can logout
   [chrome #01-5]   Message:
   [chrome #01-5]     Failed: element click intercepted: Element <a title="Logout" ng-show="userLoaded" ng-click="logout()" uib-popover="Logout" popover-trigger="mouseenter">...</a> is not clickable at point (28, 1062). Other element would receive the click: <div modal-render="true" tabindex="-1" role="dialog" class="modal fade ng-isolate-scope in" uib-modal-animation-class="fade" modal-in-class="in" ng-style="{'z-index': 1050 + index*10, display: 'block'}" uib-modal-window="modal-window" size="lg" index="0" animate="animate" modal-animation="true" style="z-index: 1050; display: block;">...</div>
   [chrome #01-5]       (Session info: headless chrome=96.0.4664.45)
   [chrome #01-5]     Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:25:53'
   [chrome #01-5]     System info: host: 'pop-os', ip: '127.0.1.1', os.name: 'Linux', os.arch: 'amd64', os.version: '5.13.0-7620-generic', java.version: '1.8.0_292'
   [chrome #01-5]     Driver info: driver.version: unknown
   [chrome #01-5]   Stack:
   [chrome #01-5]     WebDriverError: element click intercepted: Element <a title="Logout" ng-show="userLoaded" ng-click="logout()" uib-popover="Logout" popover-trigger="mouseenter">...</a> is not clickable at point (28, 1062). Other element would receive the click: <div modal-render="true" tabindex="-1" role="dialog" class="modal fade ng-isolate-scope in" uib-modal-animation-class="fade" modal-in-class="in" ng-style="{'z-index': 1050 + index*10, display: 'block'}" uib-modal-window="modal-window" size="lg" index="0" animate="animate" modal-animation="true" style="z-index: 1050; display: block;">...</div>
   [chrome #01-5]       (Session info: headless chrome=96.0.4664.45)
   [chrome #01-5]     Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:25:53'
   [chrome #01-5]     System info: host: 'pop-os', ip: '127.0.1.1', os.name: 'Linux', os.arch: 'amd64', os.version: '5.13.0-7620-generic', java.version: '1.8.0_292'
   [chrome #01-5]     Driver info: driver.version: unknown
   [chrome #01-5]         at Object.checkLegacyResponse (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:546:15)
   [chrome #01-5]         at parseHttpResponse (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/http.js:509:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/http.js:441:30
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From: Task: WebElement.click()
   [chrome #01-5]         at thenableWebDriverProxy.schedule (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:807:17)
   [chrome #01-5]         at WebElement.schedule_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:2010:25)
   [chrome #01-5]         at WebElement.click (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:2092:17)
   [chrome #01-5]         at actionFn (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:89:44)
   [chrome #01-5]         at Array.map (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:461:65
   [chrome #01-5]         at ManagedPromise.invokeCallback_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1376:14)
   [chrome #01-5]         at TaskQueue.execute_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3084:14)
   [chrome #01-5]         at TaskQueue.executeNext_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3067:27)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2927:27
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)Error
   [chrome #01-5]         at ElementArrayFinder.applyAction_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:459:27)
   [chrome #01-5]         at ElementArrayFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:91:29)
   [chrome #01-5]         at ElementFinder.<computed> [as click] (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/element.js:831:22)
   [chrome #01-5]         at TopNavigationPage.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/PageObjects/TopNavigationPage.po.ts:111:30)
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/TopNavigationPage.po.js:8:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/TopNavigationPage.po.js:4:12)
   [chrome #01-5]         at TopNavigationPage.Logout (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/PageObjects/TopNavigationPage.po.js:131:16)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:89:44
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:26:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:22:12)
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:88:41)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:112:25
   [chrome #01-5]         at new ManagedPromise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1077:7)
   [chrome #01-5]         at ControlFlow.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2505:12)
   [chrome #01-5]         at schedulerExecute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:95:18)
   [chrome #01-5]         at TaskQueue.execute_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3084:14)
   [chrome #01-5]         at TaskQueue.executeNext_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:3067:27)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2974:25
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From: Task: Run it("can logout") in control flow
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:94:19)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:64:48
   [chrome #01-5]         at ControlFlow.emit (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/events.js:62:21)
   [chrome #01-5]         at ControlFlow.shutdown_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2674:10)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2599:53
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2728:9
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From asynchronous test: 
   [chrome #01-5]     Error
   [chrome #01-5]         at Suite.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:88:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:39:9
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:38:33
   [chrome #01-5]         at Generator.next (<anonymous>)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:26:71
   [chrome #01-5]         at new Promise (<anonymous>)
   [chrome #01-5]         at __awaiter (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/specs/DeliveryServices.spec.js:22:12)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:61
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Object.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:37:24)
   [chrome #01-5]         at Module._compile (internal/modules/cjs/loader.js:999:30)
   [chrome #01-5]         at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
   [chrome #01-5]         at Module.load (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/node_modules/coffeescript/lib/coffee-script/register.js:45:36)
   [chrome #01-5]         at Function.Module._load (internal/modules/cjs/loader.js:708:14)
   [chrome #01-5]         at Module.require (internal/modules/cjs/loader.js:887:19)
   [chrome #01-5]         at require (internal/modules/cjs/helpers.js:74:18)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:93:5
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Jasmine.loadSpecs (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:92:18)
   [chrome #01-5]         at Jasmine.execute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:197:8)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:132:15
   [chrome #01-5]         at Function.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:682:9)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:104:14
   [chrome #01-5]         at _fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:834:54)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:863:30
   [chrome #01-5]         at Promise.promise.promiseDispatch (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:796:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:604:44
   [chrome #01-5]         at runSingle (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:137:13)
   [chrome #01-5]         at flush (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:125:13)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:79:11)
   [chrome #01-5] 
   [chrome #01-5] 21) Clean up API for delivery service test Cleanup
   [chrome #01-5]   Message:
   [chrome #01-5]     Failed: UseAPI failed on Action DeleteDeliveryServices with index 5, and Data index 0: Failed to get id: Cannot read property 'id' of undefined
   [chrome #01-5]   Stack:
   [chrome #01-5]     Error: UseAPI failed on Action DeleteDeliveryServices with index 5, and Data index 0: Failed to get id: Cannot read property 'id' of undefined
   [chrome #01-5]         at API.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/CommonUtils/API.ts:356:31)
   [chrome #01-5]         at Generator.throw (<anonymous>)
   [chrome #01-5]         at rejected (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/GeneratedCode/CommonUtils/API.js:24:65)
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From: Task: Run it("Cleanup") in control flow
   [chrome #01-5]         at UserContext.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:94:19)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/jasminewd2/index.js:64:48
   [chrome #01-5]         at ControlFlow.emit (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/events.js:62:21)
   [chrome #01-5]         at ControlFlow.shutdown_ (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2674:10)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2599:53
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2728:9
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:668:7
   [chrome #01-5]         at runMicrotasks (<anonymous>)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:97:5)
   [chrome #01-5]     From asynchronous test: 
   [chrome #01-5]     Error
   [chrome #01-5]         at Suite.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:96:5)
   [chrome #01-5]         at Object.<anonymous> (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/specs/DeliveryServices.spec.ts:95:1)
   [chrome #01-5]         at Module._compile (internal/modules/cjs/loader.js:999:30)
   [chrome #01-5]         at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
   [chrome #01-5]         at Module.load (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/node_modules/coffeescript/lib/coffee-script/register.js:45:36)
   [chrome #01-5]         at Function.Module._load (internal/modules/cjs/loader.js:708:14)
   [chrome #01-5]         at Module.require (internal/modules/cjs/loader.js:887:19)
   [chrome #01-5]         at require (internal/modules/cjs/helpers.js:74:18)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:93:5
   [chrome #01-5]         at Array.forEach (<anonymous>)
   [chrome #01-5]         at Jasmine.loadSpecs (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:92:18)
   [chrome #01-5]         at Jasmine.execute (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:197:8)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:132:15
   [chrome #01-5]         at Function.promise (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:682:9)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/built/frameworks/jasmine.js:104:14
   [chrome #01-5]         at _fulfilled (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:834:54)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:863:30
   [chrome #01-5]         at Promise.promise.promiseDispatch (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:796:13)
   [chrome #01-5]         at /home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:604:44
   [chrome #01-5]         at runSingle (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:137:13)
   [chrome #01-5]         at flush (/home/ocket8888/src/github.com/apache/trafficcontrol/traffic_portal/test/integration/node_modules/protractor/node_modules/q/q.js:125:13)
   [chrome #01-5]         at processTicksAndRejections (internal/process/task_queues.js:79:11)
   [chrome #01-5] 
   [chrome #01-5] 37 specs, 21 failures
   [chrome #01-5] Finished in 108.227 seconds
   [chrome #01-5]
   ```
   
   </details>


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@trafficcontrol.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [trafficcontrol] dpham692 commented on a change in pull request #6352: Migrate Delivery Service Request from E2E to integrated

Posted by GitBox <gi...@apache.org>.
dpham692 commented on a change in pull request #6352:
URL: https://github.com/apache/trafficcontrol/pull/6352#discussion_r752476955



##########
File path: traffic_portal/test/integration/specs/DeliveryServiceRequest.spec.ts
##########
@@ -0,0 +1,85 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+import { browser } from 'protractor'
+import { LoginPage } from '../PageObjects/LoginPage.po'
+import { DeliveryServicesRequestPage } from '../PageObjects/DeliveryServiceRequestPage.po';
+import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
+import { deliveryservicerequest } from '../Data/deliveryservicerequest';
+
+
+const loginPage = new LoginPage();
+const topNavigation = new TopNavigationPage();
+const deliveryServiceRequestPage = new DeliveryServicesRequestPage();
+
+
+
+deliveryservicerequest.tests.forEach(deliveryServiceRequestData => {
+    deliveryServiceRequestData.logins.forEach(login => {
+        describe(`Traffic Portal - Delivery Service Request - ${login.description}`, () => {
+            afterEach(async function () {
+                await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+            });
+            afterAll(async function () {
+                expect(await topNavigation.Logout()).toBeTruthy();
+            })
+            xit('can login', async function(){
+                browser.get(browser.params.baseUrl);
+                await loginPage.Login(login);
+                expect(await loginPage.CheckUserName(login)).toBeTruthy();
+                await deliveryServiceRequestPage.OpenServicesMenu();
+            })
+            deliveryServiceRequestData.create.forEach(create => {
+                xit(create.description, async () => {
+                    await deliveryServiceRequestPage.OpenDeliveryServicePage();
+                    expect(await deliveryServiceRequestPage.CreateDeliveryServiceRequest(create)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(create);
+                    expect(await deliveryServiceRequestPage.FullFillDeliveryServiceRequest(create)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(create);
+                    expect(await deliveryServiceRequestPage.CompleteDeliveryServiceRequest(create)).toBe(true);
+
+                });
+            });
+            deliveryServiceRequestData.remove.forEach(remove =>{
+                xit(remove.description, async () =>{
+                    await deliveryServiceRequestPage.OpenDeliveryServicePage();
+                    expect(await deliveryServiceRequestPage.CreateDeliveryServiceRequest(remove)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(remove);
+                    expect(await deliveryServiceRequestPage.DeleteDeliveryServiceRequest(remove)).toBe(true);
+                })
+            })
+            deliveryServiceRequestData.update.forEach(update=>{
+                xit(update.description, async () =>{
+                    await deliveryServiceRequestPage.OpenDeliveryServicePage();
+                    expect(await deliveryServiceRequestPage.CreateDeliveryServiceRequest(update)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(update);
+                    expect(await deliveryServiceRequestPage.UpdateDeliveryServiceRequest(update)).toBe(true);
+                    expect(await deliveryServiceRequestPage.FullFillDeliveryServiceRequest(update)).toBe(true);
+                    await deliveryServiceRequestPage.OpenDeliveryServiceRequestPage();
+                    await deliveryServiceRequestPage.SearchDeliveryServiceRequest(update);
+                    expect(await deliveryServiceRequestPage.CompleteDeliveryServiceRequest(update)).toBe(true);
+                })
+            })
+        });
+    });
+});

Review comment:
       @mitchell852 




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@trafficcontrol.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [trafficcontrol] dpham692 commented on a change in pull request #6352: Migrate Delivery Service Request from E2E to integrated

Posted by GitBox <gi...@apache.org>.
dpham692 commented on a change in pull request #6352:
URL: https://github.com/apache/trafficcontrol/pull/6352#discussion_r750642313



##########
File path: traffic_portal/test/integration/PageObjects/DeliveryServiceRequestPage.po.ts
##########
@@ -0,0 +1,149 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import {  browser, by, element} from 'protractor';
+import { BasePage } from './BasePage.po';
+import { SideNavigationPage } from '../PageObjects/SideNavigationPage.po';
+import { randomize } from '../config';
+
+
+interface CreateDeliveryServiceRequest{
+  description: string;
+  XmlId: string;
+  DisplayName: string;
+  Active: string;
+  ContentRoutingType: string;
+  Tenant: string;
+  CDN: string;
+  RawText: string;
+  validationMessage:string;
+}
+interface SearchDeliveryServiceRequest{
+  XmlId: string;
+}
+interface FullfillDeliveryServiceRequest{
+  XmlId: string;
+  FullfillMessage: string;
+}
+interface CompleteDeliveryServiceRequest{
+  XmlId: string;
+  CompleteMessage: string;
+}
+interface DeleteDeliveryServiceRequest{
+  XmlId: string;
+  DeleteMessage: string;
+}
+interface UpdateDeliveryServiceRequest{
+  XmlId: string;
+  UpdateMessage: string;
+}

Review comment:
       Fixed.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@trafficcontrol.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [trafficcontrol] ocket8888 commented on pull request #6352: Migrate Delivery Service Request from E2E to integrated

Posted by GitBox <gi...@apache.org>.
ocket8888 commented on pull request #6352:
URL: https://github.com/apache/trafficcontrol/pull/6352#issuecomment-974473527


   You're right, I skipped step 3 above. When running just the DSR tests, I get all passing. But now I need to run all tests _except_ the DS tests, to make sure the new tests don't break the old ones.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@trafficcontrol.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org