Updated file paths

This commit is contained in:
thatblindgeye
2023-02-01 18:53:54 -05:00
parent a092bf0559
commit 2ec0f4344d
24 changed files with 207 additions and 204 deletions
@@ -0,0 +1,19 @@
const snakeCase = function (string) {
// wtf case
string = string.replace(/\.\./g, " ");
// this splits up camelcase IF there are no spaces in the word
if (string.indexOf(" ") < 0) {
string = string.replace(/([A-Z])/g, " $1");
}
return string
.trim()
.toLowerCase()
.replace(/[,\?\.]/g, "")
.replace(/\-/g, " ")
.split(" ")
.join("_");
};
module.exports = snakeCase;
@@ -0,0 +1,26 @@
const snakeCase = require('./snakeCase-solution');
describe('snakeCase', () => {
test('works with simple lowercased phrases', () => {
expect(snakeCase('hello world')).toEqual('hello_world');
});
test.skip('works with Caps and punctuation', () => {
expect(snakeCase('Hello, World???')).toEqual('hello_world');
});
test.skip('works with longer phrases', () => {
expect(snakeCase('This is the song that never ends....')).toEqual(
'this_is_the_song_that_never_ends'
);
});
test.skip('works with camel case', () => {
expect(snakeCase('snakeCase')).toEqual('snake_case');
});
test.skip('works with kebab case', () => {
expect(snakeCase('snake-case')).toEqual('snake_case');
});
test.skip('works with WTF case', () => {
expect(snakeCase('SnAkE..CaSe..Is..AwEsOmE')).toEqual(
'snake_case_is_awesome'
);
});
});