1
1
mirror of https://github.com/leon-ai/leon.git synced 2024-12-19 06:41:33 +03:00
leon/test/unit/server/helpers/string.spec.js

47 lines
1.4 KiB
JavaScript

'use strict'
import string from '@/helpers/string'
describe('string helper', () => {
describe('pnr()', () => {
test('replaces substring to a string defined in an object', () => {
expect(string.pnr('Hello %name%', { '%name%': 'Leon' })).toBe('Hello Leon')
})
})
describe('ucfirst()', () => {
test('transforms first letter to uppercase', () => {
expect(string.ucfirst('leon')).toBe('Leon')
})
})
describe('snakeToPascalCase()', () => {
test('transforms snake_case string to PascalCase', () => {
expect(string.snakeToPascalCase('leon')).toBe('Leon')
expect(string.snakeToPascalCase('this_is_leon')).toBe('ThisIsLeon')
})
})
describe('random()', () => {
test('generates a random string with a length defined by a given number', () => {
const s = string.random(6)
expect(typeof s).toBe('string')
expect(s.length).toBe(6)
})
})
describe('removeAccents()', () => {
test('removes accents', () => {
expect(string.removeAccents('àâèéêëîïôöûüùÛÜç')).toBe('aaeeeeiioouuuUUc')
})
})
describe('removeEndPunctuation()', () => {
test('removes end-punctuation', () => {
expect(string.removeEndPunctuation('Who are you?')).toBe('Who are you')
expect(string.removeEndPunctuation('This is great.')).toBe('This is great')
expect(string.removeEndPunctuation('This string has no punctuation')).toBe('This string has no punctuation')
})
})
})