From 679a785d7096bd537e7b0c7a1cecfb60b553f00e Mon Sep 17 00:00:00 2001 From: lana-k Date: Wed, 18 Aug 2021 21:24:12 +0200 Subject: [PATCH] add test for view #78 --- tests/lib/database/database.spec.js | 30 +++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/tests/lib/database/database.spec.js b/tests/lib/database/database.spec.js index 0a13a1d..2852a72 100644 --- a/tests/lib/database/database.spec.js +++ b/tests/lib/database/database.spec.js @@ -47,6 +47,36 @@ describe('database.js', () => { expect(schema[0].columns[1].type).to.equal('integer') }) + it('creates schema with view', async () => { + await db.loadDb() + await db.execute(` + CREATE TABLE test (col1, col2 integer); + CREATE VIEW test_view AS SELECT col2 as amount FROM test; + `) + + await db.refreshSchema() + const schema = db.schema + expect(db.dbName).to.equal('database') + expect(schema).to.have.lengthOf(2) + expect(schema[0].name).to.equal('test') + expect(schema[1].name).to.equal('test_view') + + expect(schema[0].columns[0]).to.eql({ + name: 'col1', + type: 'N/A' + }) + + expect(schema[0].columns[1]).to.eql({ + name: 'col2', + type: 'integer' + }) + + expect(schema[1].columns).to.eql([{ + name: 'amount', + type: 'integer' + }]) + }) + it('creates empty db with name database', async () => { sinon.spy(db, 'refreshSchema')