Mocha Chai testing til et rest API
Hej,Jeg er løbet ind i problemmer ved mocha chai testing af mit API til en datingapp.
Jeg vil gerne teste det API som opretter et like i min like.json fil, som har følgende struktur:
{
"username": "Jens",
"likedUser": "Amalie"
},
{
"username": "Amalie",
"likedUser": "Jens"
}
Mit API request sår sådan her ud:
app.post('/interMatch', (req, res)=> {
let interMatchData = req.body;
let likesArray = JSON.parse(fs.readFileSync("./database/likes.JSON"))
likesArray.push(interMatchData)
console.log(likesArray, "hej")
fs.writeFileSync("./database/likes.JSON", JSON.stringify(likesArray, null, 2));
res.send(JSON.stringify({besked: 'Vi sender vores egen bruger + liked bruger til JSON', likesArray}));
})
Og her er mit forsøg på en mochai chai test. Denne passer dog ikke men bliver pending ved npm test.
var chai = require('chai');
var chaiHTTP = require('chai-http');
const { response } = require('express');
var API = require('../backend/Server/API')
//assertion style
chai.should()
chai.use(chaiHTTP);
describe('API()', function (){
it('It should post a new like'), (done) => {
const user = {
username: "Erik",
likedUser: "Ida",
}
chai.request(API)
.post('/interMatch')
.send(user)
.end((err,response)=> {
response.should.have.property('username').eq("Erik");
response.should.have.property('likedUser').eq("Ida");
//response.should.be.a('object');
done()
});
};
});
Er der nogen som kan hjælpe mig med at finde ud af, hvad jeg gør forkert.
På forhånd mange tak :-)