diff --git a/basicMath/MathUtilities.js b/basicMath/MathUtilities.js index 705dd88..8d1d3e9 100644 --- a/basicMath/MathUtilities.js +++ b/basicMath/MathUtilities.js @@ -1,21 +1,19 @@ class MathUtilities { + add(baseValue, valueToAdd) { + return baseValue + valueToAdd; + } + subtract(baseValue, valueToAdd) { + return baseValue - valueToAdd; + } - add(baseValue, valueToAdd){ - return -1; - } + divide(baseValue, valueToAdd) { + return baseValue / valueToAdd; + } - subtract(baseValue, valueToAdd){ - return -1; - } - - divide(baseValue, valueToAdd){ - return -1; - } - - multiply(baseValue, valueToAdd){ - return -1; - } + multiply(baseValue, valueToAdd) { + return baseValue * valueToAdd; + } } -module.exports = MathUtilities; \ No newline at end of file +module.exports = MathUtilities; diff --git a/basicMath/MathUtilities.test.js b/basicMath/MathUtilities.test.js index 2d37cf1..16f9e93 100644 --- a/basicMath/MathUtilities.test.js +++ b/basicMath/MathUtilities.test.js @@ -1,107 +1,106 @@ -const { TestScheduler } = require('jest'); -const MathUtilities = require('./MathUtilities'); +//const { TestScheduler } = require("jest"); +const MathUtilities = require("./MathUtilities"); test("Test 1 Integer Addition", () => { - // Given - let math = new MathUtilities(); - let baseValue = 16384; - let addedValue = 7; - - // When - let expected = 16391; - let actual = math.add(baseValue, addedValue); - //Then - expect(actual).toEqual(expected); + // Given + let math = new MathUtilities(); + let baseValue = 16384; + let addedValue = 7; + + // When + let expected = 16391; + let actual = math.add(baseValue, addedValue); + //Then + expect(actual).toEqual(expected); }); test("Test 2 Integer Addition", () => { - // Given - let math = new MathUtilities(); - let baseValue = 63; - let addedValue = 64; - - // When - let expected = 127; - let actual = math.add(baseValue, addedValue); - //Then - expect(actual).toEqual(expected); + // Given + let math = new MathUtilities(); + let baseValue = 63; + let addedValue = 64; + + // When + let expected = 127; + let actual = math.add(baseValue, addedValue); + //Then + expect(actual).toEqual(expected); }); test("Test 1 Integer Subtraction", () => { - // Given - let math = new MathUtilities(); - let baseValue = 20; - let addedValue = 7; - - // When - let expected = 13; - let actual = math.subtract(baseValue, addedValue); - //Then - expect(actual).toEqual(expected); + // Given + let math = new MathUtilities(); + let baseValue = 20; + let addedValue = 7; + + // When + let expected = 13; + let actual = math.subtract(baseValue, addedValue); + //Then + expect(actual).toEqual(expected); }); test("Test 2 Integer Subtraction", () => { - // Given - let math = new MathUtilities(); - let baseValue = 16384; - let addedValue = 16383; - - // When - let expected = 1; - let actual = math.subtract(baseValue, addedValue); - //Then - expect(actual).toEqual(expected); + // Given + let math = new MathUtilities(); + let baseValue = 16384; + let addedValue = 16383; + + // When + let expected = 1; + let actual = math.subtract(baseValue, addedValue); + //Then + expect(actual).toEqual(expected); }); - test("Test 1 Integer Division", () => { - // Given - let math = new MathUtilities(); - let baseValue = 20; - let addedValue = 2; - - // When - let expected = 10; - let actual = math.divide(baseValue, addedValue); - //Then - expect(actual).toEqual(expected); + // Given + let math = new MathUtilities(); + let baseValue = 20; + let addedValue = 2; + + // When + let expected = 10; + let actual = math.divide(baseValue, addedValue); + //Then + expect(actual).toEqual(expected); }); test("Test 2 Integer Division", () => { - // Given - let math = new MathUtilities(); - let baseValue = 2; - let addedValue = 1; - - // When - let expected = 127; - let actual = math.divide(baseValue, addedValue); - //Then - expect(actual).toEqual(expected); + // Given + let math = new MathUtilities(); + let baseValue = 2; + let addedValue = 1; + + // When + let expected = 2; + let actual = math.divide(baseValue, addedValue); + //Then + expect(actual).toEqual(expected); }); test("Test 1 Integer Multiplication", () => { - // Given - let math = new MathUtilities(); - let baseValue = 5; - let addedValue = 2; - - // When - let expected = 10; - let actual = math.multiply(baseValue, addedValue); - //Then - expect(actual).toEqual(expected); + // Given + let math = new MathUtilities(); + let baseValue = 5; + let addedValue = 2; + + // When + let expected = 10; + let actual = math.multiply(baseValue, addedValue); + //Then + expect(actual).toEqual(expected); }); test("Test 2 Integer Multiplication", () => { - // Given - let math = new MathUtilities(); - let baseValue = 20; - let addedValue = 1000; - - // When - let expected = 20000; - let actual = math.multiply(baseValue, addedValue); - //Then - expect(actual).toEqual(expected); -}); \ No newline at end of file + // Given + let math = new MathUtilities(); + let baseValue = 20; + let addedValue = 1000; + + // When + let expected = 20000; + let actual = math.multiply(baseValue, addedValue); + //Then + expect(actual).toEqual(expected); +}); diff --git a/strangerStrings/StrangerStrings.js b/strangerStrings/StrangerStrings.js index 7fb3629..916429c 100644 --- a/strangerStrings/StrangerStrings.js +++ b/strangerStrings/StrangerStrings.js @@ -1,36 +1,46 @@ class StrangerStrings { + getHelloWorld() { + return "Hello World"; + } - getHelloWorld(){ - return null; - } + concatenation(firstSegment, secondSegment) { + return firstSegment + secondSegment; + } - concatenation(firstSegment, secondSegment){ - return null; - } + getPrefix(input) { + return input.substr(0, 3); + } - getPrefix(input){ - return null; - } + getSuffix(input) { + return input.substr(input.length - 3, input.length); + } - getSuffix(input){ - return null; - } + getMiddleCharacter(inputValue) { + let position; + let length; + if (inputValue.length % 2 == 0) { + position = inputValue.length / 2 - 1; + length = 2; + } else { + position = (inputValue.length - 1) / 2; + length = 1; + } + return inputValue.substring(position, position + length); + } - getMiddleCharacter(input){ - return null; - } + getFirstWord(inputValue) { + let getFirst = inputValue.split(" "); + return getFirst[0]; + } - getFirstWord(input){ - return null; - } - - getSecondWord(spaceDelimnatedInput){ - return null; - } - - reverse(input){ - return null; - } + getSecondWord(inputValue) { + let getSecond = inputValue.split(" "); + return getSecond[1]; + } + + reverse(inputValue) { + return inputValue.split("").reverse().join(""); + } } -module.exports = StrangerStrings; \ No newline at end of file +module.exports = StrangerStrings; diff --git a/strangerStrings/StrangerStrings.test.js b/strangerStrings/StrangerStrings.test.js index 59da8fa..540e3c2 100644 --- a/strangerStrings/StrangerStrings.test.js +++ b/strangerStrings/StrangerStrings.test.js @@ -1,115 +1,105 @@ -const { TestScheduler } = require('jest'); -const StrangerStrings = require('./StrangerStrings'); - +//const { TestScheduler } = require('jest'); +const StrangerStrings = require("./StrangerStrings"); test("Hello World Test", () => { - // Given - let strangerStrings = new StrangerStrings(); - let expected = "Hello World"; - - - // When - let actual = strangerStrings.getHelloWorld(); - //Then - expect(actual).toEqual(expected); + // Given + let strangerStrings = new StrangerStrings(); + let expected = "Hello World"; + + // When + let actual = strangerStrings.getHelloWorld(); + //Then + expect(actual).toEqual(expected); }); test("return the concatenation of `firstSegment`, and , `secondSegment`", () => { - // Given - let strangerStrings = new StrangerStrings(); - let firstSegment = 'Wutang'; - let secondSegment = ' Forever'; + // Given + let strangerStrings = new StrangerStrings(); + let firstSegment = "Wutang"; + let secondSegment = " Forever"; - let expected = "Wutang Forever"; + let expected = "Wutang Forever"; - - // When - let actual = strangerStrings.concatenation(firstSegment, secondSegment); - //Then - expect(actual).toEqual(expected); + // When + let actual = strangerStrings.concatenation(firstSegment, secondSegment); + //Then + expect(actual).toEqual(expected); }); test("return the first 3 characters of `input`", () => { - // Given - let strangerStrings = new StrangerStrings(); - let input = 'Wutang'; - - let expected = "Wut"; + // Given + let strangerStrings = new StrangerStrings(); + let input = "Wutang"; + let expected = "Wut"; - // When - let actual = strangerStrings.getPrefix(input); - //Then - expect(actual).toEqual(expected); + // When + let actual = strangerStrings.getPrefix(input); + //Then + expect(actual).toEqual(expected); }); test("return the last 3 characters of `input`", () => { - // Given - let strangerStrings = new StrangerStrings(); - let input = 'Wutang'; - - let expected = "ang"; + // Given + let strangerStrings = new StrangerStrings(); + let input = "Wutang"; + let expected = "ang"; - // When - let actual = strangerStrings.getSuffix(input); - //Then - expect(actual).toEqual(expected); + // When + let actual = strangerStrings.getSuffix(input); + //Then + expect(actual).toEqual(expected); }); - test("return the middle character of `inputValue`", () => { - // Given - let strangerStrings = new StrangerStrings(); - let inputValue = 'MethodMan'; - - let expected = "o"; + // Given + let strangerStrings = new StrangerStrings(); + let inputValue = "MethodMan"; + let expected = "o"; - // When - let actual = strangerStrings.getMiddleCharacter(input); - //Then - expect(actual).toEqual(expected); + // When + let actual = strangerStrings.getMiddleCharacter(inputValue); + //Then + expect(actual).toEqual(expected); }); test("return the first sequence of characters", () => { - // Given - let strangerStrings = new StrangerStrings(); - let inputValue = 'Wutang Clan'; - - let expected = "Wutang"; + // Given + let strangerStrings = new StrangerStrings(); + let inputValue = "Wutang Clan"; + let expected = "Wutang"; - // When - let actual = strangerStrings.getFirstWord(inputValue); - //Then - expect(actual).toEqual(expected); + // When + let actual = strangerStrings.getFirstWord(inputValue); + //Then + expect(actual).toEqual(expected); }); test("return the second sequence of characters", () => { - // Given - let strangerStrings = new StrangerStrings(); - let inputValue = 'Wutang Clan'; + // Given + let strangerStrings = new StrangerStrings(); + let inputValue = "Wutang Clan"; - let expected = "Clan"; + let expected = "Clan"; - - // When - let actual = strangerStrings.getSecondWord(inputValue); - //Then - expect(actual).toEqual(expected); + // When + let actual = strangerStrings.getSecondWord(inputValue); + //Then + expect(actual).toEqual(expected); }); test("return the reverse of input", () => { - // Given - let strangerStrings = new StrangerStrings(); - let inputValue = 'WutangClan'; - - let expected = "nalCgnatuW"; + // Given + let strangerStrings = new StrangerStrings(); + let inputValue = "WutangClan"; + let expected = "nalCgnatuW"; - // When - let actual = strangerStrings.reverse(inputValue); - //Then - expect(actual).toEqual(expected); -}); \ No newline at end of file + // When + let actual = strangerStrings.reverse(inputValue); + //Then + expect(actual).toEqual(expected); +});