You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by di...@apache.org on 2022/08/16 17:18:31 UTC

[superset] 03/03: Lint

This is an automated email from the ASF dual-hosted git repository.

diegopucci pushed a commit to branch chore/drill-to-detail-modal-tests
in repository https://gitbox.apache.org/repos/asf/superset.git

commit 1d72d095abc3dfdcdd848a13e31efba900f3be2e
Author: geido <di...@gmail.com>
AuthorDate: Tue Aug 16 20:18:10 2022 +0300

    Lint
---
 .../src/components/Chart/DrillDetailModal.test.tsx | 48 ++++++-----
 .../DrillDetailPane/DrillDetailPane.test.tsx       | 96 +++++++++++-----------
 2 files changed, 74 insertions(+), 70 deletions(-)

diff --git a/superset-frontend/src/components/Chart/DrillDetailModal.test.tsx b/superset-frontend/src/components/Chart/DrillDetailModal.test.tsx
index 81ead96438..20f319ce4f 100644
--- a/superset-frontend/src/components/Chart/DrillDetailModal.test.tsx
+++ b/superset-frontend/src/components/Chart/DrillDetailModal.test.tsx
@@ -19,29 +19,29 @@
 import React from 'react';
 import { render, screen, waitFor } from 'spec/helpers/testing-library';
 import { getMockStoreWithNativeFilters } from 'spec/fixtures/mockStore';
-import chartQueries, { sliceIdĀ } from 'spec/fixtures/mockChartQueries';
-import DrillDetailModal from './DrillDetailModal';
+import chartQueries, { sliceId } from 'spec/fixtures/mockChartQueries';
 import { QueryFormData } from '@superset-ui/core';
 import fetchMock from 'fetch-mock';
 import userEvent from '@testing-library/user-event';
+import DrillDetailModal from './DrillDetailModal';
 
 const chart = chartQueries[sliceId];
 const setup = (overrides: Record<string, any> = {}) => {
   const store = getMockStoreWithNativeFilters();
   const props = {
-  chartId: sliceId,
-  initialFilters: [],
-  formData: chart.form_data as unknown as QueryFormData,
-  ...overrides,
-}
-  return render(
-    <DrillDetailModal {...props} />, {
+    chartId: sliceId,
+    initialFilters: [],
+    formData: chart.form_data as unknown as QueryFormData,
+    ...overrides,
+  };
+  return render(<DrillDetailModal {...props} />, {
     useRedux: true,
     useRouter: true,
-    store
+    store,
   });
 };
-const waitForRender = (overrides: Record<string, any> = {}) => waitFor(() => setup(overrides));
+const waitForRender = (overrides: Record<string, any> = {}) =>
+  waitFor(() => setup(overrides));
 
 fetchMock.post(
   'end:/datasource/samples?force=false&datasource_type=table&datasource_id=7&per_page=50&page=1',
@@ -69,36 +69,42 @@ test('should render', async () => {
 
 test('should render the title', async () => {
   await waitForRender();
-  expect(screen.getByText(`Drill to detail: ${chart.form_data.slice_name}`)).toBeInTheDocument();
+  expect(
+    screen.getByText(`Drill to detail: ${chart.form_data.slice_name}`),
+  ).toBeInTheDocument();
 });
 
 test('should render the modal', async () => {
   await waitForRender();
-  expect(screen.getByRole("dialog")).toBeInTheDocument();
+  expect(screen.getByRole('dialog')).toBeInTheDocument();
 });
 
 test('should not render the modal', async () => {
   await waitForRender({
     initialFilters: undefined,
   });
-  expect(screen.queryByRole("dialog")).not.toBeInTheDocument();
+  expect(screen.queryByRole('dialog')).not.toBeInTheDocument();
 });
 
 test('should render the button', async () => {
   await waitForRender();
-  expect(screen.getByRole("button", {name: "Edit chart"})).toBeInTheDocument();
-  expect(screen.getAllByRole("button", {name: "Close"})).toHaveLength(2);
+  expect(
+    screen.getByRole('button', { name: 'Edit chart' }),
+  ).toBeInTheDocument();
+  expect(screen.getAllByRole('button', { name: 'Close' })).toHaveLength(2);
 });
 
 test('should close the modal', async () => {
   await waitForRender();
-  expect(screen.getByRole("dialog")).toBeInTheDocument();
-  userEvent.click(screen.getAllByRole("button", {name: "Close"})[1]);
-  expect(screen.queryByRole("dialog")).not.toBeInTheDocument();
+  expect(screen.getByRole('dialog')).toBeInTheDocument();
+  userEvent.click(screen.getAllByRole('button', { name: 'Close' })[1]);
+  expect(screen.queryByRole('dialog')).not.toBeInTheDocument();
 });
 
 test('should forward to Explore', async () => {
   await waitForRender();
-  userEvent.click(screen.getByRole("button", {name: "Edit chart"}));
-  expect(mockHistoryPush).toHaveBeenCalledWith(`/explore/?dashboard_page_id=&slice_id=${sliceId}`);
+  userEvent.click(screen.getByRole('button', { name: 'Edit chart' }));
+  expect(mockHistoryPush).toHaveBeenCalledWith(
+    `/explore/?dashboard_page_id=&slice_id=${sliceId}`,
+  );
 });
diff --git a/superset-frontend/src/dashboard/components/DrillDetailPane/DrillDetailPane.test.tsx b/superset-frontend/src/dashboard/components/DrillDetailPane/DrillDetailPane.test.tsx
index 7a89af5850..a65d469fb0 100644
--- a/superset-frontend/src/dashboard/components/DrillDetailPane/DrillDetailPane.test.tsx
+++ b/superset-frontend/src/dashboard/components/DrillDetailPane/DrillDetailPane.test.tsx
@@ -19,73 +19,63 @@
 import React from 'react';
 import { render, screen, waitFor } from 'spec/helpers/testing-library';
 import { getMockStoreWithNativeFilters } from 'spec/fixtures/mockStore';
-import chartQueries, { sliceIdĀ } from 'spec/fixtures/mockChartQueries';
-import DrillDetailPane from './DrillDetailPane';
+import chartQueries, { sliceId } from 'spec/fixtures/mockChartQueries';
 import { QueryFormData, SupersetClient } from '@superset-ui/core';
 import fetchMock from 'fetch-mock';
+import DrillDetailPane from './DrillDetailPane';
 
 const chart = chartQueries[sliceId];
 const setup = (overrides: Record<string, any> = {}) => {
   const store = getMockStoreWithNativeFilters();
   const props = {
-  initialFilters: [],
-  formData: chart.form_data as unknown as QueryFormData,
-  ...overrides,
-}
-  return render(
-    <DrillDetailPane {...props} />, {
+    initialFilters: [],
+    formData: chart.form_data as unknown as QueryFormData,
+    ...overrides,
+  };
+  return render(<DrillDetailPane {...props} />, {
     useRedux: true,
-    store
+    store,
   });
 };
-const waitForRender = (overrides: Record<string, any> = {}) => waitFor(() => setup(overrides));
-const samplesEndpoint = "end:/datasource/samples?force=false&datasource_type=table&datasource_id=7&per_page=50&page=1";
-const fetchWithNoData = () => fetchMock.post(
-  samplesEndpoint,
-  {
+const waitForRender = (overrides: Record<string, any> = {}) =>
+  waitFor(() => setup(overrides));
+const samplesEndpoint =
+  'end:/datasource/samples?force=false&datasource_type=table&datasource_id=7&per_page=50&page=1';
+const fetchWithNoData = () =>
+  fetchMock.post(samplesEndpoint, {
     result: {
       total_count: 0,
       data: [],
       colnames: [],
       coltypes: [],
     },
-  },
-);
-const fetchWithData = () => fetchMock.post(
-  samplesEndpoint,
-  {
+  });
+const fetchWithData = () =>
+  fetchMock.post(samplesEndpoint, {
     result: {
       total_count: 3,
       data: [
         {
-            "year": 1996,
-            "na_sales": 11.27,
-            "eu_sales": 8.89,
+          year: 1996,
+          na_sales: 11.27,
+          eu_sales: 8.89,
         },
         {
-            "year": 1989,
-            "na_sales": 23.2,
-            "eu_sales": 2.26,
+          year: 1989,
+          na_sales: 23.2,
+          eu_sales: 2.26,
         },
         {
-            "year": 1999,
-            "na_sales": 9,
-            "eu_sales": 6.18,
+          year: 1999,
+          na_sales: 9,
+          eu_sales: 6.18,
         },
-    ],
-      colnames: [
-        "year",
-        "na_sales",
-        "eu_sales",
-    ],
-      coltypes: [
-        0,
-        0,
-        0,
-    ],
+      ],
+      colnames: ['year', 'na_sales', 'eu_sales'],
+      coltypes: [0, 0, 0],
     },
   });
-  const SupersetClientPost = jest.spyOn(SupersetClient, 'post');
+const SupersetClientPost = jest.spyOn(SupersetClient, 'post');
 
 afterEach(fetchMock.restore);
 
@@ -99,28 +89,36 @@ test('should render the loading component', async () => {
   fetchWithData();
   setup();
   await waitFor(() => {
-    expect(screen.getByRole("status", {name: "Loading"})).toBeInTheDocument();
+    expect(screen.getByRole('status', { name: 'Loading' })).toBeInTheDocument();
   });
 });
 
 test('should render the table with results', async () => {
   fetchWithData();
   await waitForRender();
-  expect(screen.getByRole("table")).toBeInTheDocument();
-  expect(screen.getAllByRole("row")).toHaveLength(4);
-  expect(screen.getByRole("columnheader", {name: "year"})).toBeInTheDocument();
-  expect(screen.getByRole("columnheader", {name: "na_sales"})).toBeInTheDocument();
-  expect(screen.getByRole("columnheader", {name: "eu_sales"})).toBeInTheDocument();
+  expect(screen.getByRole('table')).toBeInTheDocument();
+  expect(screen.getAllByRole('row')).toHaveLength(4);
+  expect(
+    screen.getByRole('columnheader', { name: 'year' }),
+  ).toBeInTheDocument();
+  expect(
+    screen.getByRole('columnheader', { name: 'na_sales' }),
+  ).toBeInTheDocument();
+  expect(
+    screen.getByRole('columnheader', { name: 'eu_sales' }),
+  ).toBeInTheDocument();
 });
 
 test('should render the "No results" components', async () => {
   fetchWithNoData();
   setup();
-  expect(await screen.findByText("No rows were returned for this dataset")).toBeInTheDocument();
+  expect(
+    await screen.findByText('No rows were returned for this dataset'),
+  ).toBeInTheDocument();
 });
 
 test('should render the error', async () => {
-  SupersetClientPost.mockRejectedValue(new Error("Something went wrong"));
+  SupersetClientPost.mockRejectedValue(new Error('Something went wrong'));
   await waitForRender();
-  expect(screen.getByText("Error: Something went wrong")).toBeInTheDocument();
+  expect(screen.getByText('Error: Something went wrong')).toBeInTheDocument();
 });