Merge pull request #1364 from sharelatex/ja-fix-user-stub-owner-imports

Handle UserStubs for project owner

GitOrigin-RevId: ab3d9edf6e44a7867285430c14c73b3e64fd4c04
This commit is contained in:
James Allen
2019-01-08 13:02:14 +00:00
committed by sharelatex
parent 42cf6a1216
commit 8653a3d9cd
3 changed files with 12 additions and 3 deletions
@@ -63,8 +63,8 @@ module.exports = CompileManager =
UserGetter.getUser project.owner_ref, {"features":1}, (err, owner)->
return callback(error) if error?
callback null, {
timeout: owner.features?.compileTimeout || Settings.defaultFeatures.compileTimeout
compileGroup: owner.features?.compileGroup || Settings.defaultFeatures.compileGroup
timeout: owner?.features?.compileTimeout || Settings.defaultFeatures.compileTimeout
compileGroup: owner?.features?.compileGroup || Settings.defaultFeatures.compileGroup
}
COMPILE_DELAY: 1 # seconds
@@ -9,6 +9,7 @@ PublicAccessLevels = require("../Authorization/PublicAccessLevels")
Errors = require("../Errors/Errors")
ProjectTokenGenerator = require('./ProjectTokenGenerator')
ProjectHelper = require('./ProjectHelper')
settings = require('settings-sharelatex')
module.exports = ProjectDetailsHandler =
getDetails: (project_id, callback)->
@@ -23,7 +24,7 @@ module.exports = ProjectDetailsHandler =
name : project.name
description: project.description
compiler: project.compiler
features: user.features
features: user?.features or settings.defaultFeatures
if project.overleaf?
details.overleaf = project.overleaf
@@ -39,6 +39,8 @@ describe 'ProjectDetailsHandler', ->
log:->
err:->
'./ProjectTokenGenerator': @ProjectTokenGenerator = {}
'settings-sharelatex': @settings =
defaultFeatures: 'default-features'
describe "getDetails", ->
@@ -65,6 +67,12 @@ describe 'ProjectDetailsHandler', ->
err.should.eql error
done()
it 'should return the default features if no owner found', (done) ->
@UserGetter.getUser.callsArgWith(1, null, null)
@handler.getDetails @project_id, (err, details)=>
details.features.should.equal @settings.defaultFeatures
done()
it "should return the error", (done)->
error = "some error"
@ProjectGetter.getProject.callsArgWith(2, error)