diff --git a/packages/x-data-grid-pro/src/tests/columns.DataGridPro.test.tsx b/packages/x-data-grid-pro/src/tests/columns.DataGridPro.test.tsx
index 6643b4e5abeb9..a1eab4510bc96 100644
--- a/packages/x-data-grid-pro/src/tests/columns.DataGridPro.test.tsx
+++ b/packages/x-data-grid-pro/src/tests/columns.DataGridPro.test.tsx
@@ -150,6 +150,23 @@ describe(' - Columns', () => {
expect(onColumnWidthChange.args[0][0].width).to.equal(120);
});
+ it('should call onColumnWidthChange with correct width after resizing and then clicking the seprator', async () => {
+ const onColumnWidthChange = spy();
+ render();
+ const separator = document.querySelector(`.${gridClasses['columnSeparator--resizable']}`)!;
+ fireEvent.mouseDown(separator, { clientX: 100 });
+ fireEvent.mouseMove(separator, { clientX: 110, buttons: 1 });
+ fireEvent.mouseMove(separator, { clientX: 120, buttons: 1 });
+ expect(onColumnWidthChange.callCount).to.equal(0);
+ fireEvent.mouseUp(separator);
+ clock.tick(0);
+ expect(onColumnWidthChange.callCount).to.equal(1);
+ expect(onColumnWidthChange.args[0][0].width).to.equal(120);
+ fireEvent.doubleClick(separator);
+ await microtasks();
+ expect(onColumnWidthChange.args[0][0].width).to.equal(100);
+ });
+
it('should not affect other cell elements that are not part of the main DataGrid instance', () => {
render(