2024-08-22 02:10:37 -07:00
|
|
|
import * as helpers from '@/sso/saml/saml-helpers';
|
|
|
|
import type { SamlUserAttributes } from '@/sso/saml/types/saml-user-attributes';
|
2024-05-17 01:53:15 -07:00
|
|
|
import { getPersonalProject } from '../../integration/shared/db/projects';
|
|
|
|
|
|
|
|
import * as testDb from '../shared/testDb';
|
|
|
|
|
|
|
|
beforeAll(async () => {
|
|
|
|
await testDb.init();
|
|
|
|
});
|
|
|
|
|
|
|
|
afterAll(async () => {
|
|
|
|
await testDb.terminate();
|
|
|
|
});
|
|
|
|
|
|
|
|
describe('sso/saml/samlHelpers', () => {
|
|
|
|
describe('createUserFromSamlAttributes', () => {
|
|
|
|
test('Creates personal project for user', async () => {
|
|
|
|
//
|
|
|
|
// ARRANGE
|
|
|
|
//
|
|
|
|
const samlUserAttributes: SamlUserAttributes = {
|
|
|
|
firstName: 'Nathan',
|
|
|
|
lastName: 'Nathaniel',
|
|
|
|
email: 'n@8.n',
|
|
|
|
userPrincipalName: 'Huh?',
|
|
|
|
};
|
|
|
|
|
|
|
|
//
|
|
|
|
// ACT
|
|
|
|
//
|
|
|
|
const user = await helpers.createUserFromSamlAttributes(samlUserAttributes);
|
|
|
|
|
|
|
|
//
|
|
|
|
// ASSERT
|
|
|
|
//
|
|
|
|
expect(user).toMatchObject({
|
|
|
|
firstName: samlUserAttributes.firstName,
|
|
|
|
lastName: samlUserAttributes.lastName,
|
|
|
|
email: samlUserAttributes.email,
|
|
|
|
});
|
|
|
|
await expect(getPersonalProject(user)).resolves.not.toBeNull();
|
|
|
|
});
|
|
|
|
});
|
|
|
|
});
|