diff --git a/packages/mui-base/src/NumberField/Input/NumberFieldInput.test.tsx b/packages/mui-base/src/NumberField/Input/NumberFieldInput.test.tsx
index ca3f9fed26..97d2efc226 100644
--- a/packages/mui-base/src/NumberField/Input/NumberFieldInput.test.tsx
+++ b/packages/mui-base/src/NumberField/Input/NumberFieldInput.test.tsx
@@ -133,7 +133,7 @@ describe('', () => {
fireEvent.change(input, { target: { value: '1234' } });
expect(input).to.have.value('1234');
fireEvent.blur(input);
- expect(input).to.have.value('1,234');
+ expect(input).to.have.value((1234).toLocaleString());
});
it('should commit validated number on blur (min)', () => {
diff --git a/packages/mui-base/src/NumberField/Root/NumberFieldRoot.test.tsx b/packages/mui-base/src/NumberField/Root/NumberFieldRoot.test.tsx
index 85823173a3..5de1231753 100644
--- a/packages/mui-base/src/NumberField/Root/NumberFieldRoot.test.tsx
+++ b/packages/mui-base/src/NumberField/Root/NumberFieldRoot.test.tsx
@@ -373,7 +373,7 @@ describe('', () => {
const input = screen.getByRole('textbox');
fireEvent.keyDown(document.body, { altKey: true });
fireEvent.pointerDown(screen.getByLabelText('Increase'));
- expect(input).to.have.value('5.1');
+ expect(input).to.have.value((5.1).toLocaleString());
});
it('should decrement the value by the default `smallStep` prop of 0.1 while holding the alt key', () => {
@@ -381,7 +381,7 @@ describe('', () => {
const input = screen.getByRole('textbox');
fireEvent.keyDown(document.body, { altKey: true });
fireEvent.pointerDown(screen.getByLabelText('Decrease'));
- expect(input).to.have.value('5.9');
+ expect(input).to.have.value((5.9).toLocaleString());
});
it('should use explicit `smallStep` value if provided while holding the alt key', () => {
@@ -389,7 +389,7 @@ describe('', () => {
const input = screen.getByRole('textbox');
fireEvent.keyDown(document.body, { altKey: true });
fireEvent.pointerDown(screen.getByLabelText('Increase'));
- expect(input).to.have.value('5.5');
+ expect(input).to.have.value((5.5).toLocaleString());
});
it('should not use the `smallStep` prop if no longer holding the alt key', () => {
@@ -398,10 +398,10 @@ describe('', () => {
const button = screen.getByLabelText('Increase');
fireEvent.keyDown(document.body, { altKey: true });
fireEvent.pointerDown(button);
- expect(input).to.have.value('5.5');
+ expect(input).to.have.value((5.5).toLocaleString());
fireEvent.keyUp(input, { altKey: false });
fireEvent.pointerDown(button);
- expect(input).to.have.value('6.5');
+ expect(input).to.have.value((6.5).toLocaleString());
});
});
@@ -409,7 +409,11 @@ describe('', () => {
it('should format the value using the provided options', () => {
render();
const input = screen.getByRole('textbox');
- expect(input).to.have.value('$1,000.00');
+ const expectedValue = new Intl.NumberFormat(undefined, {
+ style: 'currency',
+ currency: 'USD',
+ }).format(1000);
+ expect(input).to.have.value(expectedValue);
});
});
diff --git a/packages/mui-base/src/NumberField/utils/format.test.ts b/packages/mui-base/src/NumberField/utils/format.test.ts
index 9d151a3d9a..c60eb7d7c5 100644
--- a/packages/mui-base/src/NumberField/utils/format.test.ts
+++ b/packages/mui-base/src/NumberField/utils/format.test.ts
@@ -19,7 +19,11 @@ describe('NumberField format', () => {
describe('formatNumber', () => {
it('formats a number', () => {
- expect(getFormatter(undefined, getOptions()).format(1234.56)).to.equal('$1,234.56');
+ const expected = new Intl.NumberFormat(undefined, {
+ style: 'currency',
+ currency: 'USD',
+ }).format(1234.56);
+ expect(getFormatter(undefined, getOptions()).format(1234.56)).to.equal(expected);
});
it('formats a number with different options', () => {
diff --git a/packages/mui-base/src/NumberField/utils/parse.test.ts b/packages/mui-base/src/NumberField/utils/parse.test.ts
index 2d6b41c79b..caace5e18e 100644
--- a/packages/mui-base/src/NumberField/utils/parse.test.ts
+++ b/packages/mui-base/src/NumberField/utils/parse.test.ts
@@ -4,7 +4,7 @@ import { getNumberLocaleDetails, parseNumber } from './parse';
describe('NumberField parse', () => {
describe('getNumberLocaleDetails', () => {
it('returns the number locale details', () => {
- const details = getNumberLocaleDetails();
+ const details = getNumberLocaleDetails('en-US');
expect(details.decimal).to.equal('.');
expect(details.group).to.equal(',');
expect(details.currency).to.equal(undefined);
@@ -16,7 +16,8 @@ describe('NumberField parse', () => {
describe('parseNumber', () => {
it('parses a number', () => {
- expect(parseNumber('1,234.56')).to.equal(1234.56);
+ const numberString = new Intl.NumberFormat().format(1234.56);
+ expect(parseNumber(numberString)).to.equal(1234.56);
});
it('parses a number with different options', () => {