Просмотр исходного кода

Make test admin users engineers

GitOrigin-RevId: 627b5b05eefdfa675937764b7c798e99ab6ef37e
Andrew Rumble 10 месяцев назад
Родитель
Сommit
3211c7c37a

+ 1 - 0
services/web/scripts/e2e_test_setup.mjs

@@ -32,6 +32,7 @@ async function createUser(email) {
       $set: {
       $set: {
         // Set admin flag.
         // Set admin flag.
         isAdmin: email.startsWith('admin+'),
         isAdmin: email.startsWith('admin+'),
+        adminRoles: email.startsWith('admin+') ? ['engineering'] : [],
         // Disable spell-checking for performance and flakiness reasons.
         // Disable spell-checking for performance and flakiness reasons.
         'ace.spellCheckLanguage': '',
         'ace.spellCheckLanguage': '',
         // Override features.
         // Override features.

+ 1 - 0
services/web/test/acceptance/src/AdminPrivilegeAvailableTests.mjs

@@ -16,6 +16,7 @@ describe('AdminPrivilegeAvailable', function () {
     adminUser = new User()
     adminUser = new User()
     await adminUser.ensureUserExists()
     await adminUser.ensureUserExists()
     await adminUser.ensureAdmin()
     await adminUser.ensureAdmin()
+    await adminUser.ensureAdminRole('engineering')
     await adminUser.login()
     await adminUser.login()
   })
   })
 
 

+ 1 - 0
services/web/test/acceptance/src/AuthorizationTests.mjs

@@ -212,6 +212,7 @@ describe('Authorization', function () {
     this.other2 = new User()
     this.other2 = new User()
     this.anon = new User()
     this.anon = new User()
     this.site_admin = new User({ email: 'admin@example.com' })
     this.site_admin = new User({ email: 'admin@example.com' })
+    settings.adminRolesEnabled = false
     await Promise.all([
     await Promise.all([
       this.owner.login(),
       this.owner.login(),
       this.other1.login(),
       this.other1.login(),

+ 4 - 0
services/web/test/acceptance/src/helpers/User.mjs

@@ -579,6 +579,10 @@ class User {
     this.mongoUpdate({ $set: { isAdmin: true } }, callback)
     this.mongoUpdate({ $set: { isAdmin: true } }, callback)
   }
   }
 
 
+  ensureAdminRole(role, callback) {
+    this.mongoUpdate({ $addToSet: { adminRoles: 'engineering' } }, callback)
+  }
+
   ensureStaffAccess(flag, callback) {
   ensureStaffAccess(flag, callback) {
     const update = { $set: {} }
     const update = { $set: {} }
     update.$set[`staffAccess.${flag}`] = true
     update.$set[`staffAccess.${flag}`] = true