Use source loader for email sprite icons
[ProtonMail-WebClient.git] / packages / utils / clsx.test.ts
blob8b7303d6b6f6c75cd387f563247ef7adca5338e4
1 import clsx from './clsx';
3 describe('clsx()', () => {
4     it('handles array arguments', () => {
5         const result = clsx(['a', 'b']);
7         expect(result).toBe('a b');
8     });
10     it('returns empty string when empty array is passed', () => {
11         const result = clsx([]);
13         expect(result).toBe('');
14     });
16     it('returns empty string when empty string is passed', () => {
17         const result = clsx('');
19         expect(result).toBe('');
20     });
22     it('joins strings correctly', () => {
23         const result = clsx('a', 'b');
25         expect(result).toBe('a b');
26     });
28     it('trims empty space', () => {
29         const result = clsx('foo bar', ' ', 'foobar');
31         expect(result).toBe('foo bar foobar');
32     });
34     it('keeps only non-blank strings', () => {
35         const result = clsx(null, '', false, undefined, 'foobar', ' ', true);
37         expect(result).toBe('foobar');
38     });
39 });