'How to use GLOBAL FIXTURES in mocha JS to prepare preconditions of all test
I have read the document of mocha but can't follow the instruction. Because I have an Express Class like that
// ExpressServer.js
const http = require('http');
const express = require('express');
class ExpressServer {
   constructor(port, openApiYaml) {
     this.port = port;
     this.app = express();
   }
   launch() {
     http.createServer(this.app).listen(this.port);
   }
}
// setUpMocha.js
const { ExpressServer } = require('../expressServer');
const config = require('../config');
let expressServer;
const mochaGlobalSetup = async () => {
   expressServer = new ExpressServer(config.URL_PORT, config.OPENAPI_YAML);
   expressServer.launch();
};
module.exports = {
  mochaGlobalSetup,
  expressServer
}
// testAPIs
enter code here
const chai = require('chai');
const chaiHttp = require('chai-http');
const { expressServer } = require('./setUp');
const configTest = require('./configTest');
describe('Test all public APIS', function(){
   it('should get all diagrams belong to any site', function() {
       chai.request(expressServer.app)
       .get('/site/diagrams')
       .set('authorization', configTest.accessToken)
       .end(function(err, res){
         console.log(res);
       });
   });
});
So when i call
mocha --require ./test/setUp.js ./test/publicAPIs.js
It said that
TypeError: Cannot read property 'app' of undefined of line chai.request(expressServer.app)
The above file is example of my issue. I checked that i require all needed libraries. It is some think that wrong about set up, the way that mocha work ?
So I'm very confused "How can I fix this to prepare server for testing REST APIS'
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source | 
|---|
