Add email-change queue

GitOrigin-RevId: a5bbb4682223ee00db0c9a4070b8178a60eef83f
This commit is contained in:
Andrew Rumble
2025-08-29 08:05:08 +00:00
committed by Copybot
parent b823c878fe
commit 10bda506c2
2 changed files with 22 additions and 12 deletions
@@ -27,6 +27,9 @@ const QUEUES_JOB_OPTIONS = {
removeOnFail: MAX_FAILED_JOBS_RETAINED,
attempts: 3,
},
'analytics-email-change': {
removeOnFail: MAX_FAILED_JOBS_RETAINED_ANALYTICS,
},
'emails-onboarding': {
removeOnFail: MAX_FAILED_JOBS_RETAINED,
},
@@ -59,6 +62,7 @@ const QUEUE_OPTIONS = {
const ANALYTICS_QUEUES = [
'analytics-account-mapping',
'analytics-email-change',
'analytics-events',
'analytics-editing-sessions',
'analytics-user-properties',
@@ -38,20 +38,25 @@ describe('AnalyticsManager', function () {
add: sinon.stub().resolves(),
process: sinon.stub().resolves(),
}
const self = this
this.analyticsEmailChangeQueue = {
add: sinon.stub().resolves(),
process: sinon.stub().resolves(),
}
this.Queues = {
getQueue: queueName => {
switch (queueName) {
case 'analytics-events':
return self.analyticsEventsQueue
return this.analyticsEventsQueue
case 'analytics-editing-sessions':
return self.analyticsEditingSessionQueue
return this.analyticsEditingSessionQueue
case 'emails-onboarding':
return self.onboardingEmailsQueue
return this.onboardingEmailsQueue
case 'analytics-user-properties':
return self.analyticsUserPropertiesQueue
return this.analyticsUserPropertiesQueue
case 'analytics-account-mapping':
return self.analyticsAccountMappingQueue
return this.analyticsAccountMappingQueue
case 'analytics-email-change':
return this.analyticsEmailChangeQueue
default:
throw new Error('Unexpected queue name')
}
@@ -308,7 +313,6 @@ describe('AnalyticsManager', function () {
beforeEach(function () {
this.userId = '123abc'
this.analyticsId = 'bccd308c-5d72-426e-a106-662e88557795'
const self = this
this.AnalyticsManager = SandboxedModule.require(MODULE_PATH, {
requires: {
'@overleaf/settings': {},
@@ -316,15 +320,17 @@ describe('AnalyticsManager', function () {
getQueue: queueName => {
switch (queueName) {
case 'analytics-events':
return self.analyticsEventsQueue
return this.analyticsEventsQueue
case 'analytics-editing-sessions':
return self.analyticsEditingSessionQueue
return this.analyticsEditingSessionQueue
case 'emails-onboarding':
return self.onboardingEmailsQueue
return this.onboardingEmailsQueue
case 'analytics-user-properties':
return self.analyticsUserPropertiesQueue
return this.analyticsUserPropertiesQueue
case 'analytics-account-mapping':
return self.analyticsAccountMappingQueue
return this.analyticsAccountMappingQueue
case 'analytics-email-change':
return this.analyticsEmailChangeQueue
default:
throw new Error('Unexpected queue name')
}