diff --git a/demo-shell/src/app/components/search/search-filter-chips.component.html b/demo-shell/src/app/components/search/search-filter-chips.component.html
index 2b5c03c8b54..9b5de08a00a 100644
--- a/demo-shell/src/app/components/search/search-filter-chips.component.html
+++ b/demo-shell/src/app/components/search/search-filter-chips.component.html
@@ -12,7 +12,7 @@
- refresh
+ refresh
diff --git a/e2e-playwright/page-object/components/material/index.ts b/e2e-playwright/page-object/components/material/index.ts
index f3f96ee95e0..e80ddb3820d 100644
--- a/e2e-playwright/page-object/components/material/index.ts
+++ b/e2e-playwright/page-object/components/material/index.ts
@@ -16,3 +16,4 @@
*/
export * from './error.component';
+export * from './validation.component';
diff --git a/e2e-playwright/page-object/components/material/material-locators.ts b/e2e-playwright/page-object/components/material/material-locators.ts
index 87d3af572cf..fc68a6868f8 100644
--- a/e2e-playwright/page-object/components/material/material-locators.ts
+++ b/e2e-playwright/page-object/components/material/material-locators.ts
@@ -16,7 +16,10 @@
*/
export const materialLocators = {
- Error: {
- root: 'mat-error'
- }
+ Error: {
+ root: 'mat-error'
+ },
+ Tooltip: {
+ root: 'mat-tooltip-component'
+ }
};
diff --git a/e2e-playwright/page-object/components/material/validation.component.ts b/e2e-playwright/page-object/components/material/validation.component.ts
new file mode 100644
index 00000000000..347ddb93a85
--- /dev/null
+++ b/e2e-playwright/page-object/components/material/validation.component.ts
@@ -0,0 +1,29 @@
+/*!
+ * @license
+ * Copyright © 2005-2024 Hyland Software, Inc. and its affiliates. All rights reserved.
+ *
+ * Licensed 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 { Page } from '@playwright/test';
+import { BaseComponent } from '../base.component';
+import { materialLocators } from './material-locators';
+
+export class TooltipComponent extends BaseComponent {
+ private static rootElement = materialLocators.Tooltip.root;
+ public content = this.getChild('div');
+
+ constructor(page: Page) {
+ super(page, TooltipComponent.rootElement);
+ }
+}
diff --git a/e2e-playwright/process-services-cloud/components/group.component.ts b/e2e-playwright/process-services-cloud/components/group.component.ts
index 658c3891b88..0834dc080d6 100644
--- a/e2e-playwright/process-services-cloud/components/group.component.ts
+++ b/e2e-playwright/process-services-cloud/components/group.component.ts
@@ -17,11 +17,13 @@
import { Page } from '@playwright/test';
import { BaseComponent } from '../../page-object/components/base.component';
-import { ErrorComponent } from '../../page-object/components';
+import { ErrorComponent, TooltipComponent, ListboxComponent } from '../../page-object/components';
export class GroupComponent extends BaseComponent {
private static rootElement = 'adf-cloud-group';
public error = new ErrorComponent(this.page);
+ public tooltip = new TooltipComponent(this.page);
+ public listbox = new ListboxComponent(this.page);
public groupNaming = this.getChild('[data-automation-id="adf-cloud-group-chip-list"]');
public groupInput = this.getChild('[data-automation-id="adf-group-cloud-search-input"]');
@@ -31,4 +33,5 @@ export class GroupComponent extends BaseComponent {
}
public getUserLocator = (userName: string) => this.getChild(`[data-automation-id="adf-cloud-group-chip-${userName}"]`);
+
}
diff --git a/e2e-playwright/process-services-cloud/components/people.component.ts b/e2e-playwright/process-services-cloud/components/people.component.ts
index 1d5b511c4dc..c3134b56289 100644
--- a/e2e-playwright/process-services-cloud/components/people.component.ts
+++ b/e2e-playwright/process-services-cloud/components/people.component.ts
@@ -17,11 +17,12 @@
import { Page } from '@playwright/test';
import { BaseComponent } from '../../page-object/components/base.component';
-import { ErrorComponent, ListboxComponent } from '../../page-object/components';
+import { ErrorComponent, TooltipComponent, ListboxComponent } from '../../page-object/components';
export class PeopleComponent extends BaseComponent {
private static rootElement = 'adf-cloud-people';
public error = new ErrorComponent(this.page);
+ public tooltip = new TooltipComponent(this.page);
public listbox = new ListboxComponent(this.page);
public usersNaming = this.getChild('[data-automation-id="adf-cloud-people-chip-list"]');
@@ -32,4 +33,5 @@ export class PeopleComponent extends BaseComponent {
}
public getUserLocator = (userName: string) => this.getChild(`[data-automation-id="adf-people-cloud-chip-${userName}"]`);
+
}
diff --git a/e2e-playwright/process-services-cloud/specs/groups-cloud.e2e.ts b/e2e-playwright/process-services-cloud/specs/groups-cloud.e2e.ts
index cf1020a6e9a..2979453305f 100644
--- a/e2e-playwright/process-services-cloud/specs/groups-cloud.e2e.ts
+++ b/e2e-playwright/process-services-cloud/specs/groups-cloud.e2e.ts
@@ -39,6 +39,9 @@ test.describe('Groups component stories tests', () => {
await processServicesCloud.navigateTo({ moduleNames: ['group-cloud'], componentName: 'group-cloud', story: 'mandatory-preselected-groups' });
await expect.soft(groupComponent.groupNaming).toContainText(expectedUsersName);
+
+ await groupComponent.getUserLocator('Meat Chicken').hover();
+ await expect(groupComponent.tooltip.content).toContainText('Mandatory');
});
test('Invalid Preselected Groups', async ({ processServicesCloud, groupComponent }) => {
@@ -49,4 +52,5 @@ test.describe('Groups component stories tests', () => {
await expect(groupComponent.error.content).toContainText(expectedWarningIcon + expectedWarningMessage);
});
+
});
diff --git a/e2e-playwright/process-services-cloud/specs/people-cloud.e2e.ts b/e2e-playwright/process-services-cloud/specs/people-cloud.e2e.ts
index 01cc1267dee..e3ec3ca2561 100644
--- a/e2e-playwright/process-services-cloud/specs/people-cloud.e2e.ts
+++ b/e2e-playwright/process-services-cloud/specs/people-cloud.e2e.ts
@@ -42,6 +42,7 @@ test.describe('People component stories tests', () => {
await peopleComponent.getUserLocator('Kielbasa Sausage').hover();
await expect.soft(peopleComponent.usersNaming).toContainText(expectedUsersName);
+ await expect(peopleComponent.tooltip.content).toContainText('Mandatory');
});
test('Invalid Preselected Users', async ({ processServicesCloud, peopleComponent }) => {
diff --git a/lib/content-services/src/lib/aspect-list/aspect-list.component.html b/lib/content-services/src/lib/aspect-list/aspect-list.component.html
index f27daac042f..8877ca36d30 100644
--- a/lib/content-services/src/lib/aspect-list/aspect-list.component.html
+++ b/lib/content-services/src/lib/aspect-list/aspect-list.component.html
@@ -16,7 +16,7 @@
diff --git a/lib/content-services/src/lib/aspect-list/aspect-list.module.ts b/lib/content-services/src/lib/aspect-list/aspect-list.module.ts
index 03308022a1a..91a57f41e85 100644
--- a/lib/content-services/src/lib/aspect-list/aspect-list.module.ts
+++ b/lib/content-services/src/lib/aspect-list/aspect-list.module.ts
@@ -26,6 +26,7 @@ import { TranslateModule } from '@ngx-translate/core';
import { MatDialogModule } from '@angular/material/dialog';
import { AspectListDialogComponent } from './aspect-list-dialog.component';
import { MatButtonModule } from '@angular/material/button';
+import { MatTooltipModule } from '@angular/material/tooltip';
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
import { ContentDirectiveModule } from '../directives/content-directive.module';
@@ -39,10 +40,17 @@ import { ContentDirectiveModule } from '../directives/content-directive.module';
TranslateModule,
MatDialogModule,
MatButtonModule,
+ MatTooltipModule,
MatProgressSpinnerModule,
ContentDirectiveModule
],
- exports: [AspectListComponent, AspectListDialogComponent],
- declarations: [AspectListComponent, AspectListDialogComponent]
+ exports: [
+ AspectListComponent,
+ AspectListDialogComponent
+ ],
+ declarations: [
+ AspectListComponent,
+ AspectListDialogComponent
+ ]
})
-export class AspectListModule {}
+export class AspectListModule { }
diff --git a/lib/content-services/src/lib/content-node-selector/content-node-selector.component.html b/lib/content-services/src/lib/content-node-selector/content-node-selector.component.html
index 00cd590fbf7..93a71452667 100644
--- a/lib/content-services/src/lib/content-node-selector/content-node-selector.component.html
+++ b/lib/content-services/src/lib/content-node-selector/content-node-selector.component.html
@@ -25,7 +25,7 @@
info
+ matTooltip="{{ getWarningMessage() | translate }}">info
diff --git a/lib/content-services/src/lib/content-node-selector/content-node-selector.component.spec.ts b/lib/content-services/src/lib/content-node-selector/content-node-selector.component.spec.ts
index 8daaeb7ba3f..f27f4fd2b4b 100644
--- a/lib/content-services/src/lib/content-node-selector/content-node-selector.component.spec.ts
+++ b/lib/content-services/src/lib/content-node-selector/content-node-selector.component.spec.ts
@@ -334,12 +334,12 @@ describe('ContentNodeSelectorComponent', () => {
fixture.detectChanges();
const infoMatIcon = getTabInfoButton();
- const iconTooltipMessage = infoMatIcon.attributes['title'];
+ const iconTooltipMessage = infoMatIcon.attributes['ng-reflect-message'];
const expectedMessage = 'NODE_SELECTOR.UPLOAD_BUTTON_SEARCH_WARNING_MESSAGE';
expect(component.getWarningMessage()).toEqual(expectedMessage);
- expect(iconTooltipMessage).toEqual(expectedMessage);
+ expect(iconTooltipMessage).toEqual(expectedMessage.substring(0, 30));
});
it('should not be able to show warning message if it is not in search mode', () => {
@@ -394,11 +394,11 @@ describe('ContentNodeSelectorComponent', () => {
fixture.detectChanges();
const infoMatIcon = getTabInfoButton();
- const iconTooltipMessage = infoMatIcon.attributes['title'];
+ const iconTooltipMessage = infoMatIcon.attributes['ng-reflect-message'];
const expectedMessage = 'NODE_SELECTOR.UPLOAD_BUTTON_PERMISSION_WARNING_MESSAGE';
expect(component.getWarningMessage()).toEqual(expectedMessage);
- expect(iconTooltipMessage).toEqual(expectedMessage);
+ expect(iconTooltipMessage).toEqual(expectedMessage.substring(0, 30));
});
it('should not be able to show warning message while loading documents', () => {
diff --git a/lib/content-services/src/lib/dialogs/node-lock.dialog.html b/lib/content-services/src/lib/dialogs/node-lock.dialog.html
index 23f917f7492..7effb315cbc 100644
--- a/lib/content-services/src/lib/dialogs/node-lock.dialog.html
+++ b/lib/content-services/src/lib/dialogs/node-lock.dialog.html
@@ -5,13 +5,13 @@