diff --git a/packages/component-invite/src/routes/deleteInvitation.js b/packages/component-invite/src/routes/deleteInvitation.js index f4346a3f417290cff63a989231eaf40145067104..b1f753296200196abf069ce14b9744d8a8adaac6 100644 --- a/packages/component-invite/src/routes/deleteInvitation.js +++ b/packages/component-invite/src/routes/deleteInvitation.js @@ -20,7 +20,7 @@ module.exports = models => async (req, res) => { } const reqUser = await models.User.find(req.user) - if (!reqUser.editorInChief || !reqUser.admin) { + if (!reqUser.editorInChief && !reqUser.admin) { res .status(400) .json({ error: 'The request user must be Editor in Chief or Admin' }) diff --git a/packages/component-invite/src/tests/deleteInvitation.test.js b/packages/component-invite/src/tests/deleteInvitation.test.js index e20a0773af872f4105b4aa171588124a2415ca1a..79de2f88398611efe0045bf2e6c484f0dc8b1759 100644 --- a/packages/component-invite/src/tests/deleteInvitation.test.js +++ b/packages/component-invite/src/tests/deleteInvitation.test.js @@ -9,7 +9,7 @@ jest.mock('pubsweet-component-mail-service', () => ({ setupRevokeInvitationEmail: jest.fn(), })) const { standardCollection, noTeamCollection } = fixtures.collections -const { editorInChief, admin, handlingEditor } = fixtures.users +const { editorInChief, admin, handlingEditor, author } = fixtures.users const { heTeam } = fixtures.teams const query = { role: 'handlingEditor', @@ -83,12 +83,14 @@ describe('Delete Invitation route handler', () => { const req = httpMocks.createRequest() req.query = query req.params.collectionId = standardCollection.id - req.user = admin.id + req.user = author.id const res = httpMocks.createResponse() await require(deleteInvitationPath)(models)(req, res) expect(res.statusCode).toBe(400) const data = JSON.parse(res._getData()) - expect(data.error).toEqual('The request user must be Editor in Chief') + expect(data.error).toEqual( + 'The request user must be Editor in Chief or Admin', + ) }) it('should return an error when the collection does not have a the requested role team', async () => { const req = httpMocks.createRequest() diff --git a/packages/component-invite/src/tests/getCollectionUsers.test.js b/packages/component-invite/src/tests/getCollectionUsers.test.js index af4c1ce303148364a3ac8e196e8a36e32de847ec..971088d4bb97df40b6ed657884466781d369c0d5 100644 --- a/packages/component-invite/src/tests/getCollectionUsers.test.js +++ b/packages/component-invite/src/tests/getCollectionUsers.test.js @@ -6,7 +6,7 @@ const fixtures = require('./fixtures/fixtures') const Model = require('./helpers/Model') const { standardCollection, noTeamCollection } = fixtures.collections -const { editorInChief, admin } = fixtures.users +const { editorInChief } = fixtures.users const query = { role: 'handlingEditor', } @@ -64,18 +64,6 @@ describe('Get collection users route handler', () => { expect(data.error).toEqual(`Role ${query.role} is invalid`) query.role = 'handlingEditor' }) - it('should return an error when the request user is not editorInChief', async () => { - const req = httpMocks.createRequest() - req.query = query - req.params.collectionId = standardCollection.id - req.user = admin.id - const res = httpMocks.createResponse() - const models = Model.build() - await require(getCollectionUsersPath)(models)(req, res) - expect(res.statusCode).toBe(400) - const data = JSON.parse(res._getData()) - expect(data.error).toEqual('The request user must be Editor in Chief') - }) it('should return an error when the collection does not have a the requested role team', async () => { const req = httpMocks.createRequest() req.query = query