This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
import { describe, expect, it } from 'vitest';
|
||||
|
||||
import { hasPermissionAccess } from '../src/store/modules/menu-access';
|
||||
|
||||
describe('system administrator permission semantics', () => {
|
||||
it('treats the isolated system administrator as having every UI permission', () => {
|
||||
expect(hasPermissionAccess('SYSTEM_ADMIN', [], 'project:project:view')).toBe(true);
|
||||
expect(hasPermissionAccess('SYSTEM_ADMIN', [], 'payment:request:approve')).toBe(true);
|
||||
expect(hasPermissionAccess('SYSTEM_ADMIN', [], 'permission:introduced:after-login')).toBe(true);
|
||||
});
|
||||
|
||||
it('keeps ordinary roles restricted to their explicit permission list', () => {
|
||||
const permissions = ['project:project:view'];
|
||||
expect(hasPermissionAccess('PROJECT_MANAGER', permissions, 'project:project:view')).toBe(true);
|
||||
expect(hasPermissionAccess('PROJECT_MANAGER', permissions, 'payment:request:approve')).toBe(false);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user