tests: remove loadSettings.js for backend tests.

The old loadSettings.js was a way of customizing settings upon load, because
the Settings module did not offer this functionality. But it did not work well,
since all the default settings were not loaded.

Let's get rid of loadSettings.js for the bulk of the tests (the "backend"
specs). For the "container" specs, we'll keep it in place until/if we rewrite
Settings.js making it less brittle.
This commit is contained in:
muxator 2020-04-14 01:10:19 +02:00 committed by muxator
parent 419f17371c
commit 44186edbc5
8 changed files with 23 additions and 35 deletions

View File

@ -1,6 +1,13 @@
/**
* The Settings Modul reads the settings out of settings.json and provides
* The Settings module reads the settings out of settings.json and provides
* this information to the other modules
*
* TODO muxator 2020-04-14:
*
* 1) get rid of the reloadSettings() call at module loading;
* 2) provide a factory method that configures the settings module at runtime,
* reading the file name either from command line parameters, from a function
* argument, or falling back to a default.
*/
/*

View File

@ -1,26 +0,0 @@
/*
* ACHTUNG: there is a copied & modified version of this file in
* <basedir>/tests/container/loadSettings.js
*
* TODO: unify those two files, and merge in a single one.
*/
var jsonminify = require(__dirname+"/../../src/node_modules/jsonminify");
const fs = require('fs');
function loadSettings(){
var settingsStr = fs.readFileSync(__dirname+"/../../settings.json").toString();
// try to parse the settings
try {
if(settingsStr) {
settingsStr = jsonminify(settingsStr).replace(",]","]").replace(",}","}");
var settings = JSON.parse(settingsStr);
return settings;
}
}catch(e){
console.error("whoops something is bad with settings");
}
}
exports.loadSettings = loadSettings;

View File

@ -9,7 +9,7 @@
const assert = require('assert');
const supertest = require(__dirname + '/../../../../src/node_modules/supertest');
const fs = require('fs');
const settings = require(__dirname + '/../../loadSettings').loadSettings();
const settings = require(__dirname + '/../../../../src/node/utils/Settings');
const api = supertest('http://' + settings.ip + ':' + settings.port);
const path = require('path');

View File

@ -7,7 +7,7 @@
const assert = require('assert');
const supertest = require(__dirname+'/../../../../src/node_modules/supertest');
const fs = require('fs');
const settings = require(__dirname+'/../../loadSettings').loadSettings();
const settings = require(__dirname + '/../../../../src/node/utils/Settings');
const api = supertest('http://'+settings.ip+":"+settings.port);
const path = require('path');
const async = require(__dirname+'/../../../../src/node_modules/async');

View File

@ -1,7 +1,7 @@
var assert = require('assert')
supertest = require(__dirname+'/../../../../src/node_modules/supertest'),
fs = require('fs'),
settings = require(__dirname+'/../../loadSettings').loadSettings(),
settings = require(__dirname + '/../../../../src/node/utils/Settings'),
api = supertest('http://'+settings.ip+":"+settings.port),
path = require('path');

View File

@ -8,7 +8,7 @@
const assert = require('assert');
const supertest = require(__dirname+'/../../../../src/node_modules/supertest');
const fs = require('fs');
const settings = require(__dirname+'/../../loadSettings').loadSettings();
const settings = require(__dirname + '/../../../../src/node/utils/Settings');
const api = supertest('http://'+settings.ip+":"+settings.port);
const path = require('path');
const async = require(__dirname+'/../../../../src/node_modules/async');

View File

@ -1,7 +1,7 @@
var assert = require('assert')
supertest = require(__dirname+'/../../../../src/node_modules/supertest'),
fs = require('fs'),
settings = require(__dirname+'/../../loadSettings').loadSettings(),
settings = require(__dirname + '/../../../../src/node/utils/Settings'),
api = supertest('http://'+settings.ip+":"+settings.port),
path = require('path');

View File

@ -1,8 +1,15 @@
/*
* ACHTUNG: this file was copied & modified from the analogous
* <basedir>/tests/backend/loadSettings.js
* ACHTUNG: this file is a hack used to load "settings.json.docker" instead of
* "settings.json", since in its present form the Settings module does
* not allow it.
* This is a remnant of an analogous file that was placed in
* <basedir>/tests/backend/loadSettings.js
*
* TODO: unify those two files, and merge in a single one.
* TODO: modify the Settings module:
* 1) no side effects on module load
* 2) write a factory method that loads a configuration file (taking the
* file name from the command line, a function argument, or falling
* back to a default)
*/
var jsonminify = require(__dirname+"/../../src/node_modules/jsonminify");