Files
InsanityLab-web/tests/slug.test.ts
Adriano 3fff3cd2f8 Il repo resta al sito: app in radice, piattaforme nel loro repo
apps/sito passa in radice, apps/platforms si toglie: vive in
gitea:Adriano/InsanityLab-platforms, con la storia del repo comune. I piani e
le specifiche di Longevity e Campus lasciano docs/ e seguono le piattaforme.
README e compose: deploy da /opt/docker/insanitylab/src; al primo deploy .env
va spostato da apps/sito/.env alla radice.

Refs #20

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-29 14:25:12 +00:00

21 lines
669 B
TypeScript

import { describe, it, expect } from 'vitest';
import { slugify } from '../src/lib/slug';
describe('slugify', () => {
it('minuscole e trattini', () => {
expect(slugify('Il Metodo InsanityLab')).toBe('il-metodo-insanitylab');
});
it('rimuove accenti', () => {
expect(slugify('Attività fisica è già qui')).toBe('attivita-fisica-e-gia-qui');
});
it('comprime simboli e spazi multipli', () => {
expect(slugify('Blog & Edugo -- news!!')).toBe('blog-edugo-news');
});
it('niente trattini ai bordi', () => {
expect(slugify(' ciao ')).toBe('ciao');
});
it('stringa vuota resta vuota', () => {
expect(slugify('')).toBe('');
});
});