From d4eff16f26e4b680b4301a43f0ce4a4bd15103fa Mon Sep 17 00:00:00 2001 From: Shelley McIntyre <73217296+SLMcIntyre@users.noreply.github.com> Date: Sat, 19 Dec 2020 15:47:42 -0500 Subject: [PATCH 1/4] completed BasicArrays test --- part01/BasicArrays.js | 21 +++++++++--- part01/BasicArrays.test.js | 4 +-- part02/Craze4Arrays.js | 2 +- part02/Craze4Arrays.test.js | 66 ++++++++++++++++++------------------- 4 files changed, 53 insertions(+), 40 deletions(-) diff --git a/part01/BasicArrays.js b/part01/BasicArrays.js index b8ff403..6aca735 100644 --- a/part01/BasicArrays.js +++ b/part01/BasicArrays.js @@ -4,7 +4,7 @@ class BasicArrays{ * @return the first element in the array */ getFirstElement(stringArray) { - return null; + return stringArray[0]; } /** @@ -12,7 +12,7 @@ class BasicArrays{ * @return the second element in the array */ getSecondElement(stringArray) { - return null; + return stringArray[1]; } /** @@ -20,7 +20,11 @@ class BasicArrays{ * @return stringArray with the elements in reverse order */ reverse(stringArray) { - return null; + let newArray = []; + for(let i=stringArray.length - 1; i>=0; i--){ + newArray.push(stringArray[i]); + } + return newArray; } /** @@ -28,7 +32,16 @@ class BasicArrays{ * @return String made up of the first character in each element of stringArray */ getFirstLetterOfEachElement(stringArray) { - return null; + let newArray = []; + let firstElement = []; + + for (let i=0; i<=stringArray.length-1; i++){ + newArray += stringArray[i][0]; + + } + firstElement.push(newArray); + + return (firstElement.join("")); } } diff --git a/part01/BasicArrays.test.js b/part01/BasicArrays.test.js index 896d901..27f4fe1 100644 --- a/part01/BasicArrays.test.js +++ b/part01/BasicArrays.test.js @@ -17,7 +17,7 @@ test("getSecondTest", () => { let basicArrays = new BasicArrays(); let inputArray = ["The", "quick", "brown"]; - let expected = "The"; + let expected = "quick"; let actual = basicArrays.getSecondElement(inputArray); @@ -38,7 +38,7 @@ test("reverseArrayTest", () => { test("firstLetterTest", () => { let basicArrays = new BasicArrays(); - let inputArray = ["The", "quick", "brown"]; + let inputArray = ["The", "quick", "brown", "fox"]; let expected = "Tqbf"; let actual = basicArrays.getFirstLetterOfEachElement(inputArray); diff --git a/part02/Craze4Arrays.js b/part02/Craze4Arrays.js index 69a5e0b..428cbe7 100644 --- a/part02/Craze4Arrays.js +++ b/part02/Craze4Arrays.js @@ -34,7 +34,7 @@ class Craze4Arrays{ * @return an array containing all elements in `objectArray` and `objectArrayToAdd` * given two arrays `objectArray` and `objectArrayToAdd`, return an array containing all elements in `objectArray` and `objectArrayToAdd` */ - pmergeArrays(objectArray, objectArrayToAdd) { + mergeArrays(objectArray, objectArrayToAdd) { return null; } diff --git a/part02/Craze4Arrays.test.js b/part02/Craze4Arrays.test.js index daec4cf..acb446f 100644 --- a/part02/Craze4Arrays.test.js +++ b/part02/Craze4Arrays.test.js @@ -1,44 +1,44 @@ -const { TestScheduler } = require('jest'); -const Craze4Arrays = require('./Craze4Arrays'); +// const { TestScheduler } = require('jest'); +// const Craze4Arrays = require('./Craze4Arrays'); -test("getNumberOfOccurrencesTest1", () => { +// test("getNumberOfOccurrencesTest1", () => { - let craze4Arrays = new Craze4Arrays(); - let valueToEvaluate = 7; - let expected = 3; - let inputArray = [1, 2, 7, 8, 4, 5, 7, 0, 9, 8, 7]; +// let craze4Arrays = new Craze4Arrays(); +// let valueToEvaluate = 7; +// let expected = 3; +// let inputArray = [1, 2, 7, 8, 4, 5, 7, 0, 9, 8, 7]; - let actual = craze4Arrays.getNumberOfOccurrences(inputArray, valueToEvaluate); +// let actual = craze4Arrays.getNumberOfOccurrences(inputArray, valueToEvaluate); - expect(actual).toEqual(expected); -}); +// expect(actual).toEqual(expected); +// }); -test("removeValueTest1", () => { +// test("removeValueTest1", () => { - let craze4Arrays = new Craze4Arrays(); - let valueToRemove = 7; - let expected = [1, 2, 8, 4, 5, 0, 9, 8]; - let inputArray = [1, 2, 7, 8, 4, 5, 7, 0, 9, 8, 7]; +// let craze4Arrays = new Craze4Arrays(); +// let valueToRemove = 7; +// let expected = [1, 2, 8, 4, 5, 0, 9, 8]; +// let inputArray = [1, 2, 7, 8, 4, 5, 7, 0, 9, 8, 7]; - let actual = craze4Arrays.removeValue(inputArray, valueToRemove); +// let actual = craze4Arrays.removeValue(inputArray, valueToRemove); - expect(actual).toEqual(expected); -}); +// expect(actual).toEqual(expected); +// }); -test("getLeastCommonTest", () => { - let craze4Arrays = new Craze4Arrays(); - let expected = 2; - let inputArray = [1,1,2,3,3,3,4,4,4,4]; - let actual = craze4Arrays.getLeastCommon(inputArray); - expect(actual).toEqual(expected); -}); +// test("getLeastCommonTest", () => { +// let craze4Arrays = new Craze4Arrays(); +// let expected = 2; +// let inputArray = [1,1,2,3,3,3,4,4,4,4]; +// let actual = craze4Arrays.getLeastCommon(inputArray); +// expect(actual).toEqual(expected); +// }); -test("mergeArraysTest", () => { - let craze4Arrays = new Craze4Arrays(); - let array1 = [1,1,1,2,2,2]; - let array2 = [3,3,3,4,4,4]; - let expected = [1,1,1,2,2,2,3,3,3,4,4,4]; - let actual = craze4Arrays.mergeArrays(array1, array2); - expect(actual).toEqual(expected); -}); \ No newline at end of file +// test("mergeArraysTest", () => { +// let craze4Arrays = new Craze4Arrays(); +// let array1 = [1,1,1,2,2,2]; +// let array2 = [3,3,3,4,4,4]; +// let expected = [1,1,1,2,2,2,3,3,3,4,4,4]; +// let actual = craze4Arrays.mergeArrays(array1, array2); +// expect(actual).toEqual(expected); +// }); \ No newline at end of file From 5cb9fa4d11ad038893ed486e25f3ec50a46de228 Mon Sep 17 00:00:00 2001 From: Shelley McIntyre <73217296+SLMcIntyre@users.noreply.github.com> Date: Sat, 19 Dec 2020 17:08:26 -0500 Subject: [PATCH 2/4] added code for getNumberOfOccurrences --- part02/Craze4Arrays.js | 12 +++++++ part02/Craze4Arrays.test.js | 66 ++++++++++++++++++------------------- 2 files changed, 45 insertions(+), 33 deletions(-) diff --git a/part02/Craze4Arrays.js b/part02/Craze4Arrays.js index 428cbe7..94c8eb3 100644 --- a/part02/Craze4Arrays.js +++ b/part02/Craze4Arrays.js @@ -1,5 +1,17 @@ class Craze4Arrays{ + getNumberOfOccurrences(objectArray, objectToEvaluate) { + let numOfOccurrences = 0; + + for (let i = 0; i { +test("getNumberOfOccurrencesTest1", () => { -// let craze4Arrays = new Craze4Arrays(); -// let valueToEvaluate = 7; -// let expected = 3; -// let inputArray = [1, 2, 7, 8, 4, 5, 7, 0, 9, 8, 7]; + let craze4Arrays = new Craze4Arrays(); + let valueToEvaluate = 7; + let expected = 3; + let inputArray = [1, 2, 7, 8, 4, 5, 7, 0, 9, 8, 7]; -// let actual = craze4Arrays.getNumberOfOccurrences(inputArray, valueToEvaluate); + let actual = craze4Arrays.getNumberOfOccurrences(inputArray, valueToEvaluate); -// expect(actual).toEqual(expected); -// }); + expect(actual).toEqual(expected); +}); -// test("removeValueTest1", () => { +test("removeValueTest1", () => { -// let craze4Arrays = new Craze4Arrays(); -// let valueToRemove = 7; -// let expected = [1, 2, 8, 4, 5, 0, 9, 8]; -// let inputArray = [1, 2, 7, 8, 4, 5, 7, 0, 9, 8, 7]; + let craze4Arrays = new Craze4Arrays(); + let valueToRemove = 7; + let expected = [1, 2, 8, 4, 5, 0, 9, 8]; + let inputArray = [1, 2, 7, 8, 4, 5, 7, 0, 9, 8, 7]; -// let actual = craze4Arrays.removeValue(inputArray, valueToRemove); + let actual = craze4Arrays.removeValue(inputArray, valueToRemove); -// expect(actual).toEqual(expected); -// }); + expect(actual).toEqual(expected); +}); -// test("getLeastCommonTest", () => { -// let craze4Arrays = new Craze4Arrays(); -// let expected = 2; -// let inputArray = [1,1,2,3,3,3,4,4,4,4]; -// let actual = craze4Arrays.getLeastCommon(inputArray); -// expect(actual).toEqual(expected); -// }); +test("getLeastCommonTest", () => { + let craze4Arrays = new Craze4Arrays(); + let expected = 2; + let inputArray = [1,1,2,3,3,3,4,4,4,4]; + let actual = craze4Arrays.getLeastCommon(inputArray); + expect(actual).toEqual(expected); +}); -// test("mergeArraysTest", () => { -// let craze4Arrays = new Craze4Arrays(); -// let array1 = [1,1,1,2,2,2]; -// let array2 = [3,3,3,4,4,4]; -// let expected = [1,1,1,2,2,2,3,3,3,4,4,4]; -// let actual = craze4Arrays.mergeArrays(array1, array2); -// expect(actual).toEqual(expected); -// }); \ No newline at end of file +test("mergeArraysTest", () => { + let craze4Arrays = new Craze4Arrays(); + let array1 = [1,1,1,2,2,2]; + let array2 = [3,3,3,4,4,4]; + let expected = [1,1,1,2,2,2,3,3,3,4,4,4]; + let actual = craze4Arrays.mergeArrays(array1, array2); + expect(actual).toEqual(expected); +}); \ No newline at end of file From 439914fddb31eaaf7a75ed46211b6c2adacbe604 Mon Sep 17 00:00:00 2001 From: Shelley McIntyre <73217296+SLMcIntyre@users.noreply.github.com> Date: Sun, 20 Dec 2020 14:27:29 -0500 Subject: [PATCH 3/4] added solution for CrazeArrays removeValueTest1 --- part02/Craze4Arrays.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/part02/Craze4Arrays.js b/part02/Craze4Arrays.js index 94c8eb3..1368e8f 100644 --- a/part02/Craze4Arrays.js +++ b/part02/Craze4Arrays.js @@ -19,7 +19,15 @@ class Craze4Arrays{ Given an array of objects, name `objectArray`, and an object `objectToRemove`, return an array of objects with identical contents excluding `objectToRemove` */ removeValue(objectArray, objectToRemove) { - return null; + // let index = objectArray.indexOf(objectToRemove); + for (let i=0; i Date: Mon, 21 Dec 2020 02:19:04 -0500 Subject: [PATCH 4/4] added completed solutions for CrazeArrays --- part02/Craze4Arrays.js | 35 ++++++++++++++++++++++++++++------- part02/Craze4Arrays.test.js | 8 ++++++++ 2 files changed, 36 insertions(+), 7 deletions(-) diff --git a/part02/Craze4Arrays.js b/part02/Craze4Arrays.js index 1368e8f..abab4aa 100644 --- a/part02/Craze4Arrays.js +++ b/part02/Craze4Arrays.js @@ -19,14 +19,12 @@ class Craze4Arrays{ Given an array of objects, name `objectArray`, and an object `objectToRemove`, return an array of objects with identical contents excluding `objectToRemove` */ removeValue(objectArray, objectToRemove) { - // let index = objectArray.indexOf(objectToRemove); for (let i=0; i + objectArray.filter(v => v===b).length + - objectArray.filter(v => v===a).length + ).pop(); + + return leastCommon; } /** @@ -55,7 +75,8 @@ class Craze4Arrays{ * given two arrays `objectArray` and `objectArrayToAdd`, return an array containing all elements in `objectArray` and `objectArrayToAdd` */ mergeArrays(objectArray, objectArrayToAdd) { - return null; + let mergedArray = objectArray.concat(objectArrayToAdd); + return mergedArray; } } diff --git a/part02/Craze4Arrays.test.js b/part02/Craze4Arrays.test.js index daec4cf..a497d05 100644 --- a/part02/Craze4Arrays.test.js +++ b/part02/Craze4Arrays.test.js @@ -26,6 +26,14 @@ test("removeValueTest1", () => { expect(actual).toEqual(expected); }); +test("getMostCommonTest", () => { + let craze4Arrays = new Craze4Arrays(); + let expected = 4; + let inputArray = [1,1,2,3,3,3,4,4,4,4]; + let actual = craze4Arrays.getMostCommon(inputArray); + expect(actual).toEqual(expected); +}); + test("getLeastCommonTest", () => { let craze4Arrays = new Craze4Arrays(); let expected = 2;