обратный вызов chai.request () выбрасывает меня ECONNREFED - PullRequest
0 голосов
/ 04 июня 2019

Я пытаюсь проверить экспресс-запрос, расположенный в app.js, с помощью mocha и chai. Однако обратный вызов вызывает ошибку ECONNREFUSED, даже если сервер работает отлично, когда я его запускаю.

const chai = require('chai');
const chaiHttp = require('chai-http');
const { expect } = require('chai');
const app = require('../app');
const should = require("chai").should();
chai.use(chaiHttp);

describe("Login", () => {
    it("should return error when no login data", (done) => {
        chai.request(app)
            .post('/login')
            .end((error, results) => {
                if (error) throw error;
                should.exist(results);
                results.should.have.status(404);
                done();
            });
    });
});

полная ошибка -> Ошибка: подключите ECONNREFUSED 127.0.0.1:3000 в TCPConnectWrap.afterConnect [как oncomplete] (net.js: 1113: 14)

соответствующий код из app.js

const express = require('express');
const mysql = require("mysql");
const app = express();
const bodyParser = require("body-parser");
const bcrypt = require("bcrypt");
const saltRounds = 10;
const session = require("express-session");
const cors = require("cors");
const multer = require("multer");
const upload = multer({dest:"uploads/"});
const http = require("http");
const socketIO = require('socket.io');


app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: true}));
app.use(cors());
app.use(session({
   secret:"",
   resave:true,
   saveUninitialized: true
}));
app.use("/uploads",express.static("uploads"));
let con = mysql.createConnection({
//not empty in my real code 
   host:"",
   user: "",
   password: "",
   database: ""
});
let sess;

app.post("/login",function(req, res){
   con.query("SELECT username FROM user WHERE username = ?",[req.body.username],function (error,results) {
      if(results.length===0){
         res.redirect("http://localhost:3000/loginFailed");
         return res.status(404);
      }
      else{
         con.query("SELECT password FROM user WHERE username = ?",[req.body.username],
             function(error, results){
                if (error) throw error;
                console.log(results,req.body.password);
                if (bcrypt.compareSync(req.body.password, results[0].password)){
                   req.session.user = req.body.username;
                   req.session.admin = true;
                   console.log("00000");
                   sess = req.session;
                   console.log(sess.user);
                   res.redirect("http://localhost:3000/home");
                }
                else{
                   console.log("NOT OK2");
                   res.redirect("http://localhost:3000/loginFailed")
                }
             });
         }
      });
   });
server.listen(3001, function(){
});
module.exports = app;

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...