From 1f0c6a7638353d1ebbbc4ba1a8de0887d5f68e98 Mon Sep 17 00:00:00 2001 From: pacien Date: Fri, 30 Nov 2018 21:06:39 +0100 Subject: isolate blocks --- tests/tstreamblock.nim | 68 -------------------------------------------------- 1 file changed, 68 deletions(-) delete mode 100644 tests/tstreamblock.nim (limited to 'tests/tstreamblock.nim') diff --git a/tests/tstreamblock.nim b/tests/tstreamblock.nim deleted file mode 100644 index 57eaf3a..0000000 --- a/tests/tstreamblock.nim +++ /dev/null @@ -1,68 +0,0 @@ -# gzip-like LZSS compressor -# Copyright (C) 2018 Pacien TRAN-GIRARD -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as -# published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see . - -import unittest, streams -import bitio/bitreader, bitio/bitwriter, streamblock - -suite "streamblock": - test "serialise": - let rawStream = newStringStream() - defer: rawStream.close() - rawStream.write(0xFEDC_BA98_7654_3210'u64) - rawStream.setPosition(0) - let rawBitReader = rawStream.bitReader() - let streamBlock = readRaw(rawBitReader, uncompressed) - check streamBlock.isLast() - - let outputStream = newStringStream() - defer: outputStream.close() - let outputBitWriter = outputStream.bitWriter() - streamBlock.writeSerialisedTo(outputBitWriter) - outputBitWriter.flush() - - outputStream.setPosition(0) - let produceReader = outputStream.bitReader() - check produceReader.readBool() == true # last block flag - check produceReader.readBits(2, uint8) == 0x00'u8 # block kind - check produceReader.readBits(16, uint16) == 64 # raw block length - check produceReader.readSeq(64, uint8) == (64, @[0x10'u8, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE]) # raw block content - discard produceReader.readBits(8 - 2 - 1, uint8) - check produceReader.atEnd() - - test "deserialise": - let serialisedStream = newStringStream() - defer: serialisedStream.close() - let serialisedBitWriter = serialisedStream.bitWriter() - serialisedBitWriter.writeBool(true) - serialisedBitWriter.writeBits(2, 0x00'u8) - serialisedBitWriter.writeBits(16, 64'u16) - serialisedBitWriter.writeBits(64, 0xFEDC_BA98_7654_3210'u64) - serialisedBitWriter.flush() - - serialisedStream.setPosition(0) - let serialisedBitReader = serialisedStream.bitReader() - let streamBlock = readSerialised(serialisedBitReader) - - let outputStream = newStringStream() - defer: outputStream.close() - let outputBitWriter = outputStream.bitWriter() - check streamBlock.isLast() - streamBlock.writeRawTo(outputBitWriter) - outputBitWriter.flush() - - outputStream.setPosition(0) - check outputStream.readUint64 == 0xFEDC_BA98_7654_3210'u64 - check outputStream.atEnd() -- cgit v1.2.3