From 18d7e3f0bb53250a0f624b9d39284085bae5270a Mon Sep 17 00:00:00 2001 From: Robert Woodruff Date: Tue, 23 Feb 2021 21:02:37 -0500 Subject: [PATCH] submitting 36 chambers unit testing lab --- .DS_Store | Bin 0 -> 6148 bytes Day01/Problem01.js | 62 ++++++++++++++++++++++++++++++++------------- package-lock.json | 13 ++++++++++ package.json | 3 +++ 4 files changed, 60 insertions(+), 18 deletions(-) create mode 100644 .DS_Store diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..b31f4f78332775d7cdcefd710a6a6d2be0766a9e GIT binary patch literal 6148 zcmeHK!Ab)`41LiGg?gwrFT(tQ#s0xs)`RE%fVN6Om))W$c-uen6ZIt-Ww)*eFCvma z=4ED*?979mnE;T*)6E>10vJ;jMU4T`;lZiB>^vfh<(OYq&3aWetAR9sb4b^IfD+eu z!5O;iS4z&Qvo{l4e#i59`A}C)z2P|bjw5WDV~u;Z8{Fa)6&mZ$aEC|Qb%z_x{YvfT zKHSOhO`M$U#IYL^3iF^cmRq?o{vp3;r^LMSedddci<2@Xr{KQMoJ^+*H0>zidzM+C;sgs;FP928DL- k5x|a~BgZ!B^GR*`6&YJc&7$KLPK<|u5fV)>@CyvQ1E427lmGw# literal 0 HcmV?d00001 diff --git a/Day01/Problem01.js b/Day01/Problem01.js index 6ad3c39..55bd84d 100644 --- a/Day01/Problem01.js +++ b/Day01/Problem01.js @@ -5,22 +5,28 @@ class Problem { * (e.g. "Never eat shredded wheat or cake" would return 6). Words will be * separated by single spaces. */ + wordCount(input) { - // code goes here - return null; + let string = input.split(' '); + let wordLength = string.length; + return wordLength; } - - /** - * Have the function LetterCapitalize(str) take the str parameter being passed and capitalize the first - letter of each word. Words will be separated by only one space. - * - */ - letterCapitalize(str) { - return null; +letterCapitalize(str) { + let output = "" + for(let i = 0; i < str.length; i ++){ + if(i === 0){ + output += str[i].toUpperCase() + } + else if (str[i-1] === " "){ + output += str[i].toUpperCase() + } + else { + output += str[i] + } } - - + return output; +} /** * Have the function firstReverse(String input) take the input parameter being passed and @@ -29,7 +35,10 @@ class Problem { */ firstReverse(input){ - return null; + let splitString = input.split(''); + let reverseArray = splitString.reverse(); + let joinArray = reverseArray.join(''); + return joinArray; } /** @@ -38,9 +47,18 @@ class Problem { * return the first word from the string with that length. Ignore punctuation and assume * input will not be empty. */ + longestWord(input) { - // code goes here - return null; + var str = input.split(/[^a-zA-Z]/); // splits string into words & ignores non-letters + var longest = 0; + var word = str; + for ( var i = 0; i <= str.length - 1; i++ ) { // steps thru array & adjusts count to begin at 0 + if ( longest < str[i].length ) { // compares current longest with word in the array + longest = str[i].length; // longest word is replaced with new longest word + word = str[i]; // word is now the longest word + } + } + return word; } /** @@ -48,11 +66,19 @@ class Problem { * character. For example: if str is "Hello World" the output should be hELLO wORLD. * Let numbers and symbols stay the way they are. */ + swapCase(str) { - // code goes here - return null; + var newLetters = ""; + for ( var i = 0; i < str.length; i++ ) { + if ( str[i] === str[i].toLowerCase() ) { + newLetters += str[i].toUpperCase(); + } else { + newLetters += str[i].toLowerCase(); + } + } + console.log(newLetters); + return newLetters; } - } module.exports = Problem; \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index ef8910d..344d82c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -811,6 +811,11 @@ } } }, + "ansi-font": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/ansi-font/-/ansi-font-0.0.2.tgz", + "integrity": "sha1-iQMBvVhBRi/TnAt3Ca/R9SUUMzE=" + }, "ansi-regex": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", @@ -4306,6 +4311,14 @@ "supports-hyperlinks": "^2.0.0" } }, + "test": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/test/-/test-0.6.0.tgz", + "integrity": "sha1-WYasRF7Bd1QyJRLRBLoyyKY+k44=", + "requires": { + "ansi-font": "0.0.2" + } + }, "test-exclude": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", diff --git a/package.json b/package.json index 7684e48..f0f1514 100644 --- a/package.json +++ b/package.json @@ -10,5 +10,8 @@ "license": "ISC", "devDependencies": { "jest": "^26.4.2" + }, + "dependencies": { + "test": "^0.6.0" } }