Add test preventing use of built-in String repeat method

This commit is contained in:
MaoShizhong
2025-02-04 04:08:26 +00:00
parent fd555e354c
commit 5ea6746a8d
2 changed files with 14 additions and 0 deletions
@@ -13,6 +13,13 @@ describe('repeatString', () => {
test('repeats the string 0 times', () => {
expect(repeatString('bye', 0)).toEqual('');
});
test('does not use the built-in String repeat method', () => {
/* Even though there is a built-in String repeat method,
in this exercise specifically, we want you to practise using loops */
jest.spyOn(String.prototype, 'repeat').mockName('Built-in String repeat method');
repeatString("don't use the built-in repeat method!", 1);
expect(String.prototype.repeat).not.toHaveBeenCalled();
});
test('returns ERROR with negative numbers', () => {
expect(repeatString('goodbye', -1)).toEqual('ERROR');
});