diff --git a/src/restoreNames.test.js b/src/restoreNames.test.js index 6310350..c490f65 100644 --- a/src/restoreNames.test.js +++ b/src/restoreNames.test.js @@ -1,11 +1,82 @@ 'use strict'; describe('restoreNames', () => { - // const { restoreNames } = require('./restoreNames'); + const { restoreNames } = require('./restoreNames'); - it('should ', () => { + it('should update firstname field', () => { + const users = [ + { + firstName: undefined, + lastName: 'Holy', + fullName: 'Jack Holy', + }, + ]; + restoreNames(users); + + expect(users).toEqual([ + { + firstName: 'Jack', + lastName: 'Holy', + fullName: 'Jack Holy', + }, + ]); + }); + + it('should add firstname field if not exist', () => { + const users = [ + { + lastName: 'Adams', + fullName: 'Mike Adams', + }, + ]; + + restoreNames(users); + + expect(users).toEqual([ + { + firstName: 'Mike', + lastName: 'Adams', + fullName: 'Mike Adams', + }, + ]); }); - // write tests here + it('should handle an empty array without errors', () => { + const users = []; + + restoreNames(users); + + expect(users).toEqual([]); + }); + + it(`should not update if firstname isn't empty`, () => { + const users = [ + { + firstName: 'Mike', + lastName: 'Adams', + }, + ]; + + restoreNames(users); + + expect(users).toEqual([ + { + firstName: 'Mike', + lastName: 'Adams', + }, + ]); + }); + + it(`should return undefined`, () => { + const users = [ + { + firstName: undefined, + lastName: 'Holy', + fullName: 'Jack Holy', + }, + ]; + + expect(restoreNames(users)).toBe(undefined); + }); });