Skip to content

Commit

Permalink
Feat: Data quality dashboard (#18146)
Browse files Browse the repository at this point in the history
* Feat: Move data quality page tabs to left panel

* fixed failing unit test

* fixed failing playwright

* added support for dashboard in enum

* Add support for dashboard in enum and custom pie chart component

- Added support for dashboard in enum by creating a new file `Chart.constants.ts` and exporting the constant `CHART_BASE_SIZE`.
- Updated the `Chart.interface.ts` file to include the `CustomPieChartData` type and the `CustomPieChartProps` interface.
- Added a new file `CustomPieChart.component.tsx` to implement the custom pie chart component.
- Updated the `Color.constants.ts` file to import the `DEFAULT_THEME` from `Appearance.constants`.
- Added a new file `TestCaseStatusPieChartWidget.component.tsx` to implement the test case status pie chart widget.

Related to #18155

* Refactor: Update language translations and add initial entity health matrix

This commit refactors the language translations in the UI, specifically adding translations for "Healthy" and "Unhealthy" in multiple languages. Additionally, it introduces the initial entity health matrix, which includes the counts for healthy and unhealthy entities.

* Refactor: Update language translations and add initial entity health matrix

- Refactor the code to update language translations and add an initial entity health matrix.
- Add a new constant `INITIAL_ENTITY_HEALTH_MATRIX` to represent the initial health matrix of entities.
- Add a new constant `INITIAL_DATA_ASSETS_COVERAGE_STATES` to represent the initial coverage states of data assets.

* Refactor: Update language translations and add initial entity health matrix, added open incident area chart widget

* Refactor: Update language translations and add initial entity health matrix, added open incident area chart widget

* Refactor: Add IncidentTimeChartWidget component and related interfaces

This commit adds a new component called IncidentTimeChartWidget, which is responsible for displaying a chart widget related to incident time metrics. It also includes the necessary interfaces for the component.

The IncidentTimeChartWidget component fetches incident time metrics data from the server and displays it in a custom area chart. It calculates the average time value based on the fetched data and renders it along with the chart.

The commit also includes updates to the Chart.interface.ts and CustomAreaChart.component.tsx files to support the new component.

Issue #TBD

* Refactor: Update language translations and add resolution time and response time translations

* Refactor: Add TestCaseStatusAreaChartWidget component and related interfaces

* implemented filters for dq dashboard

* added description for menu

* move default tab view logic to classBase

* Refactor color variables and add unit test for utility function

* added unit test for dataQualityDashboardAPI

* added unit test for new component

* added unit test for new component

* updated the UI

* added unit test

* Refactor date formatting in KPIChart and DataQualityUtils

This commit refactors the date formatting in the KPIChart component and the DataQualityUtils module. In the KPIChart component, the tickFormatter function in the XAxis component is updated to use an arrow function instead of the formatDate function. In the DataQualityUtils module, the formatDate function is modified to support UTC formatting when necessary. Additionally, two functions, getStartOfDayInMillis and getEndOfDayInMillis, are added to the DateTimeUtils module to calculate the start and end of a day in milliseconds.

* fixed failing unit test

* updated icon

* refactore the code

* update the icon for sql

* fixed java checkstyle

* fixed playwright test

* minor
  • Loading branch information
ShaileshParmar11 authored Oct 29, 2024
1 parent 843f843 commit ec3f9cf
Show file tree
Hide file tree
Showing 79 changed files with 5,166 additions and 243 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ test.describe('Table pagination sorting search scenarios ', () => {
`/api/v1/dataQuality/testCases/search/list?**`
);

await page.getByText('By Test Cases').click();
await page.click('[data-testid="by-test-cases"]');
await listTestCaseResponse;
await page.getByText('Name', { exact: true }).click();

Expand All @@ -67,7 +67,7 @@ test.describe('Table pagination sorting search scenarios ', () => {
test('Table search with sorting should works', async ({ page }) => {
await sidebarClick(page, SidebarItem.DATA_QUALITY);

await page.getByText('By Test Cases').click();
await page.click('[data-testid="by-test-cases"]');
await page.getByText('Name', { exact: true }).click();
await page.getByTestId('searchbar').click();
await page.getByTestId('searchbar').fill('temp-test-case');
Expand All @@ -78,7 +78,7 @@ test.describe('Table pagination sorting search scenarios ', () => {
test('Table filter with sorting should works', async ({ page }) => {
await sidebarClick(page, SidebarItem.DATA_QUALITY);

await page.getByText('By Test Cases').click();
await page.click('[data-testid="by-test-cases"]');
await page.getByText('Name', { exact: true }).click();

await page.getByTestId('status-select-filter').locator('div').click();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -583,7 +583,7 @@ export const checkDataConsumerPermissions = async (page: Page) => {
).not.toBeVisible();
}

await page.click('[data-testid="lineage"] > .ant-space-item');
await page.click('[data-testid="lineage"]');

await expect(page.locator('[data-testid="edit-lineage"]')).toBeDisabled();
};
Expand Down Expand Up @@ -662,7 +662,7 @@ export const checkStewardPermissions = async (page: Page) => {
await expect(page.locator('[data-testid="manage-button"]')).toBeVisible();

// Click on lineage item
await page.click('[data-testid="lineage"] > .ant-space-item');
await page.click('[data-testid="lineage"]');

// Check if edit lineage button is enabled
await expect(page.locator('[data-testid="edit-lineage"]')).toBeEnabled();
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit ec3f9cf

Please sign in to comment.