Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 16 additions & 5 deletions dead-code/exercise-1.js
Original file line number Diff line number Diff line change
@@ -1,17 +1,28 @@
// Find the instances of unreachable and redundant code - remove them!
// The sayHello function should continue to work for any reasonable input it's given.

let testName = "Jerry";
// let testName = "Jerry";
// const greeting = "hello";

// function sayHello(greeting, name) {
// const greetingStr = greeting + ", " + name + "!";
// return `${greeting}, ${name}!`;
// console.log(greetingStr);
// }

// testName = "Aman";

// const greetingMessage = sayHello(greeting, testName);

// console.log(greetingMessage); // 'hello, Aman!'

const greeting = "hello";
const testName = "Aman";

function sayHello(greeting, name) {
const greetingStr = greeting + ", " + name + "!";
return `${greeting}, ${name}!`;
console.log(greetingStr);
}

testName = "Aman";

const greetingMessage = sayHello(greeting, testName);

console.log(greetingMessage); // 'hello, Aman!'
34 changes: 28 additions & 6 deletions dead-code/exercise-2.js
Original file line number Diff line number Diff line change
@@ -1,14 +1,36 @@
// Remove the unused code that does not contribute to the final console log
// The countAndCapitalisePets function should continue to work for any reasonable input it's given, and you shouldn't modify the pets variable.

// const pets = ["parrot", "hamster", "horse", "dog", "hamster", "cat", "hamster"];
// const capitalisedPets = pets.map((pet) => pet.toUpperCase());
// const petsStartingWithH = pets.filter((pet) => pet[0] === "h");

// function logPets(petsArr) {
// petsArr.forEach((pet) => console.log(pet));
// }

// function countAndCapitalisePets(petsArr) {
// const petCount = {};

// petsArr.forEach((pet) => {
// const capitalisedPet = pet.toUpperCase();
// if (petCount[capitalisedPet]) {
// petCount[capitalisedPet] += 1;
// } else {
// petCount[capitalisedPet] = 1;
// }
// });
// return petCount;
// }

// const countedPetsStartingWithH = countAndCapitalisePets(petsStartingWithH);

// console.log(countedPetsStartingWithH); // { 'HAMSTER': 3, 'HORSE': 1 } <- Final console log


const pets = ["parrot", "hamster", "horse", "dog", "hamster", "cat", "hamster"];
const capitalisedPets = pets.map((pet) => pet.toUpperCase());
const petsStartingWithH = pets.filter((pet) => pet[0] === "h");

function logPets(petsArr) {
petsArr.forEach((pet) => console.log(pet));
}

function countAndCapitalisePets(petsArr) {
const petCount = {};

Expand All @@ -25,4 +47,4 @@ function countAndCapitalisePets(petsArr) {

const countedPetsStartingWithH = countAndCapitalisePets(petsStartingWithH);

console.log(countedPetsStartingWithH); // { 'HAMSTER': 3, 'HORSE': 1 } <- Final console log
console.log(countedPetsStartingWithH); // { 'HAMSTER': 3, 'HORSE': 1 }
10 changes: 10 additions & 0 deletions test-driven-development/fizzbuzz.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
function fizzbuzz(number){
if (number % 3 === 0 && number % 5 === 0){
return "fizzbuzz";
} else if (number % 5 === 0){
return "buzz";
} else if (number % 3 === 0){
return "fizz";
}
return number.toString();
};
36 changes: 36 additions & 0 deletions test-driven-development/fizzbuzz.test.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
import {fizzbuzz} from './fizzbuzz.js';
import assert from 'node:assert';
import {test, describe} from 'node:test';

describe('division by 3 and 5', () => {

test('15 returns fizzbuzz', () => {
assert.equal(fizzbuzz(15), "fizzbuzz");
});

test('30 returns fizzbuzz', () => {
assert.equal(fizzbuzz(30), "fizzbuzz");
});

test('90 returns fizzbuzz', () => {
assert.equal(fizzbuzz(90), "fizzbuzz");
});

});


describe('returning the number as a string', () => {

test('1 returns "1"', () => {
assert.equal(fizzbuzz(1), "1");
});

test('4 returns "4"', () => {
assert.equal(fizzbuzz(4), "4");
});

test('91 returns "91"', () => {
assert.equal(fizzbuzz(91), "91");
});

});
Loading