From 4e8eea3bdd6c6dcda2f953321ae375a93f5d8204 Mon Sep 17 00:00:00 2001 From: Alexandre VU Date: Fri, 1 Oct 2021 22:15:46 -0400 Subject: [PATCH 1/2] feat: adjust function name and use ES6 export --- String/CheckSnakeCase.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/String/CheckSnakeCase.js b/String/CheckSnakeCase.js index 6e04832104..07eda707ae 100644 --- a/String/CheckSnakeCase.js +++ b/String/CheckSnakeCase.js @@ -3,18 +3,18 @@ // Problem Source & Explanation: https://en.wikipedia.org/wiki/Naming_convention_(programming) /** - * CheckSnakeCase method returns true if the string in snake_case, else return the false. + * checkSnakeCase method returns true if the string in snake_case, else return the false. * @param {String} varName the name of the variable to check. * @returns `Boolean` return true if the string is in snake_case, else return false. */ -const CheckSnakeCase = (varName) => { +const checkSnakeCase = (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-zA-Z])*/ return pat.test(varName) } -module.exports = CheckSnakeCase +export { checkSnakeCase } From 5ac1b13bdd65463a7ae81fced2d4184a5d98efd2 Mon Sep 17 00:00:00 2001 From: Alexandre VU Date: Fri, 1 Oct 2021 22:15:58 -0400 Subject: [PATCH 2/2] feat: add test for SnakeCase --- String/test/CheckSnakeCase.test.js | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 String/test/CheckSnakeCase.test.js diff --git a/String/test/CheckSnakeCase.test.js b/String/test/CheckSnakeCase.test.js new file mode 100644 index 0000000000..dabe73a990 --- /dev/null +++ b/String/test/CheckSnakeCase.test.js @@ -0,0 +1,18 @@ +import { checkSnakeCase } from '../CheckSnakeCase' +describe('checkSnakeCase', () => { + it('expect to throw an error if input is not a string', () => { + expect(() => checkSnakeCase(0)).toThrow() + }) + + it('expects to return true if the input is in snake case format', () => { + const value = 'docker_build' + const result = checkSnakeCase(value) + expect(result).toBe(true) + }) + + it('expects to return false if the input is not in snake case format', () => { + const value = 'dockerBuild' + const result = checkSnakeCase(value) + expect(result).toBe(false) + }) +})