1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-09-28 17:55:15 +02:00
unleash.unleash/frontend/src/component/common/PrettifyLargeNumber/PrettifyLargeNumber.test.tsx
Nuno Góis 4167a60588
feat: biome lint frontend (#4903)
Follows up on https://github.com/Unleash/unleash/pull/4853 to add Biome
to the frontend as well.


![image](https://github.com/Unleash/unleash/assets/14320932/1906faf1-fc29-4172-a4d4-b2716d72cd65)

Added a few `biome-ignore` to speed up the process but we may want to
check and fix them in the future.
2023-10-02 13:25:46 +01:00

55 lines
2.0 KiB
TypeScript

import { render } from 'utils/testRenderer';
import { screen } from '@testing-library/react';
import { PrettifyLargeNumber } from './PrettifyLargeNumber';
import { LARGE_NUMBER_PRETTIFIED } from 'utils/testIds';
describe('PrettifyLargeNumber', () => {
it('should render number with separator for value less than threshold', async () => {
render(<PrettifyLargeNumber value={999999} threshold={1000000} />);
const prettifiedText = screen.getByTestId(LARGE_NUMBER_PRETTIFIED);
expect(prettifiedText.textContent).toHaveLength('999,999'.length);
});
it('should render prettified number for value equal to the threshold', async () => {
render(<PrettifyLargeNumber value={1000000} threshold={1000000} />);
const prettifiedText = screen.getByTestId(LARGE_NUMBER_PRETTIFIED);
expect(prettifiedText.textContent).toBe('1M');
});
it('should render prettified number for value greater than threshold', async () => {
render(<PrettifyLargeNumber value={12345678} threshold={1000000} />);
const prettifiedText = screen.getByTestId(LARGE_NUMBER_PRETTIFIED);
expect(prettifiedText.textContent).toBe('12.35M');
});
it('should render prettified number with tooltip having raw value for value greater than threshold', async () => {
render(<PrettifyLargeNumber value={12345678} threshold={1000000} />);
const prettifiedText = screen.getByTestId(LARGE_NUMBER_PRETTIFIED);
expect(prettifiedText.getAttribute('aria-label')).toHaveLength(
'12,345,678'.length,
);
});
it('should render prettified number with provided significant figures for value greater than threshold', async () => {
render(
<PrettifyLargeNumber
value={12345678}
threshold={1000000}
precision={4}
/>,
);
const prettifiedText = screen.getByTestId(LARGE_NUMBER_PRETTIFIED);
expect(prettifiedText.textContent).toBe('12.3457M');
});
});