mirror of
https://gitee.com/nocobase/nocobase.git
synced 2025-07-02 03:02:19 +08:00
58 lines
1.3 KiB
TypeScript
58 lines
1.3 KiB
TypeScript
import supertest from 'supertest';
|
|
import { Application } from '../application';
|
|
|
|
describe('application', () => {
|
|
let app: Application;
|
|
let agent;
|
|
|
|
beforeEach(() => {
|
|
app = new Application({
|
|
database: {
|
|
username: process.env.DB_USER,
|
|
password: process.env.DB_PASSWORD,
|
|
database: process.env.DB_DATABASE,
|
|
host: process.env.DB_HOST,
|
|
port: process.env.DB_PORT as any,
|
|
dialect: process.env.DB_DIALECT as any,
|
|
dialectOptions: {
|
|
charset: 'utf8mb4',
|
|
collate: 'utf8mb4_unicode_ci',
|
|
},
|
|
},
|
|
resourcer: {
|
|
prefix: '/api',
|
|
},
|
|
dataWrapping: true,
|
|
});
|
|
app.resourcer.registerActionHandlers({
|
|
list: async (ctx, next) => {
|
|
ctx.body = [1, 2];
|
|
await next();
|
|
},
|
|
get: async (ctx, next) => {
|
|
ctx.body = [3, 4];
|
|
await next();
|
|
},
|
|
'foo2s.bar2s:list': async (ctx, next) => {
|
|
ctx.body = [5, 6];
|
|
await next();
|
|
},
|
|
});
|
|
agent = supertest.agent(app.callback());
|
|
});
|
|
|
|
afterEach(async () => {
|
|
return app.db.close();
|
|
});
|
|
|
|
it('resourcer.define', async () => {
|
|
app.resourcer.define({
|
|
name: 'test',
|
|
});
|
|
const response = await agent.get('/api/test');
|
|
expect(response.body).toEqual({
|
|
data: [1, 2],
|
|
});
|
|
});
|
|
});
|