refactor: Rename fixtures as factories to differentiate dynamic data
This commit is contained in:
27
packages/backend/test/factories/permission.ts
Normal file
27
packages/backend/test/factories/permission.ts
Normal file
@@ -0,0 +1,27 @@
|
||||
import { IPermission } from '@automatisch/types';
|
||||
import createRole from './role';
|
||||
|
||||
type PermissionParams = {
|
||||
roleId?: string;
|
||||
action?: string;
|
||||
subject?: string;
|
||||
};
|
||||
|
||||
const createPermission = async (
|
||||
params: PermissionParams = {}
|
||||
): Promise<IPermission> => {
|
||||
const permissionData = {
|
||||
roleId: params?.roleId || (await createRole()).id,
|
||||
action: params?.action || 'read',
|
||||
subject: params?.subject || 'User',
|
||||
};
|
||||
|
||||
const [permission] = await global.knex
|
||||
.table('permissions')
|
||||
.insert(permissionData)
|
||||
.returning('*');
|
||||
|
||||
return permission;
|
||||
};
|
||||
|
||||
export default createPermission;
|
Reference in New Issue
Block a user