Чтобы загрузить массив файлов в Supertest, вы можете использовать метод attach, предоставляемый Supertest. Метод attachпозволяет прикреплять файлы к запросу.
Вот пример того, как можно загрузить массив файлов с помощью Supertest:
const request = require('supertest');
const express = require('express');
const app = express();
app.post('/upload', (req, res) => {
// Handle file upload logic here
});
describe('File Upload', () => {
it('should upload an array of files', async () => {
const files = [
'path/to/file1.jpg',
'path/to/file2.jpg',
'path/to/file3.jpg'
];
const formData = {};
files.forEach((file, index) => {
formData[`file${index}`] = fs.createReadStream(file);
});
const response = await request(app)
.post('/upload')
.attach(formData);
// Assert response and perform further tests
});
});
В этом примере у нас есть сервер Express с маршрутом /upload, который обрабатывает логику загрузки файлов. Внутри тестового примера мы создаем массив путей к файлам, а затем используем метод attach, чтобы прикрепить каждый файл к запросу. Файлы прикрепляются с помощью метода fs.createReadStream, который позволяет нам читать файл как поток.
Обратите внимание, что приведенный выше код представляет собой базовый пример, демонстрирующий концепцию загрузки массива файлов с помощью Supertest. Вам потребуется настроить код в соответствии с вашими конкретными требованиями.