From e40ca6453623166789b0bfa33c91e81a0fb0a428 Mon Sep 17 00:00:00 2001 From: Abdulee Date: Wed, 4 Feb 2026 13:16:28 +0100 Subject: [PATCH] =?UTF-8?q?test(frontend):=20a=C3=B1adir=20tests=20unitari?= =?UTF-8?q?os=20para=20prettify()?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/utils/text.test.js | 42 +++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 frontend/src/utils/text.test.js diff --git a/frontend/src/utils/text.test.js b/frontend/src/utils/text.test.js new file mode 100644 index 0000000..7fb30f0 --- /dev/null +++ b/frontend/src/utils/text.test.js @@ -0,0 +1,42 @@ +/* +CI/CD Workshop +Copyright (C) 2025 OpenBokeron + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +import { describe, it, expect } from 'vitest'; +import { prettify } from './text'; + +describe('prettify', () => { + it('convierte snake_case a Title Case', () => { + expect(prettify('hello_world')).toBe('Hello World'); + }); + + it('maneja palabras multiples con underscore', () => { + expect(prettify('cafe_con_leche')).toBe('Cafe Con Leche'); + }); + + it('maneja una sola palabra sin underscore', () => { + expect(prettify('bocadillo')).toBe('Bocadillo'); + }); + + it('maneja cadena vacia', () => { + expect(prettify('')).toBe(''); + }); + + it('convierte mayusculas a formato titulo', () => { + expect(prettify('TOSTADA_INTEGRAL')).toBe('Tostada Integral'); + }); +});