mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2026-05-25 02:00:10 +02:00
Merge pull request #29036 from overleaf/ls-enable-individual-to-group-upgrade-in-production
Enable individual to group plan upgrade GitOrigin-RevId: 3413c012bee320e4a4a61f829aaeff55e6116702
This commit is contained in:
@@ -36,20 +36,6 @@ function serializeMongooseObject(object) {
|
||||
: object
|
||||
}
|
||||
|
||||
async function isEligibleForGroupPlan(service, isInTrial) {
|
||||
if (isInTrial) {
|
||||
return false
|
||||
}
|
||||
|
||||
if (service === 'recurly') {
|
||||
return true
|
||||
}
|
||||
const [result] = await Modules.promises.hooks.fire(
|
||||
'canUpgradeFromIndividualToGroup'
|
||||
)
|
||||
return result
|
||||
}
|
||||
|
||||
async function buildUsersSubscriptionViewModel(user, locale = 'en') {
|
||||
let {
|
||||
personalSubscription,
|
||||
@@ -310,10 +296,7 @@ async function buildUsersSubscriptionViewModel(user, locale = 'en') {
|
||||
pausedAt: paymentRecord.subscription.pausePeriodStart,
|
||||
remainingPauseCycles: paymentRecord.subscription.remainingPauseCycles,
|
||||
isEligibleForPause,
|
||||
isEligibleForGroupPlan: await isEligibleForGroupPlan(
|
||||
paymentRecord.subscription.service,
|
||||
isInTrial
|
||||
),
|
||||
isEligibleForGroupPlan: !isInTrial,
|
||||
}
|
||||
|
||||
const isMonthlyCollaboratorPlan =
|
||||
|
||||
@@ -723,20 +723,6 @@ describe('SubscriptionViewModelBuilder', function () {
|
||||
})
|
||||
|
||||
describe('isEligibleForGroupPlan', function () {
|
||||
it('is false for Stripe subscriptions', async function (ctx) {
|
||||
ctx.paymentRecord.service = 'stripe-us'
|
||||
ctx.Modules.promises.hooks.fire
|
||||
.withArgs('canUpgradeFromIndividualToGroup')
|
||||
.resolves([false])
|
||||
const result =
|
||||
await ctx.SubscriptionViewModelBuilder.promises.buildUsersSubscriptionViewModel(
|
||||
ctx.user
|
||||
)
|
||||
assert.isFalse(
|
||||
result.personalSubscription.payment.isEligibleForGroupPlan
|
||||
)
|
||||
})
|
||||
|
||||
it('is false when in trial', async function (ctx) {
|
||||
const msIn24Hours = 24 * 60 * 60 * 1000
|
||||
const tomorrow = new Date(Date.now() + msIn24Hours)
|
||||
@@ -751,8 +737,7 @@ describe('SubscriptionViewModelBuilder', function () {
|
||||
)
|
||||
})
|
||||
|
||||
it('is true when not in trial and for a Recurly subscription', async function (ctx) {
|
||||
ctx.paymentRecord.service = 'recurly'
|
||||
it('is true when not in trial', async function (ctx) {
|
||||
const result =
|
||||
await ctx.SubscriptionViewModelBuilder.promises.buildUsersSubscriptionViewModel(
|
||||
ctx.user
|
||||
|
||||
Reference in New Issue
Block a user