Convert 'anonymous-user' from real-time api in 'null' internally

This commit is contained in:
James Allen
2016-03-22 09:53:47 +00:00
parent 2af2dd694e
commit f182fbf396
3 changed files with 18 additions and 1 deletions

View File

@@ -15,6 +15,8 @@ module.exports = EditorHttpController =
joinProject: (req, res, next) ->
project_id = req.params.Project_id
user_id = req.query.user_id
if user_id == "anonymous-user"
user_id = null
logger.log {user_id, project_id}, "join project request"
Metrics.inc "editor.join-project"
EditorHttpController._buildJoinProjectView project_id, user_id, (error, project, privilegeLevel) ->

View File

@@ -77,6 +77,17 @@ describe "EditorHttpController", ->
@ProjectDeleter.unmarkAsDeletedByExternalSource
.calledWith(@project_id)
.should.equal true
describe "with an anonymous user", ->
beforeEach ->
@req.query =
user_id: "anonymous-user"
@EditorHttpController.joinProject @req, @res
it "should pass the user id as null", ->
@EditorHttpController._buildJoinProjectView
.calledWith(@project_id, null)
.should.equal true
describe "_buildJoinProjectView", ->
beforeEach ->

View File

@@ -56,9 +56,13 @@ try_admin_access = (user, project_id, test, callback) ->
try_content_access = (user, project_id, test, callback) ->
# The real-time service calls this end point to determine the user's
# permissions.
if user.id?
user_id = user.id
else
user_id = "anonymous-user"
request.post {
url: "/project/#{project_id}/join"
qs: {user_id: user.id}
qs: {user_id}
auth:
user: settings.apis.web.user
pass: settings.apis.web.pass