1
1
mirror of https://github.com/leon-ai/leon.git synced 2024-12-26 10:14:57 +03:00
leon/test/unit/server/helpers/string.spec.js

55 lines
1.6 KiB
JavaScript
Raw Normal View History

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