Мне нужна помощь с одной вещью:
У меня есть функция, которая генерирует массив объектов, следующим образом:
const parse = require('csv-parse');
const fs = require('fs');
async function dadosCsv(arquivo){
let csvData = []
fs.createReadStream(arquivo)
.pipe(
parse({
columns: true,
})
)
.on('data', async(row) =>{
csvData.push(row)
})
.on('end', async() =>{
return csvData
})
}
module.exports = dadosCsv;
Затем я пытаюсь использовать этот массив в отдельном тесте. файл с использованием методов jest
const dadosCsv = require('../helper/dadosCsv')
// Log function
console.log(dadosCsv);
describe("Testando", () => {
dadosCsv(__dirname + '/importar_notas_sp.csv')
test('Cenario', async() =>{
csvData.forEach(function(item) {
// Trying to log data from within the array into the above function
console.log(JSON.parse(item.msgRetorno))
})
})
})
Произошла ошибка, obs: я могу получить асинхронную функцию другого файла, но не могу использовать массив из него:
Попытка войти данные из массива в вышеуказанную функцию ReferenceError: csvData не определена
21 |
22 | test('Cenario', async() =>{
> 23 | csvData.forEach(function(item) {
| ^
24 | console.log(JSON.parse(item.msgRetorno))
25 | })
26 | })
at Object.<anonymous> (src/importar_notas_SP.test.js:23:9)
Функция журнала:
console.log src/importar_notas_SP.test.js:20
[AsyncFunction: dadosCsv]