Просмотр исходного кода

check that element being inserted has an _id

Henry Oswald 10 лет назад
Родитель
Сommit
ba9bc3a2e8

+ 1 - 1
services/web/app/coffee/Features/Project/ProjectEntityHandler.coffee

@@ -501,7 +501,7 @@ module.exports = ProjectEntityHandler =
 				elementType = "fileRefs"
 			return elementType
 
-		if !element?
+		if !element? or !element._id?
 			e = new Error("no element passed to be inserted")
 			logger.err project_id:project._id, folder_id:folder_id, element:element, type:type, "failed trying to insert element as it was null"
 			return callback(e)

+ 7 - 0
services/web/test/UnitTests/coffee/Project/ProjectEntityHandlerTests.coffee

@@ -1048,6 +1048,13 @@ describe 'ProjectEntityHandler', ->
 					@projectLocator.findElement.args[0][0].element_id.should.equal @project.rootFolder[0]._id
 					done()
 
+			it "should error if the element has no _id", (done)->
+				doc = 
+					name:"something"
+				@ProjectEntityHandler._putElement @project, @folder._id, doc, "doc", (err)=>
+					@ProjectModel.update.called.should.equal false
+					done()
+			
 
 
 		describe "_countElements", ->