| 1234567891011121314151617181920212223242526272829303132 |
- import { describe, it, expect } from 'vitest';
- import {
- REMARK_VARIABLES,
- hasRemarkTokens,
- previewRemark,
- wrapToken,
- } from '@/lib/remark/remarkVariables';
- describe('remark variables', () => {
- it('wrapToken / hasRemarkTokens', () => {
- expect(wrapToken('EMAIL')).toBe('{{EMAIL}}');
- expect(hasRemarkTokens('hi {{EMAIL}}')).toBe(true);
- expect(hasRemarkTokens('plain')).toBe(false);
- });
- it('previewRemark substitutes known tokens and drops unknown', () => {
- expect(previewRemark('plain text')).toBe('plain text');
- expect(previewRemark('{{EMAIL}}')).toBe('john');
- expect(previewRemark('{{EMAIL}} · {{TRAFFIC_LEFT}} · {{DAYS_LEFT}}d')).toBe(
- 'john · 41.60GB · 12d',
- );
- expect(previewRemark('{{NOT_A_TOKEN}}')).toBe('');
- });
- it('every catalog token previews to its own sample', () => {
- for (const v of REMARK_VARIABLES) {
- expect(v.sample.length).toBeGreaterThan(0);
- expect(previewRemark(wrapToken(v.token))).toBe(v.sample);
- }
- });
- });
|