jeudi 6 juin 2019

post request test is not working with chai http body is empty

I am testing my post route for a Restful API that I am working on

Below is my test. The data that I want to post never go through and the req.body returns empty

const assert = require("assert");
const app = require("../../index");
const CarController = require("../../controllers/car");
const chai =require("chai");
const chaiHttp= require("chai-http");
const chaiAsPromised = require("chai-as-promised");
const expect = require('chai').expect;
const should= require('chai').Should;

chai.use(chaiHttp);
chai.use(chaiAsPromised);

describe("Cars",function(){

    describe("/POST",()=>{

        it("Should post a new car add",(done)=>{
            chai.request(app)
            .post('/api/v1/car')
            .set('Content-Type', 'application/json')
            .send({ 
                'email' :'clarkeschultz@gink.com',
                'price':'2000',
                'state':'new',
                'status':'pending'
                })

                .end(function(err,res){

                expect(err).to.be.null;
                res.body.should.be.a('object');

                done();




            })
        })
    })

})


The test should pass but I get "Uncaught TypeError: Cannot read property 'be' of undefined"

Aucun commentaire:

Enregistrer un commentaire