From b6d62a677b9c230d32897b88559d30c00362dd67 Mon Sep 17 00:00:00 2001 From: Henry Oswald Date: Fri, 26 Feb 2016 08:13:41 +0000 Subject: [PATCH] ProjectDeleter.archiveProject doesn't need to get entire project --- .../web/app/coffee/Features/Project/ProjectDeleter.coffee | 3 ++- .../test/UnitTests/coffee/Project/ProjectDeleterTests.coffee | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/services/web/app/coffee/Features/Project/ProjectDeleter.coffee b/services/web/app/coffee/Features/Project/ProjectDeleter.coffee index 6fdba733e7..4a3b34bc9e 100644 --- a/services/web/app/coffee/Features/Project/ProjectDeleter.coffee +++ b/services/web/app/coffee/Features/Project/ProjectDeleter.coffee @@ -1,4 +1,5 @@ Project = require('../../models/Project').Project +ProjectGetter = require("./ProjectGetter") logger = require('logger-sharelatex') documentUpdaterHandler = require('../DocumentUpdater/DocumentUpdaterHandler') tagsHandler = require("../Tags/TagsHandler") @@ -34,7 +35,7 @@ module.exports = ProjectDeleter = archiveProject: (project_id, callback = (error) ->)-> logger.log project_id:project_id, "deleting project" - Project.findById project_id, (err, project)=> + ProjectGetter.getProject project_id, {owner_ref:1, collaberator_refs:1, readOnly_refs:1}, (err, project)=> if err? or !project? logger.err err:err, project_id:project_id, "error getting project to delete it" callback(err) diff --git a/services/web/test/UnitTests/coffee/Project/ProjectDeleterTests.coffee b/services/web/test/UnitTests/coffee/Project/ProjectDeleterTests.coffee index 13f5d2a694..bdf9f79ece 100644 --- a/services/web/test/UnitTests/coffee/Project/ProjectDeleterTests.coffee +++ b/services/web/test/UnitTests/coffee/Project/ProjectDeleterTests.coffee @@ -25,12 +25,15 @@ describe 'ProjectDeleter', -> @editorController = notifyUsersProjectHasBeenDeletedOrRenamed : sinon.stub().callsArgWith(1) @TagsHandler = removeProjectFromAllTags: sinon.stub().callsArgWith(2) + @ProjectGetter = + getProject:sinon.stub() @deleter = SandboxedModule.require modulePath, requires: "../Editor/EditorController": @editorController '../../models/Project':{Project:@Project} '../DocumentUpdater/DocumentUpdaterHandler': @documentUpdaterHandler "../Tags/TagsHandler":@TagsHandler "../FileStore/FileStoreHandler": @FileStoreHandler = {} + "./ProjectGetter": @ProjectGetter 'logger-sharelatex': log:-> @@ -89,6 +92,7 @@ describe 'ProjectDeleter', -> describe "archiveProject", -> beforeEach -> + @ProjectGetter.getProject.callsArgWith(2, null, @project) @Project.update.callsArgWith(2) it "should flushProjectToMongoAndDelete in doc updater", (done)->