diff --git a/openmetadata-ui/src/main/resources/ui/src/components/DataAssets/DataAssetsHeader/DataAssetsHeader.component.tsx b/openmetadata-ui/src/main/resources/ui/src/components/DataAssets/DataAssetsHeader/DataAssetsHeader.component.tsx
index 94cea57368a..18ec882047d 100644
--- a/openmetadata-ui/src/main/resources/ui/src/components/DataAssets/DataAssetsHeader/DataAssetsHeader.component.tsx
+++ b/openmetadata-ui/src/main/resources/ui/src/components/DataAssets/DataAssetsHeader/DataAssetsHeader.component.tsx
@@ -410,7 +410,7 @@ export const DataAssetsHeader = ({
{entityType === EntityType.TABLE && onUpdateRetentionPeriod && (
diff --git a/openmetadata-ui/src/main/resources/ui/src/components/Database/RetentionPeriod/RetentionPeriod.component.test.tsx b/openmetadata-ui/src/main/resources/ui/src/components/Database/RetentionPeriod/RetentionPeriod.component.test.tsx
index 721d7238d34..613f9732fdf 100644
--- a/openmetadata-ui/src/main/resources/ui/src/components/Database/RetentionPeriod/RetentionPeriod.component.test.tsx
+++ b/openmetadata-ui/src/main/resources/ui/src/components/Database/RetentionPeriod/RetentionPeriod.component.test.tsx
@@ -14,7 +14,6 @@
import { act, fireEvent, render, screen } from '@testing-library/react';
import React from 'react';
import { NO_DATA_PLACEHOLDER } from '../../../constants/constants';
-import { OperationPermission } from '../../../context/PermissionProvider/PermissionProvider.interface';
import RetentionPeriod from './RetentionPeriod.component';
import { RetentionPeriodProps } from './RetentionPeriod.interface';
@@ -34,7 +33,7 @@ const mockOnUpdate = jest.fn();
const mockRetentionPeriodProps: RetentionPeriodProps = {
retentionPeriod: undefined,
onUpdate: mockOnUpdate,
- permissions: { EditAll: true } as OperationPermission,
+ hasPermission: true,
};
describe('Test Retention Period Component', () => {
@@ -145,12 +144,8 @@ describe('Test Retention Period Component', () => {
});
it('Should not render Retention Period Component if has no permission', () => {
- const permissions = { EditAll: false } as OperationPermission;
render(
-
+
);
expect(
@@ -158,5 +153,8 @@ describe('Test Retention Period Component', () => {
).toBeInTheDocument();
expect(screen.getByText(NO_DATA_PLACEHOLDER)).toBeInTheDocument();
+ expect(
+ screen.queryByTestId('edit-retention-period-button')
+ ).not.toBeInTheDocument();
});
});
diff --git a/openmetadata-ui/src/main/resources/ui/src/components/Database/RetentionPeriod/RetentionPeriod.component.tsx b/openmetadata-ui/src/main/resources/ui/src/components/Database/RetentionPeriod/RetentionPeriod.component.tsx
index d23808f82a0..bc39d633430 100644
--- a/openmetadata-ui/src/main/resources/ui/src/components/Database/RetentionPeriod/RetentionPeriod.component.tsx
+++ b/openmetadata-ui/src/main/resources/ui/src/components/Database/RetentionPeriod/RetentionPeriod.component.tsx
@@ -37,7 +37,7 @@ import { RetentionPeriodProps } from './RetentionPeriod.interface';
const RetentionPeriod = ({
retentionPeriod,
onUpdate,
- permissions,
+ hasPermission,
}: RetentionPeriodProps) => {
const { t } = useTranslation();
const [form] = useForm();
@@ -70,7 +70,7 @@ const RetentionPeriod = ({
value={retentionPeriod ?? NO_DATA_PLACEHOLDER}
/>
- {permissions?.EditAll && (
+ {hasPermission && (
Promise;
- permissions: OperationPermission;
+ hasPermission: boolean;
}
diff --git a/openmetadata-ui/src/main/resources/ui/src/components/Database/SchemaTable/SchemaTable.component.tsx b/openmetadata-ui/src/main/resources/ui/src/components/Database/SchemaTable/SchemaTable.component.tsx
index 211238e4fde..8f7a29d2a3d 100644
--- a/openmetadata-ui/src/main/resources/ui/src/components/Database/SchemaTable/SchemaTable.component.tsx
+++ b/openmetadata-ui/src/main/resources/ui/src/components/Database/SchemaTable/SchemaTable.component.tsx
@@ -348,28 +348,29 @@ const SchemaTable = ({
) : null}
{(tablePermissions?.EditAll ||
- tablePermissions?.EditDisplayName) && (
-
-
-
- )}
+ tablePermissions?.EditDisplayName) &&
+ !isReadOnly && (
+
+
+
+ )}
);
},
diff --git a/openmetadata-ui/src/main/resources/ui/src/components/Database/SchemaTable/SchemaTable.test.tsx b/openmetadata-ui/src/main/resources/ui/src/components/Database/SchemaTable/SchemaTable.test.tsx
index 279b1966382..95479d4551e 100644
--- a/openmetadata-ui/src/main/resources/ui/src/components/Database/SchemaTable/SchemaTable.test.tsx
+++ b/openmetadata-ui/src/main/resources/ui/src/components/Database/SchemaTable/SchemaTable.test.tsx
@@ -250,4 +250,21 @@ describe('Test EntityTable Component', () => {
expect(columnDisplayName[0].textContent).toBe('Comments');
expect(columnName[0].textContent).toBe('comments');
});
+
+ it('should not render edit displayName button is table is deleted', async () => {
+ render(
+ ,
+ {
+ wrapper: MemoryRouter,
+ }
+ );
+
+ expect(
+ screen.queryByTestId('edit-displayName-button')
+ ).not.toBeInTheDocument();
+ });
});