Files
speckle-server/packages/server/modules/core/tests/init.spec.js
T
2022-03-30 12:54:24 +03:00

57 lines
1.7 KiB
JavaScript

/* istanbul ignore file */
const expect = require('chai').expect
const appRoot = require('app-root-path')
const { init } = require(`${appRoot}/app`)
const knex = require(`${appRoot}/db/knex`)
const { beforeEachContext } = require(`${appRoot}/test/hooks`)
// NOTE:
// These tests check that the initialization routine of the whole server
// correctly registers some scopes and roles. At the time of writing, there are
// 11 scopes and 5 roles. These might increase in the future with additional
// modules being added.
describe('Initialization Logic @init-logic', () => {
describe('First init', () => {
before(async () => {
await beforeEachContext()
})
it('should have a lotta scopes', async () => {
let res = await knex('scopes').select()
expect(res.length).to.be.greaterThan(10)
})
it('should have some roles', async () => {
let res = await knex('user_roles').select()
expect(res.length).to.be.greaterThan(4)
})
it('should have some apps', async () => {
let res = await knex('server_apps').select()
expect(res.length).to.be.greaterThan(2)
})
})
describe('Second init', () => {
before(async () => {
await init()
})
it('should have a lotta scopes second time round too!', async () => {
let res = await knex('scopes').select()
expect(res.length).to.be.greaterThan(10)
})
it('should have some roles second time round!', async () => {
let res = await knex('user_roles').select()
expect(res.length).to.be.greaterThan(4)
})
it('should have some apps second time round', async () => {
let res = await knex('server_apps').select()
expect(res.length).to.be.greaterThan(2)
})
})
})