import { WidgetProps } from "widgets/BaseWidget"; import { ContainerWidgetProps } from "widgets/ContainerWidget"; import { migrateTextStyleFromTextWidget } from "utils/migrations/TextWidgetReplaceTextStyle"; import { FontStyleTypes, TextSizes } from "constants/WidgetConstants"; const inputDsl1: ContainerWidgetProps = { widgetName: "MainContainer", backgroundColor: "none", rightColumn: 1118, snapColumns: 16, detachFromLayout: true, widgetId: "0", topRow: 0, bottomRow: 1280, containerStyle: "none", snapRows: 33, parentRowSpace: 1, type: "CANVAS_WIDGET", canExtend: true, version: 15, minHeight: 1292, parentColumnSpace: 1, dynamicTriggerPathList: [], dynamicBindingPathList: [], leftColumn: 0, isLoading: false, parentId: "", renderMode: "CANVAS", children: [ { isVisible: true, text: "Label", textStyle: "LABEL", textAlign: "LEFT", widgetName: "Text1", version: 1, type: "TEXT_WIDGET", isLoading: false, parentColumnSpace: 67.375, parentRowSpace: 40, leftColumn: 3, rightColumn: 7, topRow: 1, bottomRow: 2, parentId: "0", widgetId: "yf8bhokz7d", dynamicBindingPathList: [], renderMode: "CANVAS", }, ], }; const inputDsl2: ContainerWidgetProps = { widgetName: "MainContainer", backgroundColor: "none", rightColumn: 1118, snapColumns: 16, detachFromLayout: true, widgetId: "0", topRow: 0, bottomRow: 1280, containerStyle: "none", snapRows: 33, parentRowSpace: 1, type: "CANVAS_WIDGET", canExtend: true, version: 15, minHeight: 1292, parentColumnSpace: 1, dynamicTriggerPathList: [], dynamicBindingPathList: [], leftColumn: 0, isLoading: false, parentId: "", renderMode: "CANVAS", children: [ { isVisible: true, text: "Label", textStyle: "HEADING", textAlign: "LEFT", widgetName: "Text1", version: 1, type: "TEXT_WIDGET", isLoading: false, parentColumnSpace: 67.375, parentRowSpace: 40, leftColumn: 3, rightColumn: 7, topRow: 1, bottomRow: 2, parentId: "0", widgetId: "yf8bhokz7d", dynamicBindingPathList: [], renderMode: "CANVAS", }, ], }; const inputDsl3: ContainerWidgetProps = { widgetName: "MainContainer", backgroundColor: "none", rightColumn: 1118, snapColumns: 16, detachFromLayout: true, widgetId: "0", topRow: 0, bottomRow: 1280, containerStyle: "none", snapRows: 33, parentRowSpace: 1, type: "CANVAS_WIDGET", canExtend: true, version: 15, minHeight: 1292, parentColumnSpace: 1, dynamicTriggerPathList: [], dynamicBindingPathList: [], leftColumn: 0, isLoading: false, parentId: "", renderMode: "CANVAS", children: [ { isVisible: true, text: "Label", textStyle: "BODY", textAlign: "LEFT", widgetName: "Text1", version: 1, type: "TEXT_WIDGET", isLoading: false, parentColumnSpace: 67.375, parentRowSpace: 40, leftColumn: 3, rightColumn: 7, topRow: 1, bottomRow: 2, parentId: "0", widgetId: "yf8bhokz7d", dynamicBindingPathList: [], renderMode: "CANVAS", }, ], }; const outputDsl1: ContainerWidgetProps = { widgetName: "MainContainer", backgroundColor: "none", rightColumn: 1118, snapColumns: 16, detachFromLayout: true, widgetId: "0", topRow: 0, bottomRow: 1280, containerStyle: "none", snapRows: 33, parentRowSpace: 1, type: "CANVAS_WIDGET", canExtend: true, version: 15, minHeight: 1292, parentColumnSpace: 1, dynamicTriggerPathList: [], dynamicBindingPathList: [], leftColumn: 0, isLoading: false, parentId: "", renderMode: "CANVAS", children: [ { isVisible: true, text: "Label", textAlign: "LEFT", widgetName: "Text1", version: 1, type: "TEXT_WIDGET", isLoading: false, parentColumnSpace: 67.375, parentRowSpace: 40, leftColumn: 3, rightColumn: 7, topRow: 1, bottomRow: 2, parentId: "0", widgetId: "yf8bhokz7d", dynamicBindingPathList: [], fontSize: TextSizes.PARAGRAPH, fontStyle: FontStyleTypes.BOLD, renderMode: "CANVAS", }, ], }; const outputDsl2: ContainerWidgetProps = { widgetName: "MainContainer", backgroundColor: "none", rightColumn: 1118, snapColumns: 16, detachFromLayout: true, widgetId: "0", topRow: 0, bottomRow: 1280, containerStyle: "none", snapRows: 33, parentRowSpace: 1, type: "CANVAS_WIDGET", canExtend: true, version: 15, minHeight: 1292, parentColumnSpace: 1, dynamicTriggerPathList: [], dynamicBindingPathList: [], leftColumn: 0, isLoading: false, parentId: "", renderMode: "CANVAS", children: [ { isVisible: true, text: "Label", textAlign: "LEFT", widgetName: "Text1", version: 1, type: "TEXT_WIDGET", isLoading: false, parentColumnSpace: 67.375, parentRowSpace: 40, leftColumn: 3, rightColumn: 7, topRow: 1, bottomRow: 2, parentId: "0", widgetId: "yf8bhokz7d", dynamicBindingPathList: [], fontSize: TextSizes.HEADING1, fontStyle: FontStyleTypes.BOLD, renderMode: "CANVAS", }, ], }; const outputDsl3: ContainerWidgetProps = { widgetName: "MainContainer", backgroundColor: "none", rightColumn: 1118, snapColumns: 16, detachFromLayout: true, widgetId: "0", topRow: 0, bottomRow: 1280, containerStyle: "none", snapRows: 33, parentRowSpace: 1, type: "CANVAS_WIDGET", canExtend: true, version: 15, minHeight: 1292, parentColumnSpace: 1, dynamicTriggerPathList: [], dynamicBindingPathList: [], leftColumn: 0, isLoading: false, parentId: "", renderMode: "CANVAS", children: [ { isVisible: true, text: "Label", textAlign: "LEFT", widgetName: "Text1", version: 1, type: "TEXT_WIDGET", isLoading: false, parentColumnSpace: 67.375, parentRowSpace: 40, leftColumn: 3, rightColumn: 7, topRow: 1, bottomRow: 2, parentId: "0", widgetId: "yf8bhokz7d", dynamicBindingPathList: [], fontSize: TextSizes.PARAGRAPH, renderMode: "CANVAS", }, ], }; describe("Text Widget Property Pane Upgrade", () => { it("To test text widget textStyle property is migrated", () => { const newDsl = migrateTextStyleFromTextWidget(inputDsl1); expect(JSON.stringify(newDsl) === JSON.stringify(outputDsl1)); }); it("To test text widget textStyle property is migrated", () => { const newDsl = migrateTextStyleFromTextWidget(inputDsl2); expect(JSON.stringify(newDsl) === JSON.stringify(outputDsl2)); }); it("To test text widget textStyle property is migrated", () => { const newDsl = migrateTextStyleFromTextWidget(inputDsl3); expect(JSON.stringify(newDsl) === JSON.stringify(outputDsl3)); }); });