| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- should = require('chai').should()
- SandboxedModule = require('sandboxed-module')
- assert = require('assert')
- path = require('path')
- sinon = require('sinon')
- modulePath = path.join __dirname, "../../../../app/js/Features/User/UserPagesController"
- expect = require("chai").expect
- describe "UserPagesController", ->
- beforeEach ->
- @settings = {}
- @user =
- _id:"kwjewkl"
- features:{}
- @UserLocator =
- findById: sinon.stub().callsArgWith(1, null, @user)
- @dropboxStatus = {}
- @DropboxHandler =
- getUserRegistrationStatus : sinon.stub().callsArgWith(1, null, @dropboxStatus)
- @UserPagesController = SandboxedModule.require modulePath, requires:
- "settings-sharelatex":@settings
- "logger-sharelatex": log:->
- "./UserLocator": @UserLocator
- '../Dropbox/DropboxHandler': @DropboxHandler
- @req =
- query:{}
- session:
- user:@user
- @res = {}
- describe "registerPage", ->
- it "should render the register page", (done)->
- @res.render = (page)=>
- page.should.equal "user/register"
- done()
- @UserPagesController.registerPage @req, @res
- it "should set the redirect", (done)->
- redirect = "/go/here/please"
- @req.query.redir = redirect
- @res.render = (page, opts)=>
- opts.redir.should.equal redirect
- done()
- @UserPagesController.registerPage @req, @res
- it "should set sharedProjectData", (done)->
- @req.query.project_name = "myProject"
- @req.query.user_first_name = "user_first_name_here"
- @res.render = (page, opts)=>
- opts.sharedProjectData.project_name.should.equal "myProject"
- opts.sharedProjectData.user_first_name.should.equal "user_first_name_here"
- done()
- @UserPagesController.registerPage @req, @res
- it "should set newTemplateData", (done)->
- @req.session.templateData =
- templateName : "templateName"
- @res.render = (page, opts)=>
- opts.newTemplateData.templateName.should.equal "templateName"
- done()
- @UserPagesController.registerPage @req, @res
- it "should not set the newTemplateData if there is nothing in the session", (done)->
- @res.render = (page, opts)=>
- assert.equal opts.newTemplateData.templateName, undefined
- done()
- @UserPagesController.registerPage @req, @res
- describe "loginForm", ->
- it "should render the login page", (done)->
- @res.render = (page)=>
- page.should.equal "user/login"
- done()
- @UserPagesController.loginPage @req, @res
- it "should set the redirect", (done)->
- redirect = "/go/here/please"
- @req.query.redir = redirect
- @res.render = (page, opts)=>
- opts.redir.should.equal redirect
- done()
- @UserPagesController.loginPage @req, @res
- describe "settingsPage", ->
- it "should render user/settings", (done)->
- @res.render = (page)->
- page.should.equal "user/settings"
- done()
- @UserPagesController.settingsPage @req, @res
- it "should send user", (done)->
- @res.render = (page, opts)=>
- opts.user.should.equal @user
- done()
- @UserPagesController.settingsPage @req, @res
|