chore: merge "Add test for camel case algorithm" (#710)

* fix: change function name and use ES6 export

* feat: add tests for camel case

Co-authored-by: Alexandre VU <alexandre.vu@montreal.ca>
This commit is contained in:
alvux
2021-10-03 04:33:07 -04:00
committed by GitHub
parent ff671ffd12
commit 2ecee85012
2 changed files with 22 additions and 4 deletions

View File

@ -3,18 +3,18 @@
// Problem Source & Explanation: https://en.wikipedia.org/wiki/Camel_case
/**
* CheckCamelCase method returns true if the string in camelCase, else return the false.
* checkCamelCase method returns true if the string in camelCase, else return the false.
* @param {String} varName the name of the variable to check.
* @returns `Boolean` return true if the string is in camelCase, else return false.
*/
const CheckCamelCase = (varName) => {
const checkCamelCase = (varName) => {
// firstly, check that input is a string or not.
if (typeof varName !== 'string') {
return new TypeError('Argument is not a string.')
throw new TypeError('Argument is not a string.')
}
const pat = /^[a-z][A-Za-z]*$/
return pat.test(varName)
}
module.exports = CheckCamelCase
export { checkCamelCase }

View File

@ -0,0 +1,18 @@
import { checkCamelCase } from '../CheckCamelCase'
describe('checkCamelCase', () => {
it('expect to throw an error if input is not a string', () => {
expect(() => checkCamelCase(null)).toThrow()
})
it('expects to return true if the input is in camel case format', () => {
const value = 'dockerBuild'
const result = checkCamelCase(value)
expect(result).toBe(true)
})
it('expects to return false if the input is not in camel case format', () => {
const value = 'docker_build'
const result = checkCamelCase(value)
expect(result).toBe(false)
})
})