MINOR: fix the tracing highlighter after edge clicked (#19346)

* fix the tracing highlighter after edge clicked

* close the drawer appeariance after switching from edge click to node

* added test to validate
This commit is contained in:
Ashish Gupta 2025-01-16 10:45:57 +05:30 committed by GitHub
parent cbbef9e3b9
commit 79153272e0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 32 additions and 0 deletions

View File

@ -45,6 +45,7 @@ const DummyChildrenComponent = () => {
const {
loadChildNodesHandler,
onEdgeClick,
onColumnClick,
updateEntityType,
onLineageEditClick,
} = useLineageProvider();
@ -94,6 +95,11 @@ const DummyChildrenComponent = () => {
onClick={() => onEdgeClick(MOCK_EDGE as Edge)}>
On Edge Click
</button>
<button
data-testid="column-click"
onClick={() => onColumnClick('column')}>
On Column Click
</button>
<button data-testid="openConfirmationModal">
Close Confirmation Modal
</button>
@ -245,4 +251,26 @@ describe('LineageProvider', () => {
expect(edgeDrawer).toBeInTheDocument();
});
it('should close the drawer if open, on column click', async () => {
await act(async () => {
render(
<LineageProvider>
<DummyChildrenComponent />
</LineageProvider>
);
});
const edgeClick = screen.getByTestId('edge-click');
fireEvent.click(edgeClick);
const edgeDrawer = screen.getByText('Edge Info Drawer');
expect(edgeDrawer).toBeInTheDocument();
const columnClick = screen.getByTestId('column-click');
fireEvent.click(columnClick);
expect(edgeDrawer).not.toBeInTheDocument();
});
});

View File

@ -434,6 +434,8 @@ const LineageProvider = ({ children }: LineageProviderProps) => {
setTracedColumns(connectedColumnEdges);
setTracedNodes([]);
setSelectedEdge(undefined);
setIsDrawerOpen(false);
},
[nodes, edges]
);
@ -710,6 +712,8 @@ const LineageProvider = ({ children }: LineageProviderProps) => {
setActiveNode(undefined);
setSelectedNode({} as SourceType);
setIsDrawerOpen(true);
setTracedNodes([]);
setTracedColumns([]);
}, []);
const onLineageEditClick = useCallback(() => {