UserPagesControllerTests.coffee 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. should = require('chai').should()
  2. SandboxedModule = require('sandboxed-module')
  3. assert = require('assert')
  4. path = require('path')
  5. sinon = require('sinon')
  6. modulePath = path.join __dirname, "../../../../app/js/Features/User/UserPagesController"
  7. expect = require("chai").expect
  8. describe "UserPagesController", ->
  9. beforeEach ->
  10. @settings = {}
  11. @UserPagesController = SandboxedModule.require modulePath, requires:
  12. "settings-sharelatex":@settings
  13. "logger-sharelatex": log:->
  14. @req =
  15. query:{}
  16. session:{}
  17. @res = {}
  18. describe "registerPage", ->
  19. it "should render the register page", (done)->
  20. @res.render = (page)=>
  21. page.should.equal "user/register"
  22. done()
  23. @UserPagesController.registerPage @req, @res
  24. it "should set the redirect", (done)->
  25. redirect = "/go/here/please"
  26. @req.query.redir = redirect
  27. @res.render = (page, opts)=>
  28. opts.redir.should.equal redirect
  29. done()
  30. @UserPagesController.registerPage @req, @res
  31. it "should set sharedProjectData", (done)->
  32. @req.query.project_name = "myProject"
  33. @req.query.user_first_name = "user_first_name_here"
  34. @res.render = (page, opts)=>
  35. opts.sharedProjectData.project_name.should.equal "myProject"
  36. opts.sharedProjectData.user_first_name.should.equal "user_first_name_here"
  37. done()
  38. @UserPagesController.registerPage @req, @res
  39. it "should set newTemplateData", (done)->
  40. @req.session.templateData =
  41. templateName : "templateName"
  42. @res.render = (page, opts)=>
  43. opts.newTemplateData.templateName.should.equal "templateName"
  44. done()
  45. @UserPagesController.registerPage @req, @res
  46. it "should not set the newTemplateData if there is nothing in the session", (done)->
  47. @res.render = (page, opts)=>
  48. assert.equal opts.newTemplateData.templateName, undefined
  49. done()
  50. @UserPagesController.registerPage @req, @res