Update repeatString tests

This commit is contained in:
kumang 2024-01-04 13:21:43 +02:00
parent b8b1ae4eda
commit 3587fce6fb
2 changed files with 34 additions and 36 deletions

View File

@ -1,37 +1,37 @@
const repeatString = require('./repeatString') const repeatString = require("./repeatString");
describe('repeatString', () => { describe("repeatString", () => {
test('repeats the string', () => { test("repeats the string", () => {
expect(repeatString('hey', 3)).toEqual('heyheyhey'); expect(repeatString("hey", 3)).toEqual("heyheyhey");
}); });
test.skip('repeats the string many times', () => { test.skip("repeats the string many times", () => {
expect(repeatString('hey', 10)).toEqual('heyheyheyheyheyheyheyheyheyhey'); expect(repeatString("hello", 10)).toEqual("hellohellohellohellohellohellohellohellohellohello");
}); });
test.skip('repeats the string 1 times', () => { test.skip("repeats the string 1 times", () => {
expect(repeatString('hey', 1)).toEqual('hey'); expect(repeatString("hi", 1)).toEqual("hi");
}); });
test.skip('repeats the string 0 times', () => { test.skip("repeats the string 0 times", () => {
expect(repeatString('hey', 0)).toEqual(''); expect(repeatString("bye", 0)).toEqual("");
}); });
test.skip('returns ERROR with negative numbers', () => { test.skip("returns ERROR with negative numbers", () => {
expect(repeatString('hey', -1)).toEqual('ERROR'); expect(repeatString("goodbye", -1)).toEqual("ERROR");
}); });
test.skip('repeats the string a random amount of times', function () { test.skip("repeats the string a random amount of times", function () {
/*The number is generated by using Math.random to get a value from between /*The number is generated by using Math.random to get a value from between
0 to 1, when this is multiplied by 1000 and rounded down with Math.floor it 0 to 1, when this is multiplied by 1000 and rounded down with Math.floor it
equals a number between 0 to 999 (this number will change everytime you run equals a number between 0 to 999 (this number will change everytime you run
the test).*/ the test).*/
// DO NOT use Math.floor(Math.random() * 1000) in your code, // DO NOT use Math.floor(Math.random() * 1000) in your code,
// this test generates a random number, then passes it into your code with a function parameter. // this test generates a random number, then passes it into your code with a function parameter.
// If this doesn't make sense, you should go read about functions here: https://www.theodinproject.com/paths/foundations/courses/foundations/lessons/fundamentals-part-3 // If this doesn't make sense, you should go read about functions here: https://www.theodinproject.com/paths/foundations/courses/foundations/lessons/fundamentals-part-3
const number = Math.floor(Math.random() * 1000) const number = Math.floor(Math.random() * 1000);
/*The .match(/((hey))/g).length is a regex that will count the number of heys /*The .match(/((hey))/g).length is a regex that will count the number of heys
in the result, which if your function works correctly will equal the number that in the result, which if your function works correctly will equal the number that
was randomly generated. */ was randomly generated. */
expect(repeatString('hey', number).match(/((hey))/g).length).toEqual(number); expect(repeatString("odin", number).match(/((odin))/g).length).toEqual(number);
}); });
test.skip('works with blank strings', () => { test.skip("works with blank strings", () => {
expect(repeatString('', 10)).toEqual(''); expect(repeatString("", 10)).toEqual("");
}); });
}); });

View File

@ -1,22 +1,22 @@
const repeatString = require('./repeatString-solution'); const repeatString = require("./repeatString-solution");
describe('repeatString', () => { describe("repeatString", () => {
test('repeats the string', () => { test("repeats the string", () => {
expect(repeatString('hey', 3)).toEqual('heyheyhey'); expect(repeatString("hey", 3)).toEqual("heyheyhey");
}); });
test('repeats the string many times', () => { test("repeats the string many times", () => {
expect(repeatString('hey', 10)).toEqual('heyheyheyheyheyheyheyheyheyhey'); expect(repeatString("hello", 10)).toEqual("hellohellohellohellohellohellohellohellohellohello");
}); });
test('repeats the string 1 times', () => { test("repeats the string 1 times", () => {
expect(repeatString('hey', 1)).toEqual('hey'); expect(repeatString("hi", 1)).toEqual("hi");
}); });
test('repeats the string 0 times', () => { test("repeats the string 0 times", () => {
expect(repeatString('hey', 0)).toEqual(''); expect(repeatString("bye", 0)).toEqual("");
}); });
test('returns ERROR with negative numbers', () => { test("returns ERROR with negative numbers", () => {
expect(repeatString('hey', -1)).toEqual('ERROR'); expect(repeatString("goodbye", -1)).toEqual("ERROR");
}); });
test('repeats the string a random amount of times', function () { test("repeats the string a random amount of times", function () {
/*The number is generated by using Math.random to get a value from between /*The number is generated by using Math.random to get a value from between
0 to 1, when this is multiplied by 1000 and rounded down with Math.floor it 0 to 1, when this is multiplied by 1000 and rounded down with Math.floor it
equals a number between 0 to 999 (this number will change everytime you run equals a number between 0 to 999 (this number will change everytime you run
@ -29,11 +29,9 @@ describe('repeatString', () => {
/*The .match(/((hey))/g).length is a regex that will count the number of heys /*The .match(/((hey))/g).length is a regex that will count the number of heys
in the result, which if your function works correctly will equal the number that in the result, which if your function works correctly will equal the number that
was randomaly generated. */ was randomaly generated. */
expect(repeatString('hey', number).match(/((hey))/g).length).toEqual( expect(repeatString("odin", number).match(/((odin))/g).length).toEqual(number);
number
);
}); });
test('works with blank strings', () => { test("works with blank strings", () => {
expect(repeatString('', 10)).toEqual(''); expect(repeatString("", 10)).toEqual("");
}); });
}); });