2018-03-01 07:45:42 +01:00
|
|
|
import { Role } from 'testcafe'
|
2018-04-21 22:06:46 +02:00
|
|
|
import {
|
|
|
|
addInstanceButton,
|
|
|
|
authorizeInput, emailInput, getUrl, instanceInput, mastodonLogInButton,
|
|
|
|
passwordInput
|
|
|
|
} from './utils'
|
2018-04-28 23:19:39 +02:00
|
|
|
import { users } from './users'
|
2018-02-20 02:18:40 +01:00
|
|
|
|
2018-02-20 03:25:59 +01:00
|
|
|
function login (t, username, password) {
|
2018-03-01 07:45:42 +01:00
|
|
|
return t.typeText(instanceInput, 'localhost:3000', {paste: true})
|
2018-04-21 22:06:46 +02:00
|
|
|
.click(addInstanceButton)
|
2018-04-21 23:57:02 +02:00
|
|
|
.expect(getUrl()).eql('http://localhost:3000/auth/sign_in', {timeout: 30000})
|
2018-03-01 07:45:42 +01:00
|
|
|
.typeText(emailInput, username, {paste: true})
|
|
|
|
.typeText(passwordInput, password, {paste: true})
|
2018-04-21 22:06:46 +02:00
|
|
|
.click(mastodonLogInButton)
|
2018-02-20 02:18:40 +01:00
|
|
|
.expect(getUrl()).contains('/oauth/authorize')
|
2018-03-01 07:45:42 +01:00
|
|
|
.click(authorizeInput)
|
2018-04-21 23:57:02 +02:00
|
|
|
.expect(getUrl()).eql('http://localhost:4002/', {timeout: 30000})
|
2018-02-20 02:18:40 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
export const foobarRole = Role('http://localhost:4002/settings/instances/add', async t => {
|
2018-04-28 23:19:39 +02:00
|
|
|
await login(t, users.foobar.email, users.foobar.password)
|
|
|
|
})
|
|
|
|
|
|
|
|
export const lockedAccountRole = Role('http://localhost:4002/settings/instances/add', async t => {
|
|
|
|
await login(t, users.LockedAccount.email, users.LockedAccount.password)
|
2018-02-20 03:25:59 +01:00
|
|
|
})
|