diff --git a/services/web/app/coffee/Features/Project/ProjectEntityHandler.coffee b/services/web/app/coffee/Features/Project/ProjectEntityHandler.coffee index 9b771625b3..7d3f7df6e2 100644 --- a/services/web/app/coffee/Features/Project/ProjectEntityHandler.coffee +++ b/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) diff --git a/services/web/test/UnitTests/coffee/Project/ProjectEntityHandlerTests.coffee b/services/web/test/UnitTests/coffee/Project/ProjectEntityHandlerTests.coffee index a44a16c10b..0e2441cf8d 100644 --- a/services/web/test/UnitTests/coffee/Project/ProjectEntityHandlerTests.coffee +++ b/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", ->