51 lines
1.4 KiB
TypeScript
51 lines
1.4 KiB
TypeScript
import { QueryTypes } from 'sequelize';
|
|
import { RouterCodeModel } from '../../src/models/code.ts';
|
|
|
|
const sleep = (ms: number) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
// yarn test --testNamePattern='RouterCodeModel'
|
|
describe('RouterCodeModel', () => {
|
|
// 编写一个测试用例
|
|
// yarn test --testNamePattern='RouterCodeModel:init'
|
|
test('RouterCodeModel:init', async () => {
|
|
try {
|
|
RouterCodeModel.sync({ force: true });
|
|
console.log('connect success');
|
|
await sleep(2000);
|
|
} catch (error) {
|
|
console.error('connect error', error);
|
|
}
|
|
});
|
|
// yarn test --testNamePattern='RouterCodeModel:create'
|
|
test('RouterCodeModel:create', async () => {
|
|
try {
|
|
const file = await RouterCodeModel.create({
|
|
path: 'demo',
|
|
key: 'returnDemo',
|
|
active: true,
|
|
project: 'default',
|
|
code: `async function run(ctx) {
|
|
ctx.body = 'test js';
|
|
return ctx;
|
|
}`,
|
|
});
|
|
console.log('create success', file);
|
|
await sleep(2000);
|
|
} catch (error) {
|
|
console.error('create error', error);
|
|
}
|
|
});
|
|
// yarn test --testNamePattern='RouterCodeModel:findAll'
|
|
test('RouterCodeModel:findAll', async () => {
|
|
try {
|
|
const files = await RouterCodeModel.findAll();
|
|
console.log(
|
|
'findAll success',
|
|
files.map((file) => file.toJSON()),
|
|
);
|
|
await sleep(2000);
|
|
} catch (error) {
|
|
console.error('findAll error', error);
|
|
}
|
|
});
|
|
});
|