Procházet zdrojové kódy

Merge pull request #15658 from overleaf/msm-team-invite-acceptance

[web] Team invite acceptance tests

GitOrigin-RevId: 755a4c483c93cee1ce4403c04db85fcbf4da06c3
Miguel Serrano před 2 roky
rodič
revize
7f347be7f3

+ 1 - 1
services/web/app/src/Features/Subscription/SubscriptionLocator.js

@@ -127,7 +127,7 @@ const SubscriptionLocator = {
 
 async function hasSSOEnabled(subscription) {
   const ssoConfig = await SSOConfig.findById(subscription.ssoConfig).exec()
-  return ssoConfig?.enabled
+  return !!ssoConfig?.enabled
 }
 
 SubscriptionLocator.promises = {

+ 1 - 1
services/web/app/src/Features/Subscription/TeamInvitesController.js

@@ -183,7 +183,7 @@ async function acceptInvite(req, res, next) {
     subscription
   )
 
-  res.status(204).json({ groupSSOActive })
+  res.json({ groupSSOActive })
 }
 
 function revokeInvite(req, res, next) {

+ 14 - 0
services/web/test/acceptance/src/helpers/Subscription.js

@@ -4,6 +4,7 @@ const { promisify } = require('util')
 const SubscriptionUpdater = require('../../../../app/src/Features/Subscription/SubscriptionUpdater')
 const ManagedUsersHandler = require('../../../../app/src/Features/Subscription/ManagedUsersHandler')
 const PermissionsManager = require('../../../../app/src/Features/Authorization/PermissionsManager')
+const SSOConfigManager = require('../../../../modules/managed-users/app/src/SSOConfigManager')
 const SubscriptionModel =
   require('../../../../app/src/models/Subscription').Subscription
 const DeletedSubscriptionModel =
@@ -16,6 +17,7 @@ class Subscription {
     this.groupPlan = options.groupPlan
     this.manager_ids = options.managerIds || [this.admin_id]
     this.member_ids = options.memberIds || []
+    this.membersLimit = options.membersLimit || 0
     this.invited_emails = options.invitedEmails || []
     this.teamName = options.teamName
     this.teamInvites = options.teamInvites || []
@@ -59,6 +61,18 @@ class Subscription {
     )
   }
 
+  setSSOConfig(ssoConfig, callback) {
+    this.get((err, subscription) => {
+      if (err) {
+        return callback(err)
+      }
+      SSOConfigManager.promises
+        .updateSubscriptionSSOConfig(subscription, ssoConfig)
+        .then(result => callback(null, result))
+        .catch(error => callback(error))
+    })
+  }
+
   refreshUsersFeatures(callback) {
     SubscriptionUpdater.refreshUsersFeatures(this, callback)
   }