Idastrings Praktikant
09. december 2020 - 10:30

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 :-)
Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links

Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester





Premium
IBM sætter flere navne på topledelsen for sit nye selskab 'NewCo'
Der er blevet sat navne på flere af de aboslutte topposter i IBM's nye driftsselskab, NewCo. Ind til videre fisker IBM inden for egne rækker.
Computerworld
Trump bønfalder Helle Thorning: Giv mig min Facebook-konto tilbage
Facebooks tilsynsråd, der har Helle Thorning-Schmidt i spidsen, har modtaget en erklæring fra Donald Trump, som ønsker at få genoprettet adgangen til sin Facebook og Instagram-konto.
CIO
Har du rost din mellemleder i dag? Snart er de uddøde - og det er et tab
Computerworld mener: Mellemledere lever livet farligt: Topledelsen får konstant ideer med skiftende hold i virkeligheden, og moden går mod flade agile organisationer. Men mellemlederen er en overset hverdagens helt med et kæmpe ansvar. Her er min hyldest til den ofte latterliggjorte mellemleder.
Job & Karriere
IBM Danmark trækker tilbud om frivillige fratrædelser tilbage for stort antal ansatte: "IBM har taget røven på sine ansatte"
Som led i IBM Danmarks store fyringsrunde fik 130 ansatte grønt lys til at forlade selskabet på en frivillig fratrædelsesordning. Men nu har IBM Danmark trukket det oprindelige tilbud tilbage for størstedelen af de ansatte.
White paper
Kunsten at navigere i en tilpasningsøkonomi
Evnen til at tilpasse sig en verden i konstant forandring bliver afgørende for virksomhedens mulighed for at vækste i fremtiden. Ét af de finansielle håndtag du kan skrue på, er en hel eller delvis outsourcing af it-driften. I e-bogen ”Kunsten at navigere i en tilpasningsøkonomi” får du viden om, hvordan din virksomhed kan bruge tilpasningsøkonomi til at håndtere fremtidens krav til it. Vi spørger blandt andet: - Kan din virksomhed skalere og tilpasse sin digitale kapacitet og økonomi? - Har dine kunder tillid til, at du har de skarpeste it-løsninger? - Ville I kunne styrke forretningen ved at give jeres it mere fokus? - Kan I få øget funktionalitet til samme pris? Vi fokuserer på risiko, økonomi, fokus og valg af it-partner, som er fire opmærksomhedspunkter du skal have styr på for at lykkes med at tilpasse virksomheden til at modstå forandringerne i verden.