Ich habe eine globale Funktion für erfordern bestimmte Dateien meiner app/Rahmen geschrieben:require.main.require funktioniert, aber nicht in Mocha Test
global.coRequireModel = function(name) {
// CRASH happens here
return require.main.require('./api/_co' + name + '/_co' + name + '.model');
}
Dieses Modul ist in/components/coGlobalFunctions.
es in meinem Haupt-App erforderlich ist app.js wie folgt aus:
require('./components/coGlobalFunctions');
Dann in anderen Modulen "etwas" aus dem Rahmen, den ich verwende mit:
var baseScheme = coRequireModel('Base');
Das funktioniert aber nicht in die Mocha-Tests, die mir vor dem Request.main.require-Aufruf ein "Error: Can not find modul" geben.
Es scheint, dass der Test von einem anderen Quellordner kommt. Aber ich dachte, das Erfordernis von "require.main.require" würde den Aspekt der relativen Verknüpfung mit Modulen ausschließen.
EDIT:
Ein Beispiel Testdatei in api/Benutzer lebt:
var should = require('should');
var app = require('../../app');
var User = require('./user.model');
...
eine Abhilfe für dieses gefunden? Vielleicht um das Modul in Tests zu setzen? – Chathushka