overleaf/services/web/test/acceptance/src/BetaProgramTests.mjs
Andrew Rumble e0dba75b81 Convert top level acceptance tests to ES module
GitOrigin-RevId: ab45010ec557d62576c470d2e024549e67261c66
2024-10-16 09:35:34 +00:00

33 lines
1.2 KiB
JavaScript

import { expect } from 'chai'
import UserHelper from '../src/helpers/UserHelper.js'
describe('BetaProgram', function () {
let email, userHelper
beforeEach(async function () {
userHelper = new UserHelper()
email = userHelper.getDefaultEmail()
userHelper = await UserHelper.createUser({ email })
userHelper = await UserHelper.loginUser({
email,
password: userHelper.getDefaultPassword(),
})
})
it('should opt in', async function () {
const response = await userHelper.fetch('/beta/opt-in', { method: 'POST' })
expect(response.status).to.equal(302)
expect(response.headers.get('location')).to.equal(
UserHelper.url('/beta/participate').toString()
)
const user = (await UserHelper.getUser({ email })).user
expect(user.betaProgram).to.equal(true)
})
it('should opt out', async function () {
const response = await userHelper.fetch('/beta/opt-out', { method: 'POST' })
expect(response.status).to.equal(302)
expect(response.headers.get('location')).to.equal(
UserHelper.url('/beta/participate').toString()
)
const user = (await UserHelper.getUser({ email })).user
expect(user.betaProgram).to.equal(false)
})
})