diff --git a/packages/mui-material/src/ButtonGroup/ButtonGroup.test.js b/packages/mui-material/src/ButtonGroup/ButtonGroup.test.js
index 283625bd5ef426..e79439f7b13cba 100644
--- a/packages/mui-material/src/ButtonGroup/ButtonGroup.test.js
+++ b/packages/mui-material/src/ButtonGroup/ButtonGroup.test.js
@@ -209,4 +209,46 @@ describe('', () => {
expect(screen.getByRole('button')).to.have.class(buttonClasses.outlinedSecondary);
});
});
+
+ describe('position classes', () => {
+ it('correctly applies position classes to buttons', () => {
+ render(
+
+
+
+
+ ,
+ );
+
+ const firstButton = screen.getAllByRole('button')[0];
+ const middleButton = screen.getAllByRole('button')[1];
+ const lastButton = screen.getAllByRole('button')[2];
+
+ expect(firstButton).to.have.class(classes.firstButton);
+ expect(firstButton).not.to.have.class(classes.middleButton);
+ expect(firstButton).not.to.have.class(classes.lastButton);
+
+ expect(middleButton).to.have.class(classes.middleButton);
+ expect(middleButton).not.to.have.class(classes.firstButton);
+ expect(middleButton).not.to.have.class(classes.lastButton);
+
+ expect(lastButton).to.have.class(classes.lastButton);
+ expect(lastButton).not.to.have.class(classes.middleButton);
+ expect(lastButton).not.to.have.class(classes.firstButton);
+ });
+
+ it('does not apply any position classes to a single button', () => {
+ render(
+
+
+ ,
+ );
+
+ const button = screen.getByRole('button');
+
+ expect(button).not.to.have.class(classes.firstButton);
+ expect(button).not.to.have.class(classes.middleButton);
+ expect(button).not.to.have.class(classes.lastButton);
+ });
+ });
});