Skip to content
Open
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
7 changes: 6 additions & 1 deletion I.pass-tests/01-add-one/add-one.js
Original file line number Diff line number Diff line change
@@ -1 +1,6 @@
module.exports = function(numbers) {};
module.exports = function(numbers) {
if(numbers.length === 0){
throw new Error()
}
return numbers.map((n)=> n + 1)
};
13 changes: 10 additions & 3 deletions I.pass-tests/01-add-one/add-one.test.js
Original file line number Diff line number Diff line change
@@ -1,12 +1,19 @@
var addOne = require("./add-one.js");

test("Add 1 to each item in myArray", function() {
var myArray = [31, 57, 12, 5];
var myArray = [-1, 57, 12, 5];

var unchanged = [31, 57, 12, 5];
var expected = [32, 58, 13, 6];

var unchanged = [-1, 57, 12, 5];
var expected = [0, 58, 13, 6];
var output = addOne(myArray);


expect(output).toEqual(expected);
expect(myArray).toEqual(unchanged);
});

test('should throw error if there are no numbers in the array', () => {
const myArray = []
expect(() => addOne(myArray)).toThrow(Error)
})
14 changes: 12 additions & 2 deletions I.pass-tests/02-get-word-lengths/get-word-lengths.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
var getWordLengths = function(someWords) {};
var getWordLengths = function(someWords) {
if(someWords.length === 0){
throw new Error()
}
return someWords.map((word)=> {
if(typeof word != 'string'){
throw new Error()
}
return word.split('').length
})
};

module.exports = getWordLengths;
module.exports = getWordLengths;
11 changes: 11 additions & 0 deletions I.pass-tests/02-get-word-lengths/get-word-lengths.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,17 @@ test("Get word lengths", function() {
var words = ["sun", "potato", "roundabout", "pizza"];
var expected = [3, 6, 10, 5];


var output = wordLengths(words);
expect(output).toEqual(expected);
});

test("If there is an element that is not a string", function(){
const words = [123, "string"]
expect(() => wordLengths(words).toThrow(Error))
})

test("If array of words is empty", function(){
const words = []
expect(() => wordLengths(words)).toThrow(Error)
})
12 changes: 11 additions & 1 deletion I.pass-tests/03-sum-numbers/add-numbers.js
Original file line number Diff line number Diff line change
@@ -1,2 +1,12 @@
function addNumbers(numbers) {}
function addNumbers(numbers) {
if(numbers.length===0){
throw new Error()
}
return numbers.reduce((acc,current)=> {
if (typeof current != 'number'){
throw new Error()
}
return acc+current
})
}
module.exports = addNumbers;
10 changes: 10 additions & 0 deletions I.pass-tests/03-sum-numbers/add-numbers.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,13 @@ test("Add all numbers", function() {

expect(output).toEqual(expected);
});

test("Check if array is empty", function() {
var numbers = [];
expect(()=>addAllnumbers(numbers)).toThrow(Error);
});

test("If there is an element that is not a number", function(){
const words = [123, "string"]
expect(() => wordLengths(words).toThrow(Error))
})