Как провести рефакторинг теста Мокко BDD? - PullRequest
0 голосов
/ 14 апреля 2020

Мое решение не работает

const port = require('../app').port
const superagent = require('superagent')
const expect = require('expect')
const server = require('http').createServer(app)

const boot = () => {
  server.listen(app.get('port'), () => {
    console.info(`Express server listening on port ${app.get('port')}`)
  })
}

Когда я пытаюсь

mocha tests
Express.js server is listening on port 3000

ReferenceError: app is not defined

ОП предложил это

const server = http.createServer(app)

Но в этом случае я получил вывод

ReferenceError: http is not defined

Папка

-rw-rw-r--   1 miki miki   503 апр 14 18:07 app.js
drwxrwxr-x   2 miki miki  4096 апр 14 17:43 db/
drwxrwxr-x 235 miki miki 12288 апр 14 18:43 node_modules/
-rw-rw-r--   1 miki miki   413 апр 14 18:43 package.json
-rw-rw-r--   1 miki miki 91189 апр 14 18:43 package-lock.json
drwxrwxr-x   2 miki miki  4096 апр 14 17:43 public/
drwxrwxr-x   2 miki miki  4096 апр 14 17:43 routes/
drwxrwxr-x   2 miki miki  4096 апр 14 18:16 test-example/
drwxrwxr-x   2 miki miki  4096 апр 14 18:30 tests/
drwxrwxr-x   2 miki miki  4096 апр 14 17:55 views/

Как решить эту проблему?

1 Ответ

1 голос
/ 14 апреля 2020

Вам необходимо импортировать модуль app, чтобы использовать его. Примерно так должно работать:

const app = require('../app'); // adjust the path if necessary
const superagent = require('superagent')
const expect = require('expect')
const server = require('http').createServer(app)

const boot = () => {
  server.listen(app.get('port'), () => {
    console.info(`Express server listening on port ${app.get('port')}`)
  })
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...