From 51a4debffddc38e4e67e4a7b6978ad78b9db4bc5 Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Mon, 21 Nov 2022 07:49:15 +0000 Subject: [PATCH 01/27] Folder A and B under exercises completed --- exercises/B-hello-world/exercise.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/exercises/B-hello-world/exercise.js b/exercises/B-hello-world/exercise.js index b179ee953..1c809b876 100644 --- a/exercises/B-hello-world/exercise.js +++ b/exercises/B-hello-world/exercise.js @@ -1 +1,7 @@ console.log("Hello world"); +console.log("Hello World. I just started learning JavaScript!"); + +//npm test -- --testPathPattern mandatory/1-syntax-errors.js -> run single test + +console.log(3); +console.log(Hello); From 47b77a2a7542817e3725f8bdab9fb500fa69bbeb Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Mon, 21 Nov 2022 07:55:43 +0000 Subject: [PATCH 02/27] exercise for folder c completed --- exercises/C-variables/exercise.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/exercises/C-variables/exercise.js b/exercises/C-variables/exercise.js index a6bbb9786..1fa7db4be 100644 --- a/exercises/C-variables/exercise.js +++ b/exercises/C-variables/exercise.js @@ -1,3 +1,6 @@ // Start by creating a variable `greeting` +let greeting = "Hello World!!!"; console.log(greeting); +console.log(greeting); +console.log(greeting); From 5ed4bbfb15d981c74ad634aac1aa362a95ead054 Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Mon, 21 Nov 2022 08:03:37 +0000 Subject: [PATCH 03/27] Exercise in folder D completed --- exercises/D-strings/exercise.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/exercises/D-strings/exercise.js b/exercises/D-strings/exercise.js index 2cffa6a81..69fe59fc6 100644 --- a/exercises/D-strings/exercise.js +++ b/exercises/D-strings/exercise.js @@ -1,3 +1,8 @@ // Start by creating a variable `message` - +const message = "Hello World. This is a string"; console.log(message); +console.log(typeof message); + +const pounds = 5; +console.log(pounds); +console.log(typeof pounds); From a23ca2ee9fbc6ed60793a514cf95e0f39eb036d3 Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Mon, 21 Nov 2022 08:11:13 +0000 Subject: [PATCH 04/27] Folder E in exercises completed --- .vscode/settings.json | 3 +++ exercises/E-strings-concatenation/exercise.js | 5 +++++ 2 files changed, 8 insertions(+) create mode 100644 .vscode/settings.json diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 000000000..a5109f603 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "cSpell.words": ["Andi", "Andriana"] +} diff --git a/exercises/E-strings-concatenation/exercise.js b/exercises/E-strings-concatenation/exercise.js index 2cffa6a81..fd34e8030 100644 --- a/exercises/E-strings-concatenation/exercise.js +++ b/exercises/E-strings-concatenation/exercise.js @@ -1,3 +1,8 @@ // Start by creating a variable `message` +let greetingStart = "Hello, my name is "; +let name = "Andriana"; +name = "Andi"; + +const message = greetingStart + name; console.log(message); From 4e32ffe16fcc674aaa7d845012a8738807dc1efc Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Mon, 21 Nov 2022 08:29:00 +0000 Subject: [PATCH 05/27] Exercise F completed --- exercises/F-strings-methods/exercise.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/exercises/F-strings-methods/exercise.js b/exercises/F-strings-methods/exercise.js index 2cffa6a81..c60b14ba4 100644 --- a/exercises/F-strings-methods/exercise.js +++ b/exercises/F-strings-methods/exercise.js @@ -1,3 +1,15 @@ // Start by creating a variable `message` +let name = "Andriana"; +const nameLength = name.length; + +console.log(name); +console.log(nameLength); + +let nameLowerCase = name.toLowerCase(); + +console.log(nameLowerCase); + +const message = ` My name is ${name} and my name is ${nameLength} characters long. `; console.log(message); +console.log(message.trim()); From f155496d417ca110f7851f276add63446fcae7c9 Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Mon, 21 Nov 2022 08:34:30 +0000 Subject: [PATCH 06/27] Exercise 2 in folder F completed --- exercises/F-strings-methods/exercise2.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/exercises/F-strings-methods/exercise2.js b/exercises/F-strings-methods/exercise2.js index b4b46943d..53fd77db6 100644 --- a/exercises/F-strings-methods/exercise2.js +++ b/exercises/F-strings-methods/exercise2.js @@ -1,3 +1,7 @@ const name = " Daniel "; +const nameLength = name.length; + +const message = ` My name is ${name} and my name is ${nameLength} characters long. `; console.log(message); +console.log(message.trim()); From 477052e091ac37933875c74aacf233a0bbc3c55a Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Mon, 21 Nov 2022 08:41:38 +0000 Subject: [PATCH 07/27] Exercise G completed --- exercises/G-numbers/exercise.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/exercises/G-numbers/exercise.js b/exercises/G-numbers/exercise.js index 49e7bc00b..68c253289 100644 --- a/exercises/G-numbers/exercise.js +++ b/exercises/G-numbers/exercise.js @@ -1 +1,7 @@ // Start by creating a variables `numberOfStudents` and `numberOfMentors` +let numberOfStudents = 15; +let numberOfMentors = 8; + +const total = numberOfMentors + numberOfStudents; + +console.log(total); From da9233a9654863b5f32e82334622b3e647c82dbe Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Mon, 21 Nov 2022 12:22:37 +0000 Subject: [PATCH 08/27] Exercise I-floats completed --- exercises/I-floats/exercise.js | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/exercises/I-floats/exercise.js b/exercises/I-floats/exercise.js index a5bbcd852..55c1ddae9 100644 --- a/exercises/I-floats/exercise.js +++ b/exercises/I-floats/exercise.js @@ -1,2 +1,16 @@ var numberOfStudents = 15; var numberOfMentors = 8; + +const totalNumber = numberOfMentors + numberOfStudents; + +let percentageStudents = (numberOfStudents / totalNumber) * 100; +const roughPercentageStudents = Math.round(percentageStudents); + +console.log(percentageStudents); +console.log(roughPercentageStudents); + +let percentageMentors = (numberOfMentors / totalNumber) * 100; +const roughPercentageMentors = Math.round(percentageMentors); + +console.log(percentageMentors); +console.log(roughPercentageMentors); From 8888785554a5f78a646dac527819008361571278 Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Mon, 21 Nov 2022 12:29:46 +0000 Subject: [PATCH 09/27] Exercise 1 J-functions completed --- exercises/J-functions/exercise.js | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/exercises/J-functions/exercise.js b/exercises/J-functions/exercise.js index 0ae5850e5..fb3832294 100644 --- a/exercises/J-functions/exercise.js +++ b/exercises/J-functions/exercise.js @@ -1,7 +1,19 @@ function halve(number) { - // complete the function here + return number / 2; } var result = halve(12); console.log(result); + +result = halve(10); + +console.log(result); + +result = halve(8); + +console.log(result); + +result = halve(6); + +console.log(result); From ac8e16fcf5e2dc03319627d0386f0b8da18581f1 Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Mon, 21 Nov 2022 12:50:19 +0000 Subject: [PATCH 10/27] Exercise 2 for J-functions completed --- exercises/J-functions/exercise2.js | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/exercises/J-functions/exercise2.js b/exercises/J-functions/exercise2.js index 82ef5e780..457e947af 100644 --- a/exercises/J-functions/exercise2.js +++ b/exercises/J-functions/exercise2.js @@ -1,7 +1,19 @@ function triple(number) { - // complete function here + return number * 3; } var result = triple(12); console.log(result); + +result = triple(10); + +console.log(result); + +result = triple(8); + +console.log(result); + +result = triple(6); + +console.log(result); From 8f213c47d4fb25b378aaeed64697bcbc17d28a92 Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Mon, 21 Nov 2022 12:55:14 +0000 Subject: [PATCH 11/27] Completed exercise 1 of K-functions-parameters --- exercises/K-functions-parameters/exercise.js | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/exercises/K-functions-parameters/exercise.js b/exercises/K-functions-parameters/exercise.js index 8d5db5e69..ed88cb68b 100644 --- a/exercises/K-functions-parameters/exercise.js +++ b/exercises/K-functions-parameters/exercise.js @@ -1,9 +1,17 @@ // Complete the function so that it takes input parameters -function multiply() { - // Calculate the result of the function and return it +function multiply(a, b) { + return a * b; } // Assign the result of calling the function the variable `result` var result = multiply(3, 4); console.log(result); + +result = multiply(2, 2); + +console.log(result); + +result = multiply(10, 10); + +console.log(result); From c47fc87f11f6cdfd95817483e3119b414c25b665 Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Mon, 21 Nov 2022 12:58:46 +0000 Subject: [PATCH 12/27] Completed exercise 2 for K-functions-parameters --- exercises/K-functions-parameters/exercise2.js | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/exercises/K-functions-parameters/exercise2.js b/exercises/K-functions-parameters/exercise2.js index db7a8904b..4a5a35dda 100644 --- a/exercises/K-functions-parameters/exercise2.js +++ b/exercises/K-functions-parameters/exercise2.js @@ -1,5 +1,19 @@ -// Declare your function first +function divide(a, b) { + return a / b; +} var result = divide(3, 4); console.log(result); + +result = divide(10, 2); + +console.log(result); + +result = divide(72, 3); + +console.log(result); + +result = divide(1, 2); + +console.log(result); From 7db96bb5db3f78a3a4045e72c987c3f45a60df5b Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Mon, 21 Nov 2022 13:08:22 +0000 Subject: [PATCH 13/27] Exercise 3 K-functions-parameters completed --- exercises/K-functions-parameters/exercise3.js | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/exercises/K-functions-parameters/exercise3.js b/exercises/K-functions-parameters/exercise3.js index 537e9f4ec..fd7f45539 100644 --- a/exercises/K-functions-parameters/exercise3.js +++ b/exercises/K-functions-parameters/exercise3.js @@ -1,5 +1,19 @@ -// Write your function here +function createGreeting(name) { + return (message = `Hello, my name is ${name}`); +} var greeting = createGreeting("Daniel"); console.log(greeting); + +greeting = createGreeting("Day"); + +console.log(greeting); + +greeting = createGreeting("Lewis"); + +console.log(greeting); + +greeting = createGreeting("Junior"); + +console.log(greeting); From 303bb4da60947a3ce091979e7be05411688274b2 Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Mon, 21 Nov 2022 14:57:42 +0000 Subject: [PATCH 14/27] Exercise 4 K-functions-parameters completed --- exercises/K-functions-parameters/exercise4.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/exercises/K-functions-parameters/exercise4.js b/exercises/K-functions-parameters/exercise4.js index 7ab44589e..b9f88f298 100644 --- a/exercises/K-functions-parameters/exercise4.js +++ b/exercises/K-functions-parameters/exercise4.js @@ -1,5 +1,7 @@ -// Declare your function first +function add(a, b) { + return a + b; +} -// Call the function and assign to a variable `sum` +let sum = add(13, 124); console.log(sum); From 04d9910655ca43bd4287448afcfb146f284ca1b7 Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Mon, 21 Nov 2022 15:07:03 +0000 Subject: [PATCH 15/27] Exercise 5 K-functions-parameters completed --- exercises/K-functions-parameters/exercise5.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/exercises/K-functions-parameters/exercise5.js b/exercises/K-functions-parameters/exercise5.js index 7c5bcd605..e57bfbc87 100644 --- a/exercises/K-functions-parameters/exercise5.js +++ b/exercises/K-functions-parameters/exercise5.js @@ -1,4 +1,6 @@ -// Declare your function here +function createLongGreeting(name, age) { + return (message = `Hello, my name is ${name} and I'm ${age} years old`); +} const greeting = createLongGreeting("Daniel", 30); From 0cdcb32a49315cc48378a80f7b178d47293b7c25 Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Tue, 22 Nov 2022 09:08:40 +0000 Subject: [PATCH 16/27] No big changes made Only a commented out text added to page as reference --- exercises/L-functions-nested/exercise.js | 7 +++++++ mandatory/1-syntax-errors.js | 11 ++++++----- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/exercises/L-functions-nested/exercise.js b/exercises/L-functions-nested/exercise.js index a5d377442..d0391915c 100644 --- a/exercises/L-functions-nested/exercise.js +++ b/exercises/L-functions-nested/exercise.js @@ -3,3 +3,10 @@ var mentor2 = "Irina"; var mentor3 = "Mimi"; var mentor4 = "Rob"; var mentor5 = "Yohannes"; + +// ```js +// var name = "Daniel"; +// var nameLowerCase = name.toLowerCase(); + +// console.log(nameLowerCase); // "daniel" +// ```; diff --git a/mandatory/1-syntax-errors.js b/mandatory/1-syntax-errors.js index a10cc9ac2..98360ac6b 100644 --- a/mandatory/1-syntax-errors.js +++ b/mandatory/1-syntax-errors.js @@ -1,16 +1,17 @@ // There are syntax errors in this code - can you fix it to pass the tests? -function addNumbers(a b c) { +function addNumbers(a, b, c) { return a + b + c; } -function introduceMe(name, age) - return "Hello, my name is " + name "and I am " age + "years old"; +function introduceMe(name, age) { + return "Hello, my name is " + name + " and I am " + age + " years old"; +} function getTotal(a, b) { - total = a ++ b; + total = a + b; - return "The total is total"; + return "The total is " + total; } /* From 3ec81ae86fa3a8c416cd79b0f2c2e734de83e061 Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Tue, 22 Nov 2022 09:14:01 +0000 Subject: [PATCH 17/27] Syntax errors completed and tests passed --- mandatory/1-syntax-errors.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mandatory/1-syntax-errors.js b/mandatory/1-syntax-errors.js index 98360ac6b..566b465d0 100644 --- a/mandatory/1-syntax-errors.js +++ b/mandatory/1-syntax-errors.js @@ -11,7 +11,7 @@ function introduceMe(name, age) { function getTotal(a, b) { total = a + b; - return "The total is " + total; + return `The total is ${total}`; } /* From 303d4cc270f21a23634d276e52f94f4cb6eca3eb Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Tue, 22 Nov 2022 09:27:38 +0000 Subject: [PATCH 18/27] Exercise 2 of mandatory folder Exercise 2-logic-error of mandatory folder completed and tests passed --- mandatory/2-logic-error.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mandatory/2-logic-error.js b/mandatory/2-logic-error.js index 9cca7603b..6f1b1d56b 100644 --- a/mandatory/2-logic-error.js +++ b/mandatory/2-logic-error.js @@ -1,16 +1,16 @@ // The syntax for this function is valid but it has an error, find it and fix it. function trimWord(word) { - return wordtrim(); + return word.trim(); } function getStringLength(word) { - return "word".length(); + let wordLength = word.length; + return wordLength; } function multiply(a, b, c) { - a * b * c; - return; + return a * b * c; } /* From a3d82608079f8daf6134f25281cfa8cc433a856a Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Tue, 22 Nov 2022 10:05:06 +0000 Subject: [PATCH 19/27] Exercise 3 completed Exercise 3-function-output in mandatory folder completed --- mandatory/3-function-output.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/mandatory/3-function-output.js b/mandatory/3-function-output.js index 5a953ba60..b3e306216 100644 --- a/mandatory/3-function-output.js +++ b/mandatory/3-function-output.js @@ -2,13 +2,17 @@ function getRandomNumber() { return Math.random() * 10; } +//The Math.random() method returns a random number from 0 (inclusive) up to but not including 1 (exclusive). // Add comments to explain what this function does. You're meant to use Google! function combine2Words(word1, word2) { return word1.concat(word2); } +//The concat() method joins two or more strings, it does not change the existing strings but returns a new string. + function concatenate(firstWord, secondWord, thirdWord) { + return `${firstWord} ${secondWord} ${thirdWord}`; // Write the body of this function to concatenate three words together. // Look at the test case below to understand what this function is expected to return. } From 3ad312ecc7f60102c10b3bf7c7be475537df97ad Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Tue, 22 Nov 2022 11:08:50 +0000 Subject: [PATCH 20/27] 4-tax completed Exercise 4 in mandatory folder completed and tests passed --- mandatory/4-tax.js | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/mandatory/4-tax.js b/mandatory/4-tax.js index ba77c7ae2..16584e30d 100644 --- a/mandatory/4-tax.js +++ b/mandatory/4-tax.js @@ -5,7 +5,11 @@ Sales tax is 20% of the price of the product. */ -function calculateSalesTax() {} +function calculateSalesTax(number) { + let salesAmount = number * 0.2; + let newSalesAmount = salesAmount + number; + return newSalesAmount; +} /* CURRENCY FORMATTING @@ -17,7 +21,12 @@ function calculateSalesTax() {} Remember that the prices must include the sales tax (hint: you already wrote a function for this!) */ -function addTaxAndFormatCurrency() {} +function addTaxAndFormatCurrency(number) { + let salesTaxPlusAmount = calculateSalesTax(number); + let newSalesAmount = salesTaxPlusAmount.toFixed(2); + let totalAmount = `£${newSalesAmount}`; + return totalAmount; +} /* =================================================== From 66b46dd312bb82ee5d37592bbcef5e0ba60c2ac0 Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Tue, 22 Nov 2022 11:57:14 +0000 Subject: [PATCH 21/27] L-functions-nested completed Exercise in L-functions-nested has been completed --- exercises/L-functions-nested/exercise.js | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/exercises/L-functions-nested/exercise.js b/exercises/L-functions-nested/exercise.js index d0391915c..31fb8935a 100644 --- a/exercises/L-functions-nested/exercise.js +++ b/exercises/L-functions-nested/exercise.js @@ -10,3 +10,18 @@ var mentor5 = "Yohannes"; // console.log(nameLowerCase); // "daniel" // ```; + +function nameUpperCase(name) { + return name.toUpperCase(); +} + +function shoutyGreeting(name) { + let upperCaseName = nameUpperCase(name); + return `HELLO ${upperCaseName}`; +} + +console.log(shoutyGreeting(mentor1)); +console.log(shoutyGreeting(mentor2)); +console.log(shoutyGreeting(mentor3)); +console.log(shoutyGreeting(mentor4)); +console.log(shoutyGreeting(mentor5)); From 2f45004a6a3a83ab83e9d45d3b33ba690d794647 Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Tue, 22 Nov 2022 15:08:48 +0000 Subject: [PATCH 22/27] Currency conversion completed Currency conversion in the extra folder completed and passed testing --- extra/1-currency-conversion.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/extra/1-currency-conversion.js b/extra/1-currency-conversion.js index 75b3c6aab..8db7ff281 100644 --- a/extra/1-currency-conversion.js +++ b/extra/1-currency-conversion.js @@ -5,7 +5,10 @@ Write a function that converts a price to USD (exchange rate is 1.4 $ to £) */ -function convertToUSD() {} +function convertToUSD(price) { + let convertGbpToUsd = price * 1.4; + return convertGbpToUsd; +} /* CURRENCY CONVERSION @@ -15,7 +18,10 @@ function convertToUSD() {} They have also decided that they should add a 1% fee to all foreign transactions, which means you only convert 99% of the £ to BRL. */ -function convertToBRL() {} +function convertToBRL(price) { + let convertGbpToBrl = (price * 0.99 * 5.7).toFixed(2); + return Number(convertGbpToBrl); +} /* ======= TESTS - DO NOT MODIFY ===== There are some Tests in this file that will help you work out if your code is working. From 47b3d78e413c29c2d8cbc3b81048398b877379a2 Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Tue, 22 Nov 2022 15:50:59 +0000 Subject: [PATCH 23/27] 2-piping completed @ piping completed in extra folder and test passed --- extra/2-piping.js | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/extra/2-piping.js b/extra/2-piping.js index b4f8c4c1b..2b6d9145c 100644 --- a/extra/2-piping.js +++ b/extra/2-piping.js @@ -16,26 +16,26 @@ the final result to the variable goodCode */ -function add() { - +function add(num1, num2) { + return num1 + num2; } -function multiply() { - +function multiply(number1, number2) { + return number1 * number2; } -function format() { - +function format(price) { + return `£${price}`; } const startingValue = 2; // Why can this code be seen as bad practice? Comment your answer. -let badCode = +let badCode = format(multiply(add(startingValue, 10), 2)); //This formula for this variable is too complicated and long to read or figure out. /* BETTER PRACTICE */ -let goodCode = +let goodCode = format((startingValue + 10) * 2); /* ======= TESTS - DO NOT MODIFY ===== There are some Tests in this file that will help you work out if your code is working. From e6d01d28931f40ebcf063ebf1487b12831b9533a Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Wed, 23 Nov 2022 08:15:08 +0000 Subject: [PATCH 24/27] No changes --- extra/3-magic-8-ball.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/extra/3-magic-8-ball.js b/extra/3-magic-8-ball.js index 46f65f928..cd3a36008 100644 --- a/extra/3-magic-8-ball.js +++ b/extra/3-magic-8-ball.js @@ -45,9 +45,7 @@ // This should log "The ball has shaken!" // and return the answer. -function shakeBall() { - //Write your code in here -} +function shakeBall() {} /* This function should say whether the answer it is given is @@ -101,7 +99,9 @@ test("magic 8 ball returns different values each time", () => { ); } - let seenPositivities = new Set(Array.from(seenAnswers.values()).map(checkAnswer)); + let seenPositivities = new Set( + Array.from(seenAnswers.values()).map(checkAnswer) + ); if (seenPositivities.size < 2) { throw Error( "Expected to random answers with different positivities each time shakeBall was called, but always got the same one" From a8f58c1aa3401b13fd5480651d21019ec84232d1 Mon Sep 17 00:00:00 2001 From: AndrianaOS <113118206+AndrianaOS@users.noreply.github.com> Date: Wed, 23 Nov 2022 08:23:42 +0000 Subject: [PATCH 25/27] Delete 3-magic-8-ball.js --- extra/3-magic-8-ball.js | 118 ---------------------------------------- 1 file changed, 118 deletions(-) delete mode 100644 extra/3-magic-8-ball.js diff --git a/extra/3-magic-8-ball.js b/extra/3-magic-8-ball.js deleted file mode 100644 index cd3a36008..000000000 --- a/extra/3-magic-8-ball.js +++ /dev/null @@ -1,118 +0,0 @@ -/** - - Let's peer into the future using a Magic 8 Ball! - https://en.wikipedia.org/wiki/Magic_8-Ball - - There are a few steps to being able view the future though: - * Ask a question - * Shake the ball - * Get an answer - * Decide if it's positive or negative - - The question can be anything, but the answers are fixed, - and have different levels of positivity or negativity. - - Below are the possible answers: - - ## Very positive - It is certain. - It is decidedly so. - Without a doubt. - Yes - definitely. - You may rely on it. - - ## Positive - As I see it, yes. - Most likely. - Outlook good. - Yes. - Signs point to yes. - - ## Negative - Reply hazy, try again. - Ask again later. - Better not tell you now. - Cannot predict now. - Concentrate and ask again. - - ## Very negative - Don't count on it. - My reply is no. - My sources say no. - Outlook not so good. - Very doubtful. -*/ - -// This should log "The ball has shaken!" -// and return the answer. -function shakeBall() {} - -/* - This function should say whether the answer it is given is - - very positive - - positive - - negative - - very negative - - This function should expect to be called with any value which was returned by the shakeBall function. -*/ -function checkAnswer(answer) { - //Write your code in here -} - -/* -================================== -======= TESTS - DO NOT MODIFY ===== - -There are some Tests in this file that will help you work out if your code is working. - -To run the tests for just this one file, type `npm test -- --testPathPattern 3-magic-8-ball` into your terminal -(Reminder: You must have run `npm install` one time before this will work!) -================================== -*/ - -test("whole magic 8 ball sequence", () => { - const consoleLogSpy = jest.spyOn(global.console, "log"); - const answer = shakeBall(); - - expect(typeof answer).toEqual("string"); - - expect(consoleLogSpy).toHaveBeenCalledTimes(1); - expect(consoleLogSpy).toHaveBeenLastCalledWith("The ball has shaken!"); - - expect(checkAnswer(answer)).toBeOneOf([ - "very positive", - "positive", - "negative", - "very negative", - ]); -}); - -test("magic 8 ball returns different values each time", () => { - const seenAnswers = new Set(); - for (let i = 0; i < 10; ++i) { - seenAnswers.add(shakeBall()); - } - if (seenAnswers.size < 2) { - throw Error( - "Expected to get different random answers each time shakeBall was called, but always got the same one" - ); - } - - let seenPositivities = new Set( - Array.from(seenAnswers.values()).map(checkAnswer) - ); - if (seenPositivities.size < 2) { - throw Error( - "Expected to random answers with different positivities each time shakeBall was called, but always got the same one" - ); - } -}); - -test("checkAnswer works for `It is decidedly so.`", () => { - expect(checkAnswer("It is decidedly so.")).toEqual("very positive"); -}); - -test("checkAnswer works for `My reply is no.`", () => { - expect(checkAnswer("My reply is no.")).toEqual("very negative"); -}); From f48eb4486281b18e310ea8443a965b5b67fdbd5b Mon Sep 17 00:00:00 2001 From: AndrianaOS Date: Thu, 1 Dec 2022 10:13:30 +0000 Subject: [PATCH 26/27] Create .DS_Store --- .DS_Store | Bin 0 -> 6148 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 .DS_Store diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..0aabe7f817d492a42f16b61395ddb3944f10f513 GIT binary patch literal 6148 zcmeHK-EPw`82#LJEZGJs2&CO0MdEfXWt}D=Zo1M6Dj1-punRz;X{s$Oi>oH3psG@@ z;T?DdZg~>kg)2CAjFhC=EmX*#WS`GJ=Zk&f*f9~Y*2KFdeA{tWE4VHTA3ax-vVAT{5->!)-_9N1mQr|BhxB++3Dz=70q}nfO@QBtW zBL<`24Kh8y<$7+?BRU4ZOusZOnsO`{GdQlkT zXD&u17sIBP)S@GdqF2N(o#y!06yK3!aKJpoJf0MB*_RyG#2ot+l7~Dd4wXJ-XDs#n zn$oj?;ZCEGdIR6xQQ${$z5auh*2?QwHjE8p%Xn*_@u?m6<4M%&k6(*YkMqF&yKRCZ>wy@UF$)!1*$cdgm| zJ^1^LgZbPvZr!>2;Mh42E<*kp^M*0({nEr*N}JH7U}hieaTxGWC@z@WP>MsVAvw@Z zcoPax!Wpu(veKGerxElW&^hu`^sj=&Ww}Q0aSCw?vk~MvOGntwMYxP7=8@)^SP31u zrjLL{D_X3^Gy}yIH1*z$trZ-b9+Fl-EAVd>5c`9LB(SM)k)Yf Date: Fri, 23 Dec 2022 15:50:29 +0000 Subject: [PATCH 27/27] Update .DS_Store --- .DS_Store | Bin 6148 -> 6148 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/.DS_Store b/.DS_Store index 0aabe7f817d492a42f16b61395ddb3944f10f513..3f77b617eb2eb988a89f2024bb5dc107233a2978 100644 GIT binary patch delta 60 zcmZoMXfc@J&&aniU^g=(-((&ZQ+ZB?RE7#5E@DV#$Ydx6vWm-si}G^v^U@g@7#KI( Nu`Fla%+B$b9{|