diff --git a/services/web/app/coffee/Features/Project/ProjectDuplicator.coffee b/services/web/app/coffee/Features/Project/ProjectDuplicator.coffee index 692abe4ef7..b43dcea77c 100644 --- a/services/web/app/coffee/Features/Project/ProjectDuplicator.coffee +++ b/services/web/app/coffee/Features/Project/ProjectDuplicator.coffee @@ -4,6 +4,7 @@ projectLocator = require('./ProjectLocator') projectOptionsHandler = require('./ProjectOptionsHandler') DocumentUpdaterHandler = require("../DocumentUpdater/DocumentUpdaterHandler") DocstoreManager = require "../Docstore/DocstoreManager" +ProjectGetter = require("./ProjectGetter") Project = require("../../models/Project").Project _ = require('underscore') async = require('async') @@ -12,7 +13,7 @@ module.exports = duplicate: (owner, originalProjectId, newProjectName, callback)-> DocumentUpdaterHandler.flushProjectToMongo originalProjectId, (err) -> return callback(err) if err? - Project.findById originalProjectId, (err, originalProject) -> + ProjectGetter.getProject originalProjectId, (err, originalProject) -> return callback(err) if err? projectCreationHandler.createBlankProject owner._id, newProjectName, (err, newProject)-> return callback(err) if err? diff --git a/services/web/test/UnitTests/coffee/Project/ProjectDuplicatorTests.coffee b/services/web/test/UnitTests/coffee/Project/ProjectDuplicatorTests.coffee index 05427f3011..abc0b150fa 100644 --- a/services/web/test/UnitTests/coffee/Project/ProjectDuplicatorTests.coffee +++ b/services/web/test/UnitTests/coffee/Project/ProjectDuplicatorTests.coffee @@ -75,6 +75,9 @@ describe 'ProjectDuplicator', -> @Project = findById: sinon.stub().callsArgWith(1, null, @project) + @ProjectGetter = + getProject: sinon.stub().callsArgWith(1, null, @project) + @duplicator = SandboxedModule.require modulePath, requires: '../../models/Project':{Project:@Project} "../DocumentUpdater/DocumentUpdaterHandler": @DocumentUpdaterHandler @@ -83,12 +86,13 @@ describe 'ProjectDuplicator', -> './ProjectLocator': @locator './ProjectOptionsHandler': @projectOptionsHandler "../Docstore/DocstoreManager": @DocstoreManager + "./ProjectGetter":@ProjectGetter 'logger-sharelatex':{log:->} it "should look up the original project", (done) -> newProjectName = "someProj" @duplicator.duplicate @owner, @project_id, newProjectName, (err, newProject)=> - @Project.findById.calledWith(@project_id).should.equal true + @ProjectGetter.getProject.calledWith(@project_id).should.equal true done() it "should flush the original project to mongo", (done) ->