Skip to content

Commit

Permalink
feat: display untenanted urls in error message
Browse files Browse the repository at this point in the history
Invert what we're looking for (invalid, rather than valid), so the error
message is more helpful by displaying naughty urls.
  • Loading branch information
DarrellMozingo committed Jan 31, 2022
1 parent 5e050c2 commit b14108b
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 14 deletions.
11 changes: 5 additions & 6 deletions src/rulesets/specification.ts
Original file line number Diff line number Diff line change
Expand Up @@ -53,16 +53,15 @@ export const rules = {
(spec, context, docs) => {
docs.includeDocsLink(links.standards.orgAndGroupTenantResources);
docs.becomesEffectiveOn(new Date("2021-07-01"));
const paths = Object.keys(spec.paths);
const tenantUrls = paths.filter(
const untenantedUrls = Object.keys(spec.paths).filter(
(url) =>
url.startsWith("/orgs/{org_id}") ||
url.startsWith("/groups/{group_id}"),
!url.startsWith("/orgs/{org_id}") &&
!url.startsWith("/groups/{group_id}"),
);
expect(
tenantUrls,
untenantedUrls,
`expected support for org or group tenant`,
).to.have.lengthOf(paths.length);
).to.have.lengthOf(0);
},
);
},
Expand Down
16 changes: 8 additions & 8 deletions src/rulesets/tests/__snapshots__/specification.test.ts.snap
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ Object {
"condition": "have an org or group tenant",
"docsLink": "https://github.com/snyk/sweater-comb/blob/main/docs/standards.md#organization-and-group-tenants-for-resources",
"effectiveOnDate": 2021-07-01T00:00:00.000Z,
"error": "expected support for org or group tenant: expected [ '/groups/{group_id}/thing' ] to have a length of 2 but got 1",
"error": "expected support for org or group tenant: expected [ '/bad-tenant' ] to have a length of +0 but got 1",
"isMust": true,
"isShould": false,
"passed": false,
Expand Down Expand Up @@ -86,7 +86,7 @@ Object {
"condition": "have an org or group tenant",
"docsLink": "https://github.com/snyk/sweater-comb/blob/main/docs/standards.md#organization-and-group-tenants-for-resources",
"effectiveOnDate": 2021-07-01T00:00:00.000Z,
"error": "expected support for org or group tenant: expected [ '/orgs/{org_id}/thing' ] to have a length of 2 but got 1",
"error": "expected support for org or group tenant: expected [ '/bad-tenant' ] to have a length of +0 but got 1",
"isMust": true,
"isShould": false,
"passed": false,
Expand Down Expand Up @@ -133,7 +133,7 @@ Object {
"condition": "have an org or group tenant",
"docsLink": "https://github.com/snyk/sweater-comb/blob/main/docs/standards.md#organization-and-group-tenants-for-resources",
"effectiveOnDate": 2021-07-01T00:00:00.000Z,
"error": "expected support for org or group tenant: expected [] to have a length of 1 but got +0",
"error": "expected support for org or group tenant: expected [ '' ] to have a length of +0 but got 1",
"isMust": true,
"isShould": false,
"passed": false,
Expand Down Expand Up @@ -180,7 +180,7 @@ Object {
"condition": "have an org or group tenant",
"docsLink": "https://github.com/snyk/sweater-comb/blob/main/docs/standards.md#organization-and-group-tenants-for-resources",
"effectiveOnDate": 2021-07-01T00:00:00.000Z,
"error": "expected support for org or group tenant: expected [] to have a length of 1 but got +0",
"error": "expected support for org or group tenant: expected [ '/group/{group_id}' ] to have a length of +0 but got 1",
"isMust": true,
"isShould": false,
"passed": false,
Expand Down Expand Up @@ -273,7 +273,7 @@ Object {
"condition": "have an org or group tenant",
"docsLink": "https://github.com/snyk/sweater-comb/blob/main/docs/standards.md#organization-and-group-tenants-for-resources",
"effectiveOnDate": 2021-07-01T00:00:00.000Z,
"error": "expected support for org or group tenant: expected [] to have a length of 1 but got +0",
"error": "expected support for org or group tenant: expected [ '/groups/thing' ] to have a length of +0 but got 1",
"isMust": true,
"isShould": false,
"passed": false,
Expand Down Expand Up @@ -320,7 +320,7 @@ Object {
"condition": "have an org or group tenant",
"docsLink": "https://github.com/snyk/sweater-comb/blob/main/docs/standards.md#organization-and-group-tenants-for-resources",
"effectiveOnDate": 2021-07-01T00:00:00.000Z,
"error": "expected support for org or group tenant: expected [] to have a length of 1 but got +0",
"error": "expected support for org or group tenant: expected [ '/org/{org_id}' ] to have a length of +0 but got 1",
"isMust": true,
"isShould": false,
"passed": false,
Expand Down Expand Up @@ -413,7 +413,7 @@ Object {
"condition": "have an org or group tenant",
"docsLink": "https://github.com/snyk/sweater-comb/blob/main/docs/standards.md#organization-and-group-tenants-for-resources",
"effectiveOnDate": 2021-07-01T00:00:00.000Z,
"error": "expected support for org or group tenant: expected [] to have a length of 1 but got +0",
"error": "expected support for org or group tenant: expected [ '/orgs/thing' ] to have a length of +0 but got 1",
"isMust": true,
"isShould": false,
"passed": false,
Expand Down Expand Up @@ -460,7 +460,7 @@ Object {
"condition": "have an org or group tenant",
"docsLink": "https://github.com/snyk/sweater-comb/blob/main/docs/standards.md#organization-and-group-tenants-for-resources",
"effectiveOnDate": 2021-07-01T00:00:00.000Z,
"error": "expected support for org or group tenant: expected [] to have a length of 1 but got +0",
"error": "expected support for org or group tenant: expected [ '/thing' ] to have a length of +0 but got 1",
"isMust": true,
"isShould": false,
"passed": false,
Expand Down

0 comments on commit b14108b

Please sign in to comment.