Implement the async pipelines and fsMultiSync

This commit is contained in:
Zahary Karadjov 2020-05-04 02:47:01 +03:00
commit cb36a6d4db
No known key found for this signature in database
GPG key ID: C8936F8A3073D609
12 changed files with 920 additions and 299 deletions

View file

@ -81,10 +81,7 @@ suite "output stream":
template checkOutputsMatch(showResults = false,
skipUnbufferedFile = false) =
flush fileStream
close fileStream
flush unbufferedFileStream
close unbufferedFileStream
check fileExists(fileOutputPath) and
@ -122,15 +119,15 @@ suite "output stream":
let outputsMatch =
nimSeq == makeOpenArray(cast[ptr byte](buffer),
streamWritingToExistingBuffer.pos) and
nimSeq == memStreamRes and
nimSeq == readFileRes and
nimSeq == fileInputRes and
nimSeq == memFileInputRes and
nimSeq == fileInputWithSmallPagesRes
streamWritingToExistingBuffer.pos)
check outputsMatch
check nimSeq == memStreamRes
check nimSeq == readFileRes
check nimSeq == fileInputRes
check nimSeq == memFileInputRes
check nimSeq == fileInputWithSmallPagesRes
when not skipUnbufferedFile:
let unbufferedFileRes = readFile(unbufferedFileOutputPath).string.bytes
check nimSeq == unbufferedFileRes
@ -236,5 +233,6 @@ suite "output stream":
finalize dw.cursor
# The final outputs are the same
check nimSeq == memStream.getOutput
let resultsAreEqual = nimSeq == memStream.getOutput
check resultsAreEqual