Hide readAll from js for tests passing

This commit is contained in:
data-man 2018-05-25 08:48:09 +03:00
commit cc9e94cd96

View file

@ -86,19 +86,20 @@ proc readData*(s: Stream, buffer: pointer, bufLen: int): int =
## low level proc that reads data into an untyped `buffer` of `bufLen` size. ## low level proc that reads data into an untyped `buffer` of `bufLen` size.
result = s.readDataImpl(s, buffer, bufLen) result = s.readDataImpl(s, buffer, bufLen)
proc readAll*(s: Stream): string = when not defined(js):
## Reads all available data. proc readAll*(s: Stream): string =
const bufferSize = 1024 ## Reads all available data.
var buffer {.noinit.}: array[bufferSize, char] const bufferSize = 1024
while true: var buffer {.noinit.}: array[bufferSize, char]
let readBytes = readData(s, addr(buffer[0]), bufferSize) while true:
if readBytes == 0: let readBytes = readData(s, addr(buffer[0]), bufferSize)
break if readBytes == 0:
let prevLen = result.len break
result.setLen(prevLen + readBytes) let prevLen = result.len
copyMem(addr(result[prevLen]), addr(buffer[0]), readBytes) result.setLen(prevLen + readBytes)
if readBytes < bufferSize: copyMem(addr(result[prevLen]), addr(buffer[0]), readBytes)
break if readBytes < bufferSize:
break
proc peekData*(s: Stream, buffer: pointer, bufLen: int): int = proc peekData*(s: Stream, buffer: pointer, bufLen: int): int =
## low level proc that reads data into an untyped `buffer` of `bufLen` size ## low level proc that reads data into an untyped `buffer` of `bufLen` size