Merge pull request #34976 from overleaf/rh-cio-beta-program

Expose beta program participation to Customer.io

GitOrigin-RevId: e28d9b41afb2e50e62b7e06c94482f4240c6becc
This commit is contained in:
roo hutton
2026-09-17 11:14:06 +00:00
committed by Copybot
parent d74ecc0f2c
commit e5c815129b
2 changed files with 55 additions and 0 deletions
@@ -39,6 +39,16 @@ describe('BetaProgramHandler', function () {
})
)
vi.doMock('../../../../app/src/infrastructure/Modules', () => ({
default: (ctx.Modules = {
promises: {
hooks: {
fire: sinon.stub().resolves(),
},
},
}),
}))
ctx.session = {}
ctx.handler = (await import(modulePath)).default
})
@@ -76,6 +86,21 @@ describe('BetaProgramHandler', function () {
})
})
it('should set beta_program=true user property in customer.io', async function (ctx) {
await new Promise(resolve => {
ctx.call(err => {
expect(err).to.not.exist
sinon.assert.calledWith(
ctx.Modules.promises.hooks.fire,
'setUserProperties',
ctx.user_id,
{ beta_program: true }
)
resolve()
})
})
})
it('should not produce an error', async function (ctx) {
await new Promise(resolve => {
ctx.call(err => {
@@ -135,6 +160,21 @@ describe('BetaProgramHandler', function () {
})
})
it('should set beta_program=false user property in customer.io', async function (ctx) {
await new Promise(resolve => {
ctx.call(err => {
expect(err).to.not.exist
sinon.assert.calledWith(
ctx.Modules.promises.hooks.fire,
'setUserProperties',
ctx.user_id,
{ beta_program: false }
)
resolve()
})
})
})
it('should not produce an error', async function (ctx) {
await new Promise(resolve => {
ctx.call(err => {