From 41dc30227f89655c13177ba95ce7423f6525e087 Mon Sep 17 00:00:00 2001 From: Shannon Date: Thu, 23 Jul 2020 19:04:42 +1000 Subject: [PATCH] Fixes tests --- .../src/common/mocks/resources/_utils.js | 14 ++- .../services/servervalidationmgr.service.js | 1 - .../services/block-editor-service.spec.js | 97 +++++++++++-------- 3 files changed, 68 insertions(+), 44 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/common/mocks/resources/_utils.js b/src/Umbraco.Web.UI.Client/src/common/mocks/resources/_utils.js index 619e1b77c3..efa7046569 100644 --- a/src/Umbraco.Web.UI.Client/src/common/mocks/resources/_utils.js +++ b/src/Umbraco.Web.UI.Client/src/common/mocks/resources/_utils.js @@ -1,5 +1,5 @@ angular.module('umbraco.mocks'). - factory('mocksUtils', ['$cookies', function ($cookies) { + factory('mocksUtils', ['$cookies', 'udiService', function ($cookies, udiService) { 'use strict'; //by default we will perform authorization @@ -40,13 +40,17 @@ angular.module('umbraco.mocks'). }, /** Creats a mock content object */ - getMockContent: function(id) { + getMockContent: function (id, key, udi) { + key = key || String.CreateGuid(); + var udi = udi || udiService.build("content", key); var node = { name: "My content with id: " + id, updateDate: new Date().toIsoDateTimeString(), publishDate: new Date().toIsoDateTimeString(), createDate: new Date().toIsoDateTimeString(), id: id, + key: key, + udi: udi, parentId: 1234, icon: "icon-umb-content", owner: { name: "Administrator", id: 0 }, @@ -282,13 +286,17 @@ angular.module('umbraco.mocks'). /** Creats a mock variant content object */ - getMockVariantContent: function(id) { + getMockVariantContent: function(id, key, udi) { + key = key || String.CreateGuid(); + var udi = udi || udiService.build("content", key); var node = { name: "My content with id: " + id, updateDate: new Date().toIsoDateTimeString(), publishDate: new Date().toIsoDateTimeString(), createDate: new Date().toIsoDateTimeString(), id: id, + key: key, + udi: udi, parentId: 1234, icon: "icon-umb-content", owner: { name: "Administrator", id: 0 }, diff --git a/src/Umbraco.Web.UI.Client/src/common/services/servervalidationmgr.service.js b/src/Umbraco.Web.UI.Client/src/common/services/servervalidationmgr.service.js index b2fdf37aa4..7f8212f2c6 100644 --- a/src/Umbraco.Web.UI.Client/src/common/services/servervalidationmgr.service.js +++ b/src/Umbraco.Web.UI.Client/src/common/services/servervalidationmgr.service.js @@ -504,7 +504,6 @@ function serverValidationManager($timeout) { // add a generic error for the property addPropertyError(propertyValidationKey, culture, htmlFieldReference, value && Array.isArray(value) && value.length > 0 ? value[0] : null, segment); - hasPropertyErrors = true; } else { diff --git a/src/Umbraco.Web.UI.Client/test/unit/common/services/block-editor-service.spec.js b/src/Umbraco.Web.UI.Client/test/unit/common/services/block-editor-service.spec.js index 7f69f0594e..07967dbb60 100644 --- a/src/Umbraco.Web.UI.Client/test/unit/common/services/block-editor-service.spec.js +++ b/src/Umbraco.Web.UI.Client/test/unit/common/services/block-editor-service.spec.js @@ -1,5 +1,8 @@ describe('blockEditorService tests', function () { + var key = "6A1F5BDD-67EF-4173-B061-D6348ED07094"; + var udi = "umb://element/6A1F5BDD67EF4173B061D6348ED07094"; + var blockEditorService, contentResource, $rootScope, $scope; beforeEach(module('umbraco.services')); @@ -17,7 +20,7 @@ contentResource = $injector.get("contentResource"); spyOn(contentResource, "getScaffoldByKey").and.callFake( function () { - return Promise.resolve(mocksUtils.getMockVariantContent(1234)) + return Promise.resolve(mocksUtils.getMockVariantContent(1234, key, udi)) } ); @@ -32,13 +35,13 @@ layout: { "Umbraco.TestBlockEditor": [ { - udi: 1234 + udi: udi } ] }, data: [ { - udi: 1234, + udi: udi, contentTypeKey: "7C5B74D1-E2F9-45A3-AE4B-FC7A829BF8AB", testproperty: "myTestValue" } @@ -105,15 +108,19 @@ modelObject.load().then(() => { - var layout = modelObject.getLayout(); + try { + var layout = modelObject.getLayout(); - var blockObject = modelObject.getBlockObject(layout[0]); + var blockObject = modelObject.getBlockObject(layout[0]); - expect(blockObject).not.toBeUndefined(); - expect(blockObject.data.udi).toBe(propertyModelMock.data[0].udi); - expect(blockObject.content.variants[0].tabs[0].properties[0].value).toBe(propertyModelMock.data[0].testproperty); + expect(blockObject).not.toBeUndefined(); + expect(blockObject.data.udi).toBe(propertyModelMock.data[0].udi); + expect(blockObject.content.variants[0].tabs[0].properties[0].value).toBe(propertyModelMock.data[0].testproperty); - done(); + done(); + } catch (e) { + done.fail(e); + } }); }); @@ -127,21 +134,23 @@ modelObject.load().then(() => { - var layout = modelObject.getLayout(); + try { + var layout = modelObject.getLayout(); - var blockObject = modelObject.getBlockObject(layout[0]); + var blockObject = modelObject.getBlockObject(layout[0]); - blockObject.content.variants[0].tabs[0].properties[0].value = "anotherTestValue"; + blockObject.content.variants[0].tabs[0].properties[0].value = "anotherTestValue"; - $rootScope.$digest();// invoke angularJS Store. + $rootScope.$digest();// invoke angularJS Store. - expect(blockObject.data).toBe(propertyModel.data[0]); - expect(blockObject.data.testproperty).toBe("anotherTestValue"); - expect(propertyModel.data[0].testproperty).toBe("anotherTestValue"); + expect(blockObject.data).toBe(propertyModel.data[0]); + expect(blockObject.data.testproperty).toBe("anotherTestValue"); + expect(propertyModel.data[0].testproperty).toBe("anotherTestValue"); - // - - done(); + done(); + } catch (e) { + done.fail(e); + } }); }); @@ -159,19 +168,23 @@ modelObject.load().then(() => { - var layout = modelObject.getLayout(); + try { + var layout = modelObject.getLayout(); - var blockObject = modelObject.getBlockObject(layout[0]); + var blockObject = modelObject.getBlockObject(layout[0]); - blockObject.content.variants[0].tabs[0].properties[0].value.list[0] = "AA"; - blockObject.content.variants[0].tabs[0].properties[0].value.list.push("D"); + blockObject.content.variants[0].tabs[0].properties[0].value.list[0] = "AA"; + blockObject.content.variants[0].tabs[0].properties[0].value.list.push("D"); - $rootScope.$digest();// invoke angularJS Store. + $rootScope.$digest();// invoke angularJS Store. - expect(propertyModel.data[0].testproperty.list[0]).toBe("AA"); - expect(propertyModel.data[0].testproperty.list.length).toBe(4); + expect(propertyModel.data[0].testproperty.list[0]).toBe("AA"); + expect(propertyModel.data[0].testproperty.list.length).toBe(4); - done(); + done(); + } catch (e) { + done.fail(e); + } }); }); @@ -205,25 +218,29 @@ modelObject.load().then(() => { - var layout = modelObject.getLayout(); + try { + var layout = modelObject.getLayout(); - var blockObject = modelObject.getBlockObject(layout[0]); + var blockObject = modelObject.getBlockObject(layout[0]); - expect(blockObject).not.toBeUndefined(); - expect(blockObject).not.toBe(null); + expect(blockObject).not.toBeUndefined(); + expect(blockObject).not.toBe(null); - // remove from layout; - layout.splice(0, 1); + // remove from layout; + layout.splice(0, 1); - // remove from data; - modelObject.removeDataAndDestroyModel(blockObject); + // remove from data; + modelObject.removeDataAndDestroyModel(blockObject); - expect(propertyModel.data.length).toBe(0); - expect(propertyModel.data[0]).toBeUndefined(); - expect(propertyModel.layout["Umbraco.TestBlockEditor"].length).toBe(0); - expect(propertyModel.layout["Umbraco.TestBlockEditor"][0]).toBeUndefined(); + expect(propertyModel.data.length).toBe(0); + expect(propertyModel.data[0]).toBeUndefined(); + expect(propertyModel.layout["Umbraco.TestBlockEditor"].length).toBe(0); + expect(propertyModel.layout["Umbraco.TestBlockEditor"][0]).toBeUndefined(); - done(); + done(); + } catch (e) { + done.fail(e); + } }); });