all repos — caroster @ 0193e48a670b09ce5d60ac51a21aa0a6a8348cf3

[Octree] Group carpool to your event https://caroster.io

e2e/test/specs/01-session.js (view raw)

 1'use strict'
 2
 3/* global browser, describe, it, expect */
 4/* eslint-disable new-cap */
 5
 6const config = require('../')
 7const Login = require('../pages/login')
 8const Mail = require('../pages/mail')
 9
10describe('Session', () => {
11  it('requires login', () => {
12    expect(() => Mail.open(500)).toThrow()
13    expect(browser).toHaveTitle('Login')
14  })
15
16  it('requires email', () => {
17    Login.open()
18    expect(() => Login.authenticate('', config.user.password, 500)).toThrow()
19    expect(browser).toHaveTitle('Login')
20  })
21
22  it('requires password', () => {
23    Login.open()
24    expect(() => Login.authenticate(config.user.email, '', 500)).toThrow()
25    expect(browser).toHaveTitle('Login')
26  })
27
28  it('logs in', () => {
29    Login.open()
30    expect(browser).toHaveTitle('Login')
31    browser.saveAndDiffScreenshot('Login')
32    Login.authenticate(config.user.email, config.user.password)
33    expect(browser).toHaveTitle('Send mail')
34  })
35
36  it('logs out', () => {
37    Mail.open().logout()
38    expect(() => Mail.open(500)).toThrow()
39    expect(browser).toHaveTitle('Login')
40  })
41})