при тестировании моей формы, в которой есть файлы, а также большое количество полей
Вместо добавления примерно в 80 раз .field('name', 'value')
я хочу найти более простой способ
Я пробовалиспользуя метод attach () с send (), и я обнаружил, что это не работает, и мне нужно использовать field ()
, даже если я отправляю файлы с помощью send, например send("files": fs.readFileSync('/home/khatib/Pictures/Screenshot from 2019-09-22 12-27-26.png')
, я могу 't получить к ним доступ из req.files в соответствующей функции конечной точки API
it('should add files and send data', ()=> {
let Obj = {
"field": "test Test Test",
"field2": "0",
"field3": "2",
"field4": "3",
"field5": "245",
"field5": "8",
.
.
.
.
"field80": "8",
};
return chai.request(app)
.post('endpoint')
.set('token', token))
//.send(Obj)
.field('field1', 'value')
.field('field2', 'value')
.field('field3', 'value')
.field('field4', 'value')
.
.
.
.field('field80', 'value')
.attach('files', 'file path')
.then( res => {
console.log(res.body)
expect(res.body).to.have.property('msg').eql('Successfuly');
expect(res).to.be.json
})
.catch(err => {
expect(err).to.have.status(500);
expect(err).to.be.json;
});
})
Есть ли какое-нибудь решение?