> Pull Request Template > > Use this template to quickly create a well written pull request. Delete all quotes before creating the pull request. > ## Description Removing Feature flag requirement for auto layout since its been in prod for a while and also feature flags are unavailable for public apps. > > #### PR fixes following issue(s) Fixes #24848 > if no issue exists, please create an issue and ask the maintainers about this first > > #### Media > A video or a GIF is preferred. when using Loom, don’t embed because it looks like it’s a GIF. instead, just link to the video > > #### Type of change > Please delete options that are not relevant. - Bug fix (non-breaking change which fixes an issue) - New feature (non-breaking change which adds functionality) - Breaking change (fix or feature that would cause existing functionality to not work as expected) - Chore (housekeeping or task changes that don't impact user perception) - This change requires a documentation update > > > ## Testing > #### How Has This Been Tested? > Please describe the tests that you ran to verify your changes. Also list any relevant details for your test configuration. > Delete anything that is not relevant - [ ] Manual - [ ] Jest - [ ] Cypress > > #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
100 lines
2.5 KiB
TypeScript
100 lines
2.5 KiB
TypeScript
import { render } from "@testing-library/react";
|
|
import { dark, theme } from "constants/DefaultTheme";
|
|
import React from "react";
|
|
import { Provider } from "react-redux";
|
|
import configureStore from "redux-mock-store";
|
|
import { ThemeProvider } from "styled-components";
|
|
import type { DividerWidgetProps } from "./";
|
|
import DividerWidget from "./";
|
|
|
|
describe("<DividerWidget />", () => {
|
|
const initialState = {
|
|
ui: {
|
|
appSettingsPane: {
|
|
isOpen: false,
|
|
},
|
|
users: {
|
|
featureFlag: {
|
|
data: {},
|
|
},
|
|
},
|
|
widgetDragResize: {
|
|
lastSelectedWidget: "Widget1",
|
|
selectedWidgets: ["Widget1"],
|
|
},
|
|
propertyPane: {
|
|
isVisible: true,
|
|
widgetId: "Widget1",
|
|
},
|
|
debugger: {
|
|
errors: {},
|
|
},
|
|
editor: {
|
|
isPreviewMode: false,
|
|
},
|
|
widgetReflow: {
|
|
enableReflow: true,
|
|
},
|
|
autoHeightUI: {
|
|
isAutoHeightWithLimitsChanging: false,
|
|
},
|
|
mainCanvas: {
|
|
width: 1159,
|
|
},
|
|
canvasSelection: {
|
|
isDraggingForSelection: false,
|
|
},
|
|
},
|
|
entities: { canvasWidgets: {}, app: { mode: "canvas" } },
|
|
};
|
|
|
|
function renderDividerWidget(props: Partial<DividerWidgetProps> = {}) {
|
|
const defaultProps: DividerWidgetProps = {
|
|
orientation: "horizontal",
|
|
capType: "nc",
|
|
capSide: -1,
|
|
strokeStyle: "solid",
|
|
dividerColor: "black",
|
|
thickness: 2,
|
|
widgetId: "Widget1",
|
|
type: "DIVIDER_WIDGET",
|
|
widgetName: "Divider 1",
|
|
parentId: "Container1",
|
|
renderMode: "CANVAS",
|
|
parentColumnSpace: 2,
|
|
parentRowSpace: 3,
|
|
leftColumn: 2,
|
|
rightColumn: 4,
|
|
topRow: 1,
|
|
bottomRow: 2,
|
|
isLoading: false,
|
|
version: 1,
|
|
disablePropertyPane: false,
|
|
...props,
|
|
};
|
|
// Mock store to bypass the error of react-redux
|
|
const store = configureStore()(initialState);
|
|
return render(
|
|
<Provider store={store}>
|
|
<ThemeProvider
|
|
theme={{ ...theme, colors: { ...theme.colors, ...dark } }}
|
|
>
|
|
<DividerWidget {...defaultProps} />
|
|
</ThemeProvider>
|
|
</Provider>,
|
|
);
|
|
}
|
|
|
|
test("should render Divider widget horizontal by default", async () => {
|
|
const { queryByTestId } = renderDividerWidget();
|
|
|
|
expect(queryByTestId("dividerHorizontal")).toBeTruthy();
|
|
});
|
|
|
|
test("should render Divider vertical", async () => {
|
|
const { queryByTestId } = renderDividerWidget({ orientation: "vertical" });
|
|
|
|
expect(queryByTestId("dividerVertical")).toBeTruthy();
|
|
});
|
|
});
|