From 6f22cd698ba08be42b4235b53c9738577274c88f Mon Sep 17 00:00:00 2001 From: Zak Henry Date: Mon, 21 Sep 2015 16:31:15 +1000 Subject: [PATCH] Added test for saving user without any changes --- app/src/common/services/user/userService.spec.ts | 13 +++++++++++++ app/src/common/services/user/userService.ts | 4 ++++ 2 files changed, 17 insertions(+) diff --git a/app/src/common/services/user/userService.spec.ts b/app/src/common/services/user/userService.spec.ts index e6c6b154..768a9d41 100644 --- a/app/src/common/services/user/userService.spec.ts +++ b/app/src/common/services/user/userService.spec.ts @@ -283,6 +283,19 @@ namespace common.services.user { $httpBackend.flush(); }); + + + it('should not make an api call if nothing has changed', () => { + + let user = common.models.UserMock.entity(); + user.setExists(true); + + let savePromise = userService.saveUserWithRelated(user); + + expect(savePromise).eventually.to.equal(user); + + }); + }); }); diff --git a/app/src/common/services/user/userService.ts b/app/src/common/services/user/userService.ts index 381bc97e..254b4a55 100644 --- a/app/src/common/services/user/userService.ts +++ b/app/src/common/services/user/userService.ts @@ -197,6 +197,10 @@ namespace common.services.user { */ private saveUserProfile(user:common.models.User):ng.IPromise{ + if (!user._userProfile){ //don't try to save if there is no profile + return this.$q.when(false); + } + let changes:any = (user._userProfile).getChanged(); if (_.isEmpty(changes)){ return this.$q.when(false);