From dbcd660b474c101dc8921f8ed482e87bc7a88744 Mon Sep 17 00:00:00 2001 From: Saddist <74913287+Saddist@users.noreply.github.com> Date: Wed, 5 Apr 2023 23:03:25 +0530 Subject: [PATCH] REPEAT STRING SOLVED --- 02_repeatString/repeatString.js | 20 ++++++++++++++++++-- 02_repeatString/repeatString.spec.js | 13 +++++++------ 2 files changed, 25 insertions(+), 8 deletions(-) diff --git a/02_repeatString/repeatString.js b/02_repeatString/repeatString.js index 4359bbe..75f054b 100644 --- a/02_repeatString/repeatString.js +++ b/02_repeatString/repeatString.js @@ -1,5 +1,21 @@ -const repeatString = function() { - +const repeatString = function(string,num) { + if(num ===0){ + return ""; + } + else if(num<0){ + return "ERROR"; + } + else if(num ===1){ + return string; + } + else { + let result = string; + while(num>1){ + result = result+ string; + num--; + } + return result; + } }; // Do not edit below this line diff --git a/02_repeatString/repeatString.spec.js b/02_repeatString/repeatString.spec.js index 912ac20..cb22d79 100644 --- a/02_repeatString/repeatString.spec.js +++ b/02_repeatString/repeatString.spec.js @@ -4,19 +4,19 @@ describe('repeatString', () => { test('repeats the string', () => { expect(repeatString('hey', 3)).toEqual('heyheyhey'); }); - test.skip('repeats the string many times', () => { + test('repeats the string many times', () => { expect(repeatString('hey', 10)).toEqual('heyheyheyheyheyheyheyheyheyhey'); }); - test.skip('repeats the string 1 times', () => { + test('repeats the string 1 times', () => { expect(repeatString('hey', 1)).toEqual('hey'); }); - test.skip('repeats the string 0 times', () => { + test('repeats the string 0 times', () => { expect(repeatString('hey', 0)).toEqual(''); }); - test.skip('returns ERROR with negative numbers', () => { + test('returns ERROR with negative numbers', () => { expect(repeatString('hey', -1)).toEqual('ERROR'); }); - test.skip('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 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 @@ -31,7 +31,8 @@ describe('repeatString', () => { was randomly generated. */ expect(repeatString('hey', number).match(/((hey))/g).length).toEqual(number); }); - test.skip('works with blank strings', () => { + test('works with blank strings', () => { expect(repeatString('', 10)).toEqual(''); }); }); +