diff --git a/packages/core/test/unit/html/NodeProcessor.data.ts b/packages/core/test/unit/html/NodeProcessor.data.ts
index 0f6900c05a..142548b09b 100644
--- a/packages/core/test/unit/html/NodeProcessor.data.ts
+++ b/packages/core/test/unit/html/NodeProcessor.data.ts
@@ -43,6 +43,26 @@ export const PROCESS_PANEL_HEADER_SLOT_TAKES_PRIORITY_EXPECTED = `
export const PROCESS_PANEL_HEADER_SLOT_TAKES_PRIORITY_WARN_MSG = "panel has a header slot, 'header' attribute has no effect.";
+export const PROCESS_PANEL_ALT_SLOT_TAKES_PRIORITY = `
+
+
+ Alt slot text
+
+ Alt attribute should be ignored and deleted while alt slot is reserved.
+
+`;
+
+export const PROCESS_PANEL_ALT_SLOT_TAKES_PRIORITY_EXPECTED = `
+
+
+ Alt slot text
+
+ Alt attribute should be ignored and deleted while alt slot is reserved.
+
+`;
+
+export const PROCESS_PANEL_ALT_SLOT_TAKES_PRIORITY_WARN_MSG = "panel has a _alt slot, 'alt' attribute has no effect.";
+
// Post Process
export const POST_PROCESS_PANEL_ID_ASSIGNED_USING_HEADER_SLOT = `
@@ -86,6 +106,8 @@ export const PROCESS_QUESTION_HEADER_SLOT_TAKES_PRIORITY_EXPECTED = `
`;
+export const PROCESS_QUESTION_HEADER_SLOT_TAKES_PRIORITY_WARN_MSG = "question has a header slot, 'header' attribute has no effect.";
+
export const PROCESS_QUESTION_HINT_SLOT_TAKES_PRIORITY = `
@@ -98,6 +120,8 @@ export const PROCESS_QUESTION_HINT_SLOT_TAKES_PRIORITY_EXPECTED = `
`;
+export const PROCESS_QUESTION_HINT_SLOT_TAKES_PRIORITY_WARN_MSG = "question has a hint slot, 'hint' attribute has no effect.";
+
export const PROCESS_QUESTION_ANSWER_SLOT_TAKES_PRIORITY = `
@@ -110,6 +134,8 @@ export const PROCESS_QUESTION_ANSWER_SLOT_TAKES_PRIORITY_EXPECTED = `
`;
+export const PROCESS_QUESTION_ANSWER_SLOT_TAKES_PRIORITY_WARN_MSG = "question has a answer slot, 'answer' attribute has no effect.";
+
export const PROCESS_QOPTION_ATTRIBUTES = `
@@ -133,6 +159,8 @@ export const PROCESS_QOPTION_REASON_SLOT_TAKES_PRIORITY_EXPECTED = `
`;
+export const PROCESS_QOPTION_REASON_SLOT_TAKES_PRIORITY_WARN_MSG = "q-option has a reason slot, 'reason' attribute has no effect.";
+
export const PROCESS_QUIZ_ATTRIBUTES = `
@@ -156,6 +184,8 @@ export const PROCESS_QUIZ_INTRO_SLOT_TAKES_PRIORITY_EXPECTED = `
`;
+export const PROCESS_QUIZ_INTRO_SLOT_TAKES_PRIORITY_WARN_MSG = "quiz has a intro slot, 'intro' attribute has no effect.";
+
/*
* Popovers
*/
@@ -187,7 +217,7 @@ export const PROCESS_POPOVER_HEADER_SLOT_TAKES_PRIORITY_EXPECTED = `
`;
-export const PROCESS_POPOVER_ATTRIBUTES_NO_OVERRIDE_HEADER_WARN_MSG = "popover has a header slot, 'header' attribute has no effect.";
+export const PROCESS_POPOVER_HEADER_SLOT_TAKES_PRIORITY_WARN_MSG = "popover has a header slot, 'header' attribute has no effect.";
export const PROCESS_POPOVER_CONTENT_SLOT_TAKES_PRIORITY = `
@@ -202,7 +232,20 @@ export const PROCESS_POPOVER_CONTENT_SLOT_TAKES_PRIORITY_EXPECTED = `
Content attribute should not be inserted under panel as slot, but should be deleted.
`;
-export const PROCESS_POPOVER_ATTRIBUTES_NO_OVERRIDE_CONTENT_WARN_MSG = "popover has a content slot, 'content' attribute has no effect.";
+export const PROCESS_POPOVER_CONTENT_SLOT_TAKES_PRIORITY_WARN_MSG = "popover has a content slot, 'content' attribute has no effect.";
+
+export const PROCESS_POPOVER_CONTENT_ATTRIBUTE_TAKES_PRIORITY = `
+
+ Src attribute should not be inserted under panel as slot, but should be deleted.
+
+`;
+
+export const PROCESS_POPOVER_CONTENT_ATTRIBUTE_TAKES_PRIORITY_EXPECTED = `
+Some content that should not be overriden
+ Src attribute should not be inserted under panel as slot, but should be deleted.
+
+`;
+export const PROCESS_POPOVER_CONTENT_ATTRIBUTE_TAKES_PRIORITY_WARN_MSG = "popover has a 'content' attribute, 'src' attribute has no effect.";
/*
* Tooltips
@@ -220,6 +263,22 @@ export const PROCESS_TOOLTIP_CONTENT_EXPECTED = `
`;
+export const PROCESS_TOOLTIP_CONTENT_SLOT_TAKES_PRIORITY = `
+
+ Some content slot that should not be overwritten
+ Content attribute should not be inserted under tooltip as slot, but should be deleted.
+
+`;
+
+export const PROCESS_TOOLTIP_CONTENT_SLOT_TAKES_PRIORITY_EXPECTED = `
+
+ Some content slot that should not be overwritten
+ Content attribute should not be inserted under tooltip as slot, but should be deleted.
+
+`;
+
+export const PROCESS_TOOLTIP_CONTENT_SLOT_TAKES_PRIORITY_WARN_MSG = "tooltip has a content slot, 'content' attribute has no effect.";
+
/*
* Modals
*/
@@ -248,6 +307,22 @@ export const PROCESS_MODAL_OK_TEXT_EXPECTED = `
`;
+export const PROCESS_MODAL_HEADER_SLOT_TAKES_PRIORITY = `
+
+ Some header slot content that should not be overwritten
+ Header attribute should not be inserted under modal as slot, but should be deleted.
+
+`;
+
+export const PROCESS_MODAL_HEADER_SLOT_TAKES_PRIORITY_EXPECTED = `
+
+ Some header slot content that should not be overwritten
+ Header attribute should not be inserted under modal as slot, but should be deleted.
+
+`;
+
+export const PROCESS_MODAL_HEADER_SLOT_TAKES_PRIORITY_WARN_MSG = "modal has a header slot, 'header' attribute has no effect.";
+
/*
* Tab, tab-group
*/
@@ -264,6 +339,22 @@ export const PROCESS_TAB_HEADER_EXPECTED = `
`;
+export const PROCESS_TAB_HEADER_SLOT_TAKES_PRIORITY = `
+
+ Some header slot content that should not be overwritten
+ Header attribute should not be inserted under tab as slot, but should be deleted.
+
+`;
+
+export const PROCESS_TAB_HEADER_SLOT_TAKES_PRIORITY_EXPECTED = `
+
+ Some header slot content that should not be overwritten
+ Header attribute should not be inserted under tab as slot, but should be deleted.
+
+`;
+
+export const PROCESS_TAB_HEADER_SLOT_TAKES_PRIORITY_WARN_MSG = "tab has a header slot, 'header' attribute has no effect.";
+
export const PROCESS_TAB_GROUP_HEADER = `
Header attribute should be inserted as header slot and deleted.
@@ -276,6 +367,22 @@ export const PROCESS_TAB_GROUP_HEADER_EXPECTED = `
`;
+export const PROCESS_TAB_GROUP_HEADER_SLOT_TAKES_PRIORITY = `
+
+ Some header slot content that should not be overwritten
+ Header attribute should not be inserted under tab-group as slot, but should be deleted.
+
+`;
+
+export const PROCESS_TAB_GROUP_HEADER_SLOT_TAKES_PRIORITY_EXPECTED = `
+
+ Some header slot content that should not be overwritten
+ Header attribute should not be inserted under tab-group as slot, but should be deleted.
+
+`;
+
+export const PROCESS_TAB_GROUP_HEADER_SLOT_TAKES_PRIORITY_WARN_MSG = "tab-group has a header slot, 'header' attribute has no effect.";
+
/*
* Boxes
*/
@@ -305,6 +412,38 @@ export const PROCESS_BOX_HEADER_EXPECTED = `
`;
+export const PROCESS_BOX_ICON_SLOT_TAKES_PRIORITY = `
+
+ :rocket:
+ Icon attribute should not be inserted under box as slot, but should be deleted.
+
+`;
+
+export const PROCESS_BOX_ICON_SLOT_TAKES_PRIORITY_EXPECTED = `
+
+ :rocket:
+ Icon attribute should not be inserted under box as slot, but should be deleted.
+
+`;
+
+export const PROCESS_BOX_ICON_SLOT_TAKES_PRIORITY_WARN_MSG = "box has a icon slot, 'icon' attribute has no effect.";
+
+export const PROCESS_BOX_HEADER_SLOT_TAKES_PRIORITY = `
+
+ Some header slot content that should not be overwritten
+ Header attribute should not be inserted under box as slot, but should be deleted.
+
+`;
+
+export const PROCESS_BOX_HEADER_SLOT_TAKES_PRIORITY_EXPECTED = `
+
+ Some header slot content that should not be overwritten
+ Header attribute should not be inserted under box as slot, but should be deleted.
+
+`;
+
+export const PROCESS_BOX_HEADER_SLOT_TAKES_PRIORITY_WARN_MSG = "box has a header slot, 'header' attribute has no effect.";
+
/**
* Dropdowns
*/
@@ -337,4 +476,111 @@ export const PROCESS_DROPDOWN_HEADER_SLOT_TAKES_PRIORITY_EXPECTED = `
export const PROCESS_DROPDOWN_HEADER_SLOT_TAKES_PRIORITY_WARN_MSG = "dropdown has a header slot, 'header' attribute has no effect.";
+/**
+ * Scroll-to-top button
+ */
+
+export const PROCESS_SCROLL_TOP_BUTTON_ICON = `
+
+
+`;
+
+export const PROCESS_SCROLL_TOP_BUTTON_ICON_EXPECTED = `
+🚀
+
+`;
+
+export const PROCESS_SCROLL_TOP_BUTTON_ICON_SLOT_TAKES_PRIORITY = `
+
+ :rocket:
+
+`;
+
+export const PROCESS_SCROLL_TOP_BUTTON_ICON_SLOT_TAKES_PRIORITY_EXPECTED = `
+
+ :rocket:
+
+`;
+
+export const PROCESS_SCROLL_TOP_BUTTON_ICON_SLOT_TAKES_PRIORITY_WARN_MSG = "scroll-top-button has a icon slot, 'icon' attribute has no effect.";
+
+/**
+ * A-points
+ */
+
+export const PROCESS_A_POINT_HEADER = `
+
+
+`;
+
+export const PROCESS_A_POINT_HEADER_EXPECTED = `
+lorem ipsum
+
+
+`;
+
+export const PROCESS_A_POINT_CONTENT = `
+
+
+`;
+
+export const PROCESS_A_POINT_CONTENT_EXPECTED = `
+lorem ipsum
+
+
+`;
+
+export const PROCESS_A_POINT_LABEL = `
+
+
+`;
+
+export const PROCESS_A_POINT_LABEL_EXPECTED = `
+L
+
+
+`;
+
+export const PROCESS_A_POINT_HEADER_SLOT_TAKES_PRIORITY = `
+
+ Some header slot content that should not be overwritten
+
+`;
+
+export const PROCESS_A_POINT_HEADER_SLOT_TAKES_PRIORITY_EXPECTED = `
+
+ Some header slot content that should not be overwritten
+
+`;
+
+export const PROCESS_A_POINT_HEADER_SLOT_TAKES_PRIORITY_WARN_MSG = "a-point has a header slot, 'header' attribute has no effect.";
+
+export const PROCESS_A_POINT_CONTENT_SLOT_TAKES_PRIORITY = `
+
+ Some content slot content that should not be overwritten
+
+`;
+
+export const PROCESS_A_POINT_CONTENT_SLOT_TAKES_PRIORITY_EXPECTED = `
+
+ Some content slot content that should not be overwritten
+
+`;
+
+export const PROCESS_A_POINT_CONTENT_SLOT_TAKES_PRIORITY_WARN_MSG = "a-point has a content slot, 'content' attribute has no effect.";
+
+export const PROCESS_A_POINT_LABEL_SLOT_TAKES_PRIORITY = `
+
+ O
+
+`;
+
+export const PROCESS_A_POINT_LABEL_SLOT_TAKES_PRIORITY_EXPECTED = `
+
+ O
+
+`;
+
+export const PROCESS_A_POINT_LABEL_SLOT_TAKES_PRIORITY_WARN_MSG = "a-point has a label slot, 'label' attribute has no effect.";
+
/* eslint-enable max-len */
diff --git a/packages/core/test/unit/html/NodeProcessor.test.ts b/packages/core/test/unit/html/NodeProcessor.test.ts
index 8e7e8cf5be..b94afade25 100644
--- a/packages/core/test/unit/html/NodeProcessor.test.ts
+++ b/packages/core/test/unit/html/NodeProcessor.test.ts
@@ -52,30 +52,66 @@ const processAndVerifyTemplate = (template: string, expectedTemplate: string, po
};
test('processNode processes panel attributes and inserts into dom as slots correctly', () => {
- const warnSpy = jest.spyOn(logger, 'warn');
processAndVerifyTemplate(testData.PROCESS_PANEL_ATTRIBUTES,
testData.PROCESS_PANEL_ATTRIBUTES_EXPECTED);
+});
+
+test('processNode processes panel with header slot taking priority over header attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
processAndVerifyTemplate(testData.PROCESS_PANEL_HEADER_SLOT_TAKES_PRIORITY,
testData.PROCESS_PANEL_HEADER_SLOT_TAKES_PRIORITY_EXPECTED);
expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_PANEL_HEADER_SLOT_TAKES_PRIORITY_WARN_MSG);
});
+test('processNode processes panel with _alt slot taking priority over alt attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
+ processAndVerifyTemplate(testData.PROCESS_PANEL_ALT_SLOT_TAKES_PRIORITY,
+ testData.PROCESS_PANEL_ALT_SLOT_TAKES_PRIORITY_EXPECTED);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_PANEL_ALT_SLOT_TAKES_PRIORITY_WARN_MSG);
+});
+
+test('postProcessNode assigns the correct panel id to panels', () => {
+ processAndVerifyTemplate(testData.POST_PROCESS_PANEL_ID_ASSIGNED_USING_HEADER_SLOT,
+ testData.POST_PROCESS_PANEL_ID_ASSIGNED_USING_HEADER_SLOT_EXPECTED,
+ true);
+});
+
test('processNode processes question attributes and inserts into dom as slots correctly', () => {
processAndVerifyTemplate(testData.PROCESS_QUESTION_ATTRIBUTES,
testData.PROCESS_QUESTION_ATTRIBUTES_EXPECTED);
+});
+
+test('processNode processes question with header slot taking priority over header attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
processAndVerifyTemplate(testData.PROCESS_QUESTION_HEADER_SLOT_TAKES_PRIORITY,
testData.PROCESS_QUESTION_HEADER_SLOT_TAKES_PRIORITY_EXPECTED);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_QUESTION_HEADER_SLOT_TAKES_PRIORITY_WARN_MSG);
+});
+
+test('processNode processes question with hint slot taking priority over hint attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
processAndVerifyTemplate(testData.PROCESS_QUESTION_HINT_SLOT_TAKES_PRIORITY,
testData.PROCESS_QUESTION_HINT_SLOT_TAKES_PRIORITY_EXPECTED);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_QUESTION_HINT_SLOT_TAKES_PRIORITY_WARN_MSG);
+});
+
+test('processNode processes question with answer slot taking priority over answer attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
processAndVerifyTemplate(testData.PROCESS_QUESTION_ANSWER_SLOT_TAKES_PRIORITY,
testData.PROCESS_QUESTION_ANSWER_SLOT_TAKES_PRIORITY_EXPECTED);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_QUESTION_ANSWER_SLOT_TAKES_PRIORITY_WARN_MSG);
});
test('processNode processes q-option attributes and inserts into dom as slots correctly', () => {
processAndVerifyTemplate(testData.PROCESS_QOPTION_ATTRIBUTES,
testData.PROCESS_QOPTION_ATTRIBUTES_EXPECTED);
+});
+
+test('processNode processes q-option with reason slot taking priority over reason attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
processAndVerifyTemplate(testData.PROCESS_QOPTION_REASON_SLOT_TAKES_PRIORITY,
testData.PROCESS_QOPTION_REASON_SLOT_TAKES_PRIORITY_EXPECTED);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_QOPTION_REASON_SLOT_TAKES_PRIORITY_WARN_MSG);
});
test('processNode processes quiz attributes and inserts into dom as slots correctly', () => {
@@ -85,16 +121,37 @@ test('processNode processes quiz attributes and inserts into dom as slots correc
testData.PROCESS_QUIZ_INTRO_SLOT_TAKES_PRIORITY_EXPECTED);
});
-test('processNode processes popover attributes and inserts into dom as slots correctly', () => {
+test('processNode processes quiz with intro slot taking priority over intro attribute', () => {
const warnSpy = jest.spyOn(logger, 'warn');
+ processAndVerifyTemplate(testData.PROCESS_QUIZ_INTRO_SLOT_TAKES_PRIORITY,
+ testData.PROCESS_QUIZ_INTRO_SLOT_TAKES_PRIORITY_EXPECTED);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_QUIZ_INTRO_SLOT_TAKES_PRIORITY_WARN_MSG);
+});
+
+test('processNode processes popover attributes and inserts into dom as slots correctly', () => {
processAndVerifyTemplate(testData.PROCESS_POPOVER_ATTRIBUTES,
testData.PROCESS_POPOVER_ATTRIBUTES_EXPECTED);
+});
+
+test('processNode processes popover with header slot taking priority over header attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
processAndVerifyTemplate(testData.PROCESS_POPOVER_HEADER_SLOT_TAKES_PRIORITY,
testData.PROCESS_POPOVER_HEADER_SLOT_TAKES_PRIORITY_EXPECTED);
- expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_POPOVER_ATTRIBUTES_NO_OVERRIDE_HEADER_WARN_MSG);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_POPOVER_HEADER_SLOT_TAKES_PRIORITY_WARN_MSG);
+});
+
+test('processNode processes popover with content slot taking priority over content attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
processAndVerifyTemplate(testData.PROCESS_POPOVER_CONTENT_SLOT_TAKES_PRIORITY,
testData.PROCESS_POPOVER_CONTENT_SLOT_TAKES_PRIORITY_EXPECTED);
- expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_POPOVER_ATTRIBUTES_NO_OVERRIDE_CONTENT_WARN_MSG);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_POPOVER_CONTENT_SLOT_TAKES_PRIORITY_WARN_MSG);
+});
+
+test('processNode processes popover with content attribute taking priority over src attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
+ processAndVerifyTemplate(testData.PROCESS_POPOVER_CONTENT_ATTRIBUTE_TAKES_PRIORITY,
+ testData.PROCESS_POPOVER_CONTENT_ATTRIBUTE_TAKES_PRIORITY_EXPECTED);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_POPOVER_CONTENT_ATTRIBUTE_TAKES_PRIORITY_WARN_MSG);
});
test('processNode processes tooltip attributes and inserts into dom as slots correctly', () => {
@@ -102,6 +159,13 @@ test('processNode processes tooltip attributes and inserts into dom as slots cor
testData.PROCESS_TOOLTIP_CONTENT_EXPECTED);
});
+test('processNode processes tooltip with content slot taking priority over content attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
+ processAndVerifyTemplate(testData.PROCESS_TOOLTIP_CONTENT_SLOT_TAKES_PRIORITY,
+ testData.PROCESS_TOOLTIP_CONTENT_SLOT_TAKES_PRIORITY_EXPECTED);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_TOOLTIP_CONTENT_SLOT_TAKES_PRIORITY_WARN_MSG);
+});
+
test('processNode processes modal attributes and inserts into dom as slots correctly', () => {
processAndVerifyTemplate(testData.PROCESS_MODAL_HEADER,
testData.PROCESS_MODAL_HEADER_EXPECTED);
@@ -111,6 +175,13 @@ test('processNode processes modal attributes and inserts into dom as slots corre
testData.PROCESS_MODAL_OK_TEXT_EXPECTED);
});
+test('processNode processes modal with header slot taking priority over header attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
+ processAndVerifyTemplate(testData.PROCESS_MODAL_HEADER_SLOT_TAKES_PRIORITY,
+ testData.PROCESS_MODAL_HEADER_SLOT_TAKES_PRIORITY_EXPECTED);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_MODAL_HEADER_SLOT_TAKES_PRIORITY_WARN_MSG);
+});
+
test('processNode processes tab & tab-group attributes and inserts into dom as slots correctly', () => {
processAndVerifyTemplate(testData.PROCESS_TAB_HEADER,
testData.PROCESS_TAB_HEADER_EXPECTED);
@@ -118,6 +189,20 @@ test('processNode processes tab & tab-group attributes and inserts into dom as s
testData.PROCESS_TAB_GROUP_HEADER_EXPECTED);
});
+test('processNode processes tab with header slot taking priority over header attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
+ processAndVerifyTemplate(testData.PROCESS_TAB_HEADER_SLOT_TAKES_PRIORITY,
+ testData.PROCESS_TAB_HEADER_SLOT_TAKES_PRIORITY_EXPECTED);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_TAB_HEADER_SLOT_TAKES_PRIORITY_WARN_MSG);
+});
+
+test('processNode processes tab-group with header slot taking priority over header attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
+ processAndVerifyTemplate(testData.PROCESS_TAB_GROUP_HEADER_SLOT_TAKES_PRIORITY,
+ testData.PROCESS_TAB_GROUP_HEADER_SLOT_TAKES_PRIORITY_EXPECTED);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_TAB_GROUP_HEADER_SLOT_TAKES_PRIORITY_WARN_MSG);
+});
+
test('processNode processes box attributes and inserts into dom as slots correctly', () => {
processAndVerifyTemplate(testData.PROCESS_BOX_ICON,
testData.PROCESS_BOX_ICON_EXPECTED);
@@ -125,10 +210,18 @@ test('processNode processes box attributes and inserts into dom as slots correct
testData.PROCESS_BOX_HEADER_EXPECTED);
});
-test('postProcessNode assigns the correct panel id to panels', () => {
- processAndVerifyTemplate(testData.POST_PROCESS_PANEL_ID_ASSIGNED_USING_HEADER_SLOT,
- testData.POST_PROCESS_PANEL_ID_ASSIGNED_USING_HEADER_SLOT_EXPECTED,
- true);
+test('processNode processes box with icon slot taking priority over icon attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
+ processAndVerifyTemplate(testData.PROCESS_BOX_ICON_SLOT_TAKES_PRIORITY,
+ testData.PROCESS_BOX_ICON_SLOT_TAKES_PRIORITY_EXPECTED);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_BOX_ICON_SLOT_TAKES_PRIORITY_WARN_MSG);
+});
+
+test('processNode processes box with header slot taking priority over header attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
+ processAndVerifyTemplate(testData.PROCESS_BOX_HEADER_SLOT_TAKES_PRIORITY,
+ testData.PROCESS_BOX_HEADER_SLOT_TAKES_PRIORITY_EXPECTED);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_BOX_HEADER_SLOT_TAKES_PRIORITY_WARN_MSG);
});
test('processNode processes dropdown header attribute and inserts into DOM as header slot correctly', () => {
@@ -143,6 +236,48 @@ test('processNode processes dropdown with header slot taking priority over heade
expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_DROPDOWN_HEADER_SLOT_TAKES_PRIORITY_WARN_MSG);
});
+test('processNode processes scroll-top-button attributes and inserts into dom as slots correctly', () => {
+ processAndVerifyTemplate(testData.PROCESS_SCROLL_TOP_BUTTON_ICON,
+ testData.PROCESS_SCROLL_TOP_BUTTON_ICON_EXPECTED);
+});
+
+test('processNode processes scroll-top-button with icon slot taking priority over icon attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
+ processAndVerifyTemplate(testData.PROCESS_SCROLL_TOP_BUTTON_ICON_SLOT_TAKES_PRIORITY,
+ testData.PROCESS_SCROLL_TOP_BUTTON_ICON_SLOT_TAKES_PRIORITY_EXPECTED);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_SCROLL_TOP_BUTTON_ICON_SLOT_TAKES_PRIORITY_WARN_MSG);
+});
+
+test('processNode processes a-point attributes and inserts into dom as slots correctly', () => {
+ processAndVerifyTemplate(testData.PROCESS_A_POINT_HEADER,
+ testData.PROCESS_A_POINT_HEADER_EXPECTED);
+ processAndVerifyTemplate(testData.PROCESS_A_POINT_CONTENT,
+ testData.PROCESS_A_POINT_CONTENT_EXPECTED);
+ processAndVerifyTemplate(testData.PROCESS_A_POINT_LABEL,
+ testData.PROCESS_A_POINT_LABEL_EXPECTED);
+});
+
+test('processNode processes a-point with header slot taking priority over header attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
+ processAndVerifyTemplate(testData.PROCESS_A_POINT_HEADER_SLOT_TAKES_PRIORITY,
+ testData.PROCESS_A_POINT_HEADER_SLOT_TAKES_PRIORITY_EXPECTED);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_A_POINT_HEADER_SLOT_TAKES_PRIORITY_WARN_MSG);
+});
+
+test('processNode processes a-point with content slot taking priority over content attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
+ processAndVerifyTemplate(testData.PROCESS_A_POINT_CONTENT_SLOT_TAKES_PRIORITY,
+ testData.PROCESS_A_POINT_CONTENT_SLOT_TAKES_PRIORITY_EXPECTED);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_A_POINT_CONTENT_SLOT_TAKES_PRIORITY_WARN_MSG);
+});
+
+test('processNode processes a-point with label slot taking priority over label attribute', () => {
+ const warnSpy = jest.spyOn(logger, 'warn');
+ processAndVerifyTemplate(testData.PROCESS_A_POINT_LABEL_SLOT_TAKES_PRIORITY,
+ testData.PROCESS_A_POINT_LABEL_SLOT_TAKES_PRIORITY_EXPECTED);
+ expect(warnSpy).toHaveBeenCalledWith(testData.PROCESS_A_POINT_LABEL_SLOT_TAKES_PRIORITY_WARN_MSG);
+});
+
test('processNode does not log warning when lazy pic has width or height',
() => {
const nodeProcessor = getNewDefaultNodeProcessor();