UNPKG

@jfln/marvin-db

Version:

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

60 lines (52 loc) 1.63 kB
"use strict"; require("reflect-metadata"); var _core = require("@mikro-orm/core"); var _ = require(".."); var _mikroOrm = _interopRequireDefault(require("../../mikro-orm.config")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } describe('Answer Entity', () => { let ormAnswer; let em; beforeAll(async () => { ormAnswer = await _core.MikroORM.init(_mikroOrm.default); 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(); } }); });