mirror of
https://github.com/strapi/strapi.git
synced 2025-08-03 14:28:40 +00:00
82 lines
1.8 KiB
JavaScript
82 lines
1.8 KiB
JavaScript
'use strict';
|
|
|
|
const policyUtils = require('../policy');
|
|
|
|
describe('Policy util', () => {
|
|
describe('Get policy', () => {
|
|
test('Throws on policy not found', () => {
|
|
expect(() => policyUtils.get('undefined')).toThrow();
|
|
});
|
|
|
|
test('Retrieves global policy', () => {
|
|
const policyFn = () => {};
|
|
|
|
// init global strapi
|
|
global.strapi = {
|
|
config: {
|
|
policies: {
|
|
'test-policy': policyFn,
|
|
},
|
|
},
|
|
};
|
|
|
|
expect(policyUtils.get('global::test-policy')).toBe(policyFn);
|
|
});
|
|
|
|
test('Retrieves a global plugin policy', () => {
|
|
const policyFn = () => {};
|
|
|
|
global.strapi = {
|
|
plugins: {
|
|
'test-plugin': {
|
|
config: {
|
|
policies: {
|
|
'test-policy': policyFn,
|
|
},
|
|
},
|
|
},
|
|
},
|
|
};
|
|
|
|
expect(() => policyUtils.get('test-plugin.test-policy')).toThrow();
|
|
expect(policyUtils.get('plugins::test-plugin.test-policy')).toBe(policyFn);
|
|
});
|
|
|
|
test('Retrieves a plugin policy locally', () => {
|
|
const policyFn = () => {};
|
|
|
|
global.strapi = {
|
|
plugins: {
|
|
'test-plugin': {
|
|
config: {
|
|
policies: {
|
|
'test-policy': policyFn,
|
|
},
|
|
},
|
|
},
|
|
},
|
|
};
|
|
|
|
expect(policyUtils.get('test-policy', 'test-plugin')).toBe(policyFn);
|
|
});
|
|
|
|
test('Retrieves an api policy locally', () => {
|
|
const policyFn = () => {};
|
|
|
|
global.strapi = {
|
|
api: {
|
|
'test-api': {
|
|
config: {
|
|
policies: {
|
|
'test-policy': policyFn,
|
|
},
|
|
},
|
|
},
|
|
},
|
|
};
|
|
|
|
expect(policyUtils.get('test-policy', undefined, 'test-api')).toBe(policyFn);
|
|
});
|
|
});
|
|
});
|