From 1cb376998094d1fb602c942481b880d8712f81b6 Mon Sep 17 00:00:00 2001 From: Ariane Date: Sat, 10 Jan 2026 11:18:23 +0100 Subject: [PATCH] add task solution --- src/restoreNames.test.js | 102 +++++++++++++++++++++++++++++++++++++-- 1 file changed, 99 insertions(+), 3 deletions(-) diff --git a/src/restoreNames.test.js b/src/restoreNames.test.js index 6310350..c69a34f 100644 --- a/src/restoreNames.test.js +++ b/src/restoreNames.test.js @@ -1,11 +1,107 @@ 'use strict'; +/* eslint-disable max-len */ describe('restoreNames', () => { - // const { restoreNames } = require('./restoreNames'); + const { restoreNames } = require('./restoreNames'); - it('should ', () => { + it(`should be declared`, () => { + expect(restoreNames).toBeInstanceOf(Function); + }); + + it(`should set correct firstName to users who do not have it`, () => { + const users = [ + { + lastName: 'Holy', + fullName: 'Jack Holy', + }, + { + lastName: 'Adams', + fullName: 'Mike Adams', + }, + ]; + + restoreNames(users); + + expect(users).toEqual([ + { + firstName: 'Jack', + lastName: 'Holy', + fullName: 'Jack Holy', + }, + { + firstName: 'Mike', + lastName: 'Adams', + fullName: 'Mike Adams', + }, + ]); + }); + it(`should not change anything if user already has a firstName`, () => { + const users = [ + { + firstName: 'Jack', + lastName: 'Holy', + fullName: 'Jack Holy', + }, + { + firstName: 'Mike', + lastName: 'Adams', + fullName: 'Mike Adams', + }, + ]; + + restoreNames(users); + + expect(users).toEqual([ + { + firstName: 'Jack', + lastName: 'Holy', + fullName: 'Jack Holy', + }, + { + firstName: 'Mike', + lastName: 'Adams', + fullName: 'Mike Adams', + }, + ]); }); - // write tests here + it(`should set correct firstName to users who's firstName is equal to undefined`, () => { + const users = [ + { + firstName: undefined, + lastName: 'Holy', + fullName: 'Jack Holy', + }, + { + lastName: 'Adams', + fullName: 'Mike Adams', + }, + { + firstName: undefined, + lastName: 'Smith', + fullName: 'Bob Smith', + }, + ]; + + restoreNames(users); + + expect(users).toEqual([ + { + firstName: 'Jack', + lastName: 'Holy', + fullName: 'Jack Holy', + }, + { + firstName: 'Mike', + lastName: 'Adams', + fullName: 'Mike Adams', + }, + { + firstName: 'Bob', + lastName: 'Smith', + fullName: 'Bob Smith', + }, + ]); + }); });