Мне нужно создать пользователя для юнит-теста Чай, этому пользователю требуется profileImage
, который на моем внешнем интерфейсе я передаю как FormData
.Этот модульный тест должен издеваться над созданием пользователя с его изображением, но я не смог этого сделать.
Я решил попытаться смоделировать объект FormData
:
const FormData = require('form-data')
const FS = require('fs')
const Path = require('path')
// ...
const file = {
name: 'placeholder.jpg',
lastModified: 1556813605575,
lastModifiedDate: new Date(),
size: 30179,
type: 'image/jpg',
webkitRelativePath: '',
file: {
value: FS.createReadStream(Path.resolve(__dirname, '../fixtures/placeholder.jpg')),
options: {
filename: 'placeholder.jpg',
contentType: 'image/jpg'
}
}
}
const formData = new FormData()
formData.append('profileImage', file, file.name)
Мне нужно опубликовать это, чтобы я мог создать пользователя, и это вызывает следующую ошибку, которая ничего не значит для меня:
TypeError: source.on не является функцией
Почему это происходит?Как я могу это исправить?Как можно посмеяться над помещением файла FormData в тело POST-запроса для внутреннего модульного теста?
Спасибо!