import { cn, absoluteUrl } from '@/lib/utils'; describe('absoluteUrl', () => { const originalEnv = process.env; beforeEach(() => { process.env = { ...originalEnv, NEXT_PUBLIC_APP_URL: 'https://example.com', }; }); afterEach(() => { process.env = originalEnv; }); it('should return the correct absolute URL', () => { const pathname = '/test'; expect(absoluteUrl(pathname)).toBe('https://example.com/test'); }); it('should handle empty pathname', () => { const pathname = ''; expect(absoluteUrl(pathname)).toBe('https://example.com'); }); }); describe('cn', () => { it('should merge multiple class names', () => { expect(cn('class1', 'class2')).toBe('class1 class2'); }); it('should handle conditional class names', () => { const isActive = true; expect(cn('base', isActive && 'active')).toBe('base active'); const isDisabled = false; expect(cn('base', isDisabled && 'disabled')).toBe('base'); }); });