@mvx/cli
Version:
60 lines (52 loc) • 1.77 kB
text/typescript
import { Suite, Test, Before, After } from '@tsdi/unit';
import { User } from '../src/models/User';
import { MvcApplication, MvcContext } from '@mvx/mvc';
import * as expect from 'expect';
import { TestModule } from './TestModule';
import { UserRepository } from '../src/repositories/UserRepository';
('User test')
export class UserTest {
ctx: MvcContext;
()
async create() {
this.ctx = await MvcApplication.run(TestModule);
}
('can save user or not')
async save() {
let userRep = this.ctx.injector.get(UserRepository);
expect(userRep).toBeInstanceOf(UserRepository);
let newUr = new User();
newUr.name = 'admin----test';
newUr.account = 'admin----test';
newUr.password = '111111';
await userRep.save(newUr);
let svu = await userRep.findByAccount('admin----test')
// console.log(svu);
expect(svu instanceof User).toBeTruthy();
expect(svu.id).toBeDefined();
}
('can query data')
async query() {
let userRep = this.ctx.injector.get(UserRepository);
let admins = await userRep.search();
expect(admins[1] > 0).toBeTruthy();
}
('can query data with keywords')
async queryKey() {
let userRep = this.ctx.injector.get(UserRepository);
let admins = await userRep.search('admin----test');
// console.log(admins);
expect(admins[1]).toEqual(1);
}
()
async remove() {
let userRep = this.ctx.injector.get(UserRepository);
let svu = await userRep.findByAccount('admin----test');
await userRep.remove(svu);
// process.exit(0);
}
()
async clean() {
this.ctx.destroy();
}
}