@open-tender/utils
Version:
A library of utils for use with Open Tender applications that utilize our cloud-based Order API.
36 lines (35 loc) • 1.55 kB
JavaScript
import { remsToPixels } from '../../utils';
describe('remsToPixels', () => {
it('should return 0 if rems is undefined', () => {
expect(remsToPixels()).toBe('0');
});
it('should return 0 without unit if rems is 0', () => {
expect(remsToPixels('0')).toBe('0');
});
it('should convert rems to pixels for single values without unit', () => {
expect(remsToPixels('1')).toBe('10px');
expect(remsToPixels('1.5')).toBe('15px');
expect(remsToPixels('2')).toBe('20px');
expect(remsToPixels('2.5')).toBe('25px');
});
it('should convert rems to pixels for single values', () => {
expect(remsToPixels('1rem')).toBe('10px');
expect(remsToPixels('1.5rem')).toBe('15px');
expect(remsToPixels('2rem')).toBe('20px');
expect(remsToPixels('2.5rem')).toBe('25px');
});
it('should preseve negative values', () => {
expect(remsToPixels('-1rem')).toBe('-10px');
expect(remsToPixels('-1.5rem')).toBe('-15px');
});
it('should convert multiple values rems to pixels', () => {
expect(remsToPixels('1rem 2rem')).toBe('10px 20px');
expect(remsToPixels('1rem 2rem 3rem')).toBe('10px 20px 30px');
expect(remsToPixels('1rem 2rem 3rem 4rem')).toBe('10px 20px 30px 40px');
});
it('should ignore whitespaces around the input', () => {
expect(remsToPixels(' ')).toBe('0');
expect(remsToPixels(' 1.5rem ')).toBe('15px');
expect(remsToPixels(' 1.5rem 2rem')).toBe('15px 20px');
});
});