UNPKG

@jfln/marvin-db

Version:

biblioteca de objetos para normalizar o acesso a um banco mongo db

51 lines (42 loc) 1.43 kB
import 'reflect-metadata' import {EntityManager, MikroORM} from '@mikro-orm/core' import {Answer} from '..' import options from '../../mikro-orm.config' describe('Answer Entity', () => { let ormAnswer: MikroORM let em: EntityManager beforeAll(async () => { ormAnswer = await MikroORM.init(options) em = ormAnswer.em.fork() }) afterAll(() => { ormAnswer.close(true) }) it('should be able to create an Answer', async () => { const answer = new Answer('This is a test', '1234567890', '123456') await em.persistAndFlush(answer) expect(answer._id).toBeDefined() }) it('should be able to find an Answer', async () => { const answer = await em.findOne(Answer, {guildId: '123456'}) expect(answer).toBeDefined() }) it('should be able to update an Answer', async () => { const answer = await em.findOne(Answer, {guildId: '123456'}) expect(answer).toBeDefined() if (answer) { answer.answer = 'This is an updated test' await em.persistAndFlush(answer) expect(answer.answer).toEqual('This is an updated test') } }) it('should be able to delete an Answer', async () => { const answer = await em.findOne(Answer, {guildId: '123456'}) expect(answer).toBeDefined() if (answer) { await em.removeAndFlush(answer) const answer2 = await em.findOne(Answer, {guildId: '123456'}) expect(answer2).toBeNull() } }) })