diff --git a/plugins/permission-node/src/integration/createPermissionIntegrationRouter.test.ts b/plugins/permission-node/src/integration/createPermissionIntegrationRouter.test.ts index 79bfcb3b0b..be422c87d2 100644 --- a/plugins/permission-node/src/integration/createPermissionIntegrationRouter.test.ts +++ b/plugins/permission-node/src/integration/createPermissionIntegrationRouter.test.ts @@ -244,8 +244,24 @@ describe('createPermissionIntegrationRouter', () => { items: [ { id: '123', - resourceRef: 'default:test/resource', - resourceType: 'test-incorrect-resource', + resourceRef: 'default:test/resource-1', + resourceType: 'test-incorrect-resource-1', + conditions: { + anyOf: [], + }, + }, + { + id: '234', + resourceRef: 'default:test/resource-2', + resourceType: 'test-resource', + conditions: { + anyOf: [], + }, + }, + { + id: '345', + resourceRef: 'default:test/resource-3', + resourceType: 'test-incorrect-resource-2', conditions: { anyOf: [], }, @@ -255,7 +271,7 @@ describe('createPermissionIntegrationRouter', () => { expect(response.status).toEqual(400); expect(response.error && response.error.text).toMatch( - /unexpected resource type: test-incorrect-resource/i, + /unexpected resource types: test-incorrect-resource-1, test-incorrect-resource-2/i, ); }); diff --git a/plugins/permission-node/src/integration/createPermissionIntegrationRouter.ts b/plugins/permission-node/src/integration/createPermissionIntegrationRouter.ts index 4968db6100..1b01660fb0 100644 --- a/plugins/permission-node/src/integration/createPermissionIntegrationRouter.ts +++ b/plugins/permission-node/src/integration/createPermissionIntegrationRouter.ts @@ -174,12 +174,14 @@ export const createPermissionIntegrationRouter = (options: { const assertValidResourceTypes = ( requests: ApplyConditionsRequestEntry[], ) => { - const invalidResourceType = requests.find( - request => request.resourceType !== resourceType, - )?.resourceType; + const invalidResourceTypes = requests + .filter(request => request.resourceType !== resourceType) + .map(request => request.resourceType); - if (invalidResourceType) { - throw new InputError(`Unexpected resource type: ${invalidResourceType}.`); + if (invalidResourceTypes.length) { + throw new InputError( + `Unexpected resource types: ${invalidResourceTypes.join(', ')}.`, + ); } };