From 61b9a683aa1a0ad0bd0cc3411519ea1ff169b32f Mon Sep 17 00:00:00 2001 From: Henry Oswald Date: Thu, 19 May 2016 16:55:58 +0100 Subject: [PATCH] put clsiCookie vals into subobject in settings --- .../Features/Compile/ClsiCookieManager.coffee | 8 ++++---- .../coffee/Compile/ClsiCookieManagerTests.coffee | 15 ++++++++------- 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/services/web/app/coffee/Features/Compile/ClsiCookieManager.coffee b/services/web/app/coffee/Features/Compile/ClsiCookieManager.coffee index 3372f9c871..b6270cfce9 100644 --- a/services/web/app/coffee/Features/Compile/ClsiCookieManager.coffee +++ b/services/web/app/coffee/Features/Compile/ClsiCookieManager.coffee @@ -8,7 +8,7 @@ logger = require "logger-sharelatex" buildKey = (project_id)-> return "clsiserver:#{project_id}" -clsiCookiesEnabled = Settings.clsiCookieKey? and Settings.clsiCookieKey.length != 0 +clsiCookiesEnabled = Settings.clsiCookie?.key? and Settings.clsiCookie.key.length != 0 module.exports = ClsiCookieManager = @@ -36,7 +36,7 @@ module.exports = ClsiCookieManager = _parseServerIdFromResponse : (response)-> cookies = Cookie.parse(response.headers["set-cookie"]?[0] or "") - return cookies?[Settings.clsiCookieKey] + return cookies?[Settings.clsiCookie.key] setServerId: (project_id, response, callback = (err, serverId)->)-> if !clsiCookiesEnabled @@ -44,7 +44,7 @@ module.exports = ClsiCookieManager = serverId = ClsiCookieManager._parseServerIdFromResponse(response) multi = rclient.multi() multi.set buildKey(project_id), serverId - multi.expire buildKey(project_id), Settings.clsi_cookie_expire_length_seconds + multi.expire buildKey(project_id), Settings.clsiCookie.ttl multi.exec (err)-> callback(err, serverId) @@ -56,7 +56,7 @@ module.exports = ClsiCookieManager = if err? logger.err err:err, project_id:project_id, "error getting server id" return callback(err) - serverCookie = request.cookie("#{Settings.clsiCookieKey}=#{serverId}") + serverCookie = request.cookie("#{Settings.clsiCookie.key}=#{serverId}") jar = request.jar() jar.setCookie serverCookie, Settings.apis.clsi.url callback(null, jar) diff --git a/services/web/test/UnitTests/coffee/Compile/ClsiCookieManagerTests.coffee b/services/web/test/UnitTests/coffee/Compile/ClsiCookieManagerTests.coffee index c2feb2a2c2..01d4ad0002 100644 --- a/services/web/test/UnitTests/coffee/Compile/ClsiCookieManagerTests.coffee +++ b/services/web/test/UnitTests/coffee/Compile/ClsiCookieManagerTests.coffee @@ -30,8 +30,9 @@ describe "ClsiCookieManager", -> apis: clsi: url: "http://clsi.example.com" - clsi_cookie_expire_length_seconds: Math.random() - clsiCookieKey: "coooookie" + clsiCookie: + ttl:Math.random() + key: "coooookie" @requires = "redis-sharelatex" : createClient: => @@ -90,7 +91,7 @@ describe "ClsiCookieManager", -> it "should set the server id with a ttl", (done)-> @ClsiCookieManager.setServerId @project_id, @response, (err)=> @redisMulti.set.calledWith("clsiserver:#{@project_id}", "clsi-8").should.equal true - @redisMulti.expire.calledWith("clsiserver:#{@project_id}", @settings.clsi_cookie_expire_length_seconds).should.equal true + @redisMulti.expire.calledWith("clsiserver:#{@project_id}", @settings.clsiCookie.ttl).should.equal true done() it "should return the server id", (done)-> @@ -100,7 +101,7 @@ describe "ClsiCookieManager", -> it "should not set the server id if clsiCookies are not enabled", (done)-> - delete @settings.clsiCookieKey + delete @settings.clsiCookie.key @ClsiCookieManager = SandboxedModule.require modulePath, requires:@requires @ClsiCookieManager.setServerId @project_id, @response, (err, serverId)=> @redisMulti.exec.called.should.equal false @@ -113,13 +114,13 @@ describe "ClsiCookieManager", -> it "should return a jar with the cookie set populated from redis", (done)-> @ClsiCookieManager.getCookieJar @project_id, (err, jar)=> - jar._jar.store.idx["clsi.example.com"]["/"][@settings.clsiCookieKey].key.should.equal - jar._jar.store.idx["clsi.example.com"]["/"][@settings.clsiCookieKey].value.should.equal "clsi-11" + jar._jar.store.idx["clsi.example.com"]["/"][@settings.clsiCookie.key].key.should.equal + jar._jar.store.idx["clsi.example.com"]["/"][@settings.clsiCookie.key].value.should.equal "clsi-11" done() it "should return empty cookie jar if clsiCookies are not enabled", (done)-> - delete @settings.clsiCookieKey + delete @settings.clsiCookie.key @ClsiCookieManager = SandboxedModule.require modulePath, requires:@requires @ClsiCookieManager.getCookieJar @project_id, (err, jar)-> assert.deepEqual jar, realRequst.jar()