测试前环回4个空数据库

时间:2018-08-17 05:46:44

标签: javascript loopback

我想在接受测试用例之前清空数据库。

在我的aircraft.controller.acceptance.ts中,

import { givenEmptyDatabase } from './helpers/database.helpers';
...
before(givenEmptyDatabase);
...
describe( ... ) { ... }

database.helpers.ts中,我尝试按照LoopBack 4 documentation

import {AircraftRepository} from '../../src/repositories';
import {testdb} from '../fixtures/datasources/testdb.datasource';

export async function givenEmptyDatabase() {
  await new AircraftRepository(testdb).deleteAll();
}

,但从未描述testdb.datasource.ts的外观。我试图使它看起来与常规db.datasource.ts类似,但是我不确定要导出什么。

import {inject} from '@loopback/core';
import {juggler, AnyObject} from '@loopback/repository';
const config = require('./db.datasource.json');

export class DbDataSource extends juggler.DataSource {
  static dataSourceName = 'db';

  constructor(
    @inject('datasources.config.db', {optional: true})
    dsConfig: AnyObject = config
  ) {
    super(dsConfig);
  }
}

1 个答案:

答案 0 :(得分:1)

@loopback/repository得到答案。 testdb.datasource.ts应该看起来像这样:

import { juggler } from '@loopback/repository';

export const testdb: juggler.DataSource = new juggler.DataSource({
  name: 'db',
  connector: 'memory'
});