Skip to content

Commit 50a3441

Browse files
committed
Add unit test for self_serve_sso setting on render
1 parent 7d14eca commit 50a3441

3 files changed

Lines changed: 30 additions & 32 deletions

File tree

.changeset/configure-sso-component.md

Lines changed: 0 additions & 15 deletions
This file was deleted.

packages/clerk-js/src/core/resources/User.ts

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { getFullName } from '@clerk/shared/internal/clerk-js/user';
2-
import { deepCamelToSnake } from '@clerk/shared/underscore';
32
import type {
43
BackupCodeJSON,
54
BackupCodeResource,
@@ -22,16 +21,8 @@ import type {
2221
EnterpriseConnectionTestRunsPaginatedJSON,
2322
ExternalAccountJSON,
2423
ExternalAccountResource,
25-
ClerkPaginatedResponse,
26-
CreateMeEnterpriseConnectionParams,
27-
EnterpriseConnectionTestRunInitJSON,
28-
EnterpriseConnectionTestRunJSON,
29-
EnterpriseConnectionTestRunsPaginatedJSON,
30-
EnterpriseConnectionTestRunInitResource,
31-
EnterpriseConnectionTestRunResource,
32-
GetEnterpriseConnectionTestRunsParams,
3324
GetEnterpriseConnectionsParams,
34-
UpdateMeEnterpriseConnectionParams,
25+
GetEnterpriseConnectionTestRunsParams,
3526
GetOrganizationMemberships,
3627
GetUserOrganizationInvitationsParams,
3728
GetUserOrganizationSuggestionsParams,
@@ -56,7 +47,6 @@ import { deepCamelToSnake } from '@clerk/shared/underscore';
5647

5748
import { convertPageToOffsetSearchParams } from '../../utils/convertPageToOffsetSearchParams';
5849
import { unixEpochToDate } from '../../utils/date';
59-
import { convertPageToOffsetSearchParams } from '../../utils/convertPageToOffsetSearchParams';
6050
import { normalizeUnsafeMetadata } from '../../utils/resourceParams';
6151
import { eventBus, events } from '../events';
6252
import { addPaymentMethod, getPaymentMethods, initializePaymentMethod } from '../modules/billing';
@@ -345,7 +335,7 @@ export class User extends BaseResource implements UserResource {
345335
await BaseResource._fetch<EnterpriseConnectionJSON>({
346336
path: `${this.path()}/enterprise_connections`,
347337
method: 'POST',
348-
body: deepCamelToSnake(params) as any,
338+
body: toMeEnterpriseConnectionBody(params) as any,
349339
})
350340
)?.response as unknown as EnterpriseConnectionJSON;
351341

@@ -360,7 +350,7 @@ export class User extends BaseResource implements UserResource {
360350
await BaseResource._fetch<EnterpriseConnectionJSON>({
361351
path: `${this.path()}/enterprise_connections/${enterpriseConnectionId}`,
362352
method: 'PATCH',
363-
body: deepCamelToSnake(params) as any,
353+
body: toMeEnterpriseConnectionBody(params) as any,
364354
})
365355
)?.response as unknown as EnterpriseConnectionJSON;
366356

@@ -396,7 +386,7 @@ export class User extends BaseResource implements UserResource {
396386
params?: GetEnterpriseConnectionTestRunsParams,
397387
): Promise<ClerkPaginatedResponse<EnterpriseConnectionTestRunResource>> => {
398388
const { status, ...rest } = params || {};
399-
const search = convertPageToOffsetSearchParams({ ...rest, paginated: true });
389+
const search = convertPageToOffsetSearchParams(rest);
400390
if (status?.length) {
401391
for (const s of status) {
402392
search.append('status', s);
@@ -413,9 +403,7 @@ export class User extends BaseResource implements UserResource {
413403

414404
return {
415405
total_count: payload?.total_count ?? 0,
416-
data: (payload?.data ?? []).map(
417-
(row: EnterpriseConnectionTestRunJSON) => new EnterpriseConnectionTestRun(row, enterpriseConnectionId),
418-
),
406+
data: (payload?.data ?? []).map((row: EnterpriseConnectionTestRunJSON) => new EnterpriseConnectionTestRun(row)),
419407
};
420408
};
421409

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
import { describe, expect, it } from 'vitest';
2+
3+
import { bindCreateFixtures } from '@/test/create-fixtures';
4+
import { render } from '@/test/utils';
5+
6+
import { ConfigureSSO } from '../ConfigureSSO';
7+
8+
const { createFixtures } = bindCreateFixtures('ConfigureSSO');
9+
10+
describe('ConfigureSSO', () => {
11+
it('does not render when the self_serve_sso feature is disabled', async () => {
12+
const { wrapper, fixtures } = await createFixtures(f => {
13+
f.withUser({ email_addresses: ['test@clerk.com'] });
14+
});
15+
16+
fixtures.environment.userSettings.enterpriseSSO = {
17+
enabled: false,
18+
self_serve_sso: false,
19+
};
20+
21+
const { queryByText } = render(<ConfigureSSO />, { wrapper });
22+
23+
expect(queryByText(/Configure Single Sign-On/i)).not.toBeInTheDocument();
24+
});
25+
});

0 commit comments

Comments
 (0)