search tests

new method emptydb
use emptydb instead of flushdb, flushdb  removes indices for mongo which
breaks search tests
initialize meta.config properly in tests
enable nodebb-plugin-dbsearch for tests
This commit is contained in:
barisusakli
2016-10-17 23:34:09 +03:00
parent d106ca9ce3
commit 4a0f67afdc
19 changed files with 221 additions and 20 deletions

View File

@@ -90,13 +90,23 @@
db.init(next);
},
function (next) {
db.flushdb(next);
db.emptydb(next);
},
function (next) {
winston.info('test_database flushed');
meta = require('../../src/meta');
setupDefaultConfigs(meta, next);
},
function (next) {
meta.configs.init(next);
},
function (next) {
meta.config.postDelay = 0;
meta.config.initialPostDelay = 0;
meta.config.newbiePostDelay = 0;
enableDefaultPlugins(next);
},
function (next) {
// nconf defaults, if not set in config
if (!nconf.get('upload_path')) {
@@ -131,6 +141,26 @@
], done);
});
function setupDefaultConfigs(meta, next) {
winston.info('Populating database with default configs, if not already set...\n');
var defaults = require(path.join(nconf.get('base_dir'), 'install/data/defaults.json'));
meta.configs.setOnEmpty(defaults, next);
}
function enableDefaultPlugins(callback) {
winston.info('Enabling default plugins\n');
var defaultEnabled = [
'nodebb-plugin-dbsearch'
];
winston.info('[install/enableDefaultPlugins] activating default plugins', defaultEnabled);
db.sortedSetAdd('plugins:active', [0], defaultEnabled, callback);
}
module.exports = db;
}(module));