From 705fd53a666017eb147d33f5d82d9a2ea85e59b3 Mon Sep 17 00:00:00 2001 From: Stas Vilchik Date: Fri, 5 Oct 2018 14:35:06 +0200 Subject: [PATCH] SONARCLOUD-128 allow up to 300 characters for org name and key --- .../organization/OrganizationDetailsStep.tsx | 8 ++++---- .../__tests__/OrganizationDetailsStep-test.tsx | 14 ++++++++------ .../OrganizationDetailsStep-test.tsx.snap | 4 +++- .../organizations/components/OrganizationEdit.tsx | 2 +- .../__snapshots__/OrganizationEdit-test.tsx.snap | 6 +++--- .../main/resources/org/sonar/l10n/core.properties | 8 ++++---- 6 files changed, 23 insertions(+), 19 deletions(-) diff --git a/server/sonar-web/src/main/js/apps/create/organization/OrganizationDetailsStep.tsx b/server/sonar-web/src/main/js/apps/create/organization/OrganizationDetailsStep.tsx index 4c7f28a20a6..7ae7f7867bb 100644 --- a/server/sonar-web/src/main/js/apps/create/organization/OrganizationDetailsStep.tsx +++ b/server/sonar-web/src/main/js/apps/create/organization/OrganizationDetailsStep.tsx @@ -84,11 +84,11 @@ export default class OrganizationDetailsStep extends React.PureComponent 0 && (name.length < 2 || name.length > 64)) { + if (name.length > 300) { errors.name = translate('onboarding.create_organization.display_name.error'); } - if (key.length < 2 || key.length > 32 || !/^[a-z0-9][a-z0-9-]*[a-z0-9]$/.test(key)) { + if (key.length > 300 || !/^[a-z0-9][a-z0-9-]*[a-z0-9]?$/.test(key)) { errors.key = translate('onboarding.create_organization.organization_name.error'); } @@ -134,7 +134,7 @@ export default class OrganizationDetailsStep extends React.PureComponent - {props => } + {props => }
@@ -224,7 +224,7 @@ export default class OrganizationDetailsStep extends React.PureComponent - {organization.key} + {organization.key}
) : null; }; diff --git a/server/sonar-web/src/main/js/apps/create/organization/__tests__/OrganizationDetailsStep-test.tsx b/server/sonar-web/src/main/js/apps/create/organization/__tests__/OrganizationDetailsStep-test.tsx index 056856e7c6d..5eb6b9a65b4 100644 --- a/server/sonar-web/src/main/js/apps/create/organization/__tests__/OrganizationDetailsStep-test.tsx +++ b/server/sonar-web/src/main/js/apps/create/organization/__tests__/OrganizationDetailsStep-test.tsx @@ -74,22 +74,24 @@ it('should validate', () => { ).resolves.toEqual({}); expect( - instance.handleValidate({ avatar: '', description: '', name: '', key: '', url: '' }) + instance.handleValidate({ + avatar: '', + description: '', + name: '', + key: 'x'.repeat(301), + url: '' + }) ).rejects.toEqual({ key: 'onboarding.create_organization.organization_name.error' }); expect( instance.handleValidate({ avatar: 'bla', description: '', name: '', key: 'foo', url: '' }) ).rejects.toEqual({ avatar: 'onboarding.create_organization.avatar.error' }); - expect( - instance.handleValidate({ avatar: '', description: '', name: 'x', key: 'foo', url: '' }) - ).rejects.toEqual({ name: 'onboarding.create_organization.display_name.error' }); - expect( instance.handleValidate({ avatar: '', description: '', - name: 'x'.repeat(65), + name: 'x'.repeat(301), key: 'foo', url: '' }) diff --git a/server/sonar-web/src/main/js/apps/create/organization/__tests__/__snapshots__/OrganizationDetailsStep-test.tsx.snap b/server/sonar-web/src/main/js/apps/create/organization/__tests__/__snapshots__/OrganizationDetailsStep-test.tsx.snap index c792c9ff872..14f3109b7eb 100644 --- a/server/sonar-web/src/main/js/apps/create/organization/__tests__/__snapshots__/OrganizationDetailsStep-test.tsx.snap +++ b/server/sonar-web/src/main/js/apps/create/organization/__tests__/__snapshots__/OrganizationDetailsStep-test.tsx.snap @@ -177,7 +177,9 @@ exports[`should render result 1`] = ` - + org diff --git a/server/sonar-web/src/main/js/apps/organizations/components/OrganizationEdit.tsx b/server/sonar-web/src/main/js/apps/organizations/components/OrganizationEdit.tsx index fa0bb5ca7f2..28e99ee3a3e 100644 --- a/server/sonar-web/src/main/js/apps/organizations/components/OrganizationEdit.tsx +++ b/server/sonar-web/src/main/js/apps/organizations/components/OrganizationEdit.tsx @@ -119,7 +119,7 @@ export class OrganizationEdit extends React.PureComponent { this.setState({ name: e.target.value })} required={true} diff --git a/server/sonar-web/src/main/js/apps/organizations/components/__tests__/__snapshots__/OrganizationEdit-test.tsx.snap b/server/sonar-web/src/main/js/apps/organizations/components/__tests__/__snapshots__/OrganizationEdit-test.tsx.snap index 054e0314163..63cf648f317 100644 --- a/server/sonar-web/src/main/js/apps/organizations/components/__tests__/__snapshots__/OrganizationEdit-test.tsx.snap +++ b/server/sonar-web/src/main/js/apps/organizations/components/__tests__/__snapshots__/OrganizationEdit-test.tsx.snap @@ -40,7 +40,7 @@ exports[`smoke test 1`] = `