UNPKG

reiso

Version:
116 lines 8.07 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const { Client } = require('pg'); const Config_1 = require("../../Modules/Config"); const ORM_1 = require("../../Modules/ORM"); describe("Module/ORM", () => { const username = 'root'; const password = ''; const host = 'database'; const db_name = 'test'; const conStringPri = 'postgres://' + username + ':' + password + '@' + host + '/postgres'; beforeEach(async () => { const client = new Client(conStringPri); await client.connect(); await client.query('DROP DATABASE IF EXISTS ' + db_name); await client.query('CREATE DATABASE ' + db_name); await client.end(); Config_1.setConfig({ default: { "db": { "Main": { "database": db_name, "host": host, "port": 5432, "type": "postgres", "username": username, "password": password } } } }); ORM_1.cleanEntities(); }); afterEach(async () => { const client = new Client(conStringPri); await client.connect(); await client.query('REVOKE CONNECT ON DATABASE ' + db_name + ' FROM public;'); await client.query('DROP DATABASE IF EXISTS ' + db_name); await client.end(); }); it("sync entity", async () => { let Test = class Test { }; tslib_1.__decorate([ ORM_1.PrimaryGeneratedColumn(), tslib_1.__metadata("design:type", Number) ], Test.prototype, "id", void 0); tslib_1.__decorate([ ORM_1.Column({ length: 100, nullable: false, unique: true }), ORM_1.Index("name-idx"), tslib_1.__metadata("design:type", String) ], Test.prototype, "name", void 0); tslib_1.__decorate([ ORM_1.CreateDateColumn(), tslib_1.__metadata("design:type", Date) ], Test.prototype, "date", void 0); Test = tslib_1.__decorate([ ORM_1.RegisterEntity("Test"), ORM_1.Entity("test") ], Test); let commander = ORM_1.Manager('Main', true); await commander.sync(); await commander.test(); await commander.close(); expect(1).toBe(1); }); it("create & get", async () => { let Test = class Test { }; tslib_1.__decorate([ ORM_1.PrimaryGeneratedColumn(), tslib_1.__metadata("design:type", Number) ], Test.prototype, "id", void 0); tslib_1.__decorate([ ORM_1.Column({ length: 100, nullable: false, unique: true }), ORM_1.Index("name-idx"), tslib_1.__metadata("design:type", String) ], Test.prototype, "name", void 0); tslib_1.__decorate([ ORM_1.CreateDateColumn(), tslib_1.__metadata("design:type", Date) ], Test.prototype, "date", void 0); Test = tslib_1.__decorate([ ORM_1.RegisterEntity("Test"), ORM_1.Entity("test") ], Test); let commander = ORM_1.Manager('Main', true); await commander.sync(); const connection = await commander.connect(); const repo = connection.getRepository(Test); const test = new Test(); test.name = 'test'; test.date = new Date(); await repo.save(test); const testLoaded = await repo.findOne({ name: 'test' }); expect(testLoaded.name).toBe('test'); await repo.remove(testLoaded); const testRemovedLoaded = await repo.findOne({ name: 'test' }); expect(!!testRemovedLoaded).toBeFalsy(); await commander.close(); }); }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT1JNLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL1Rlc3QvU2VydmVyL09STS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBRWpDLGlEQUFpRDtBQUNqRCwyQ0FBNEk7QUFFNUksUUFBUSxDQUFDLFlBQVksRUFBRSxHQUFHLEVBQUU7SUFFeEIsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDO0lBQ3hCLE1BQU0sUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUNwQixNQUFNLElBQUksR0FBRyxVQUFVLENBQUM7SUFDeEIsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDO0lBRXZCLE1BQU0sWUFBWSxHQUFHLGFBQWEsR0FBRyxRQUFRLEdBQUcsR0FBRyxHQUFHLFFBQVEsR0FBRyxHQUFHLEdBQUcsSUFBSSxHQUFHLFdBQVcsQ0FBQztJQUUxRixVQUFVLENBQUMsS0FBSyxJQUFJLEVBQUU7UUFDbEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDeEMsTUFBTSxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDdkIsTUFBTSxNQUFNLENBQUMsS0FBSyxDQUFDLDBCQUEwQixHQUFHLE9BQU8sQ0FBQyxDQUFDO1FBQ3pELE1BQU0sTUFBTSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsR0FBRyxPQUFPLENBQUMsQ0FBQztRQUNqRCxNQUFNLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUVuQixrQkFBUyxDQUFDO1lBQ04sT0FBTyxFQUFFO2dCQUNMLElBQUksRUFBRTtvQkFDRixNQUFNLEVBQUU7d0JBQ0osVUFBVSxFQUFFLE9BQU87d0JBQ25CLE1BQU0sRUFBRSxJQUFJO3dCQUNaLE1BQU0sRUFBRSxJQUFJO3dCQUNaLE1BQU0sRUFBRSxVQUFVO3dCQUNsQixVQUFVLEVBQUUsUUFBUTt3QkFDcEIsVUFB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