initial test

This commit is contained in:
Dmitriy Ryajov 2022-03-26 13:50:53 -06:00
parent b5fe8dc46e
commit 8e5d64d7c3
No known key found for this signature in database
GPG Key ID: DA8C680CE7C657A4

View File

@ -8,20 +8,15 @@ suite "Leopard":
const
testString = "Hello World!"
test "Test simple Encode/Decode":
var
leoEncoder: LeoEncoder
leoDecoder: LeoDecoder
data: seq[seq[byte]]
parity: seq[seq[byte]]
recovered: seq[seq[byte]]
test "Test Encode/Decode":
leoEncoder = LeoEncoder.init(64, 16, 10).tryGet()
leoDecoder = LeoDecoder.init(64, 16, 10).tryGet()
encoder = Leo.init(64, 16, 10, LeoCoderKind.Encoder).tryGet()
decoder = Leo.init(64, 16, 10, LeoCoderKind.Decoder).tryGet()
data = newSeq[seq[byte]](16)
parity = newSeq[seq[byte]](10)
recovered = newSeq[seq[byte]](16)
try:
for i in 0..<16:
data[i] = newSeq[byte](64)
recovered[i] = newSeq[byte](64)
@ -33,16 +28,19 @@ suite "Leopard":
for i in 0..<10:
parity[i] = newSeq[byte](64)
leoEncoder.encode(data, parity).tryGet()
encoder.encode(data, parity).tryGet()
let
var
data1 = data[0]
data2 = data[1]
data[0].setLen(0)
data[1].setLen(0)
leoDecoder.decode(data, parity, recovered).tryGet()
decoder.decode(data, parity, recovered).tryGet()
check recovered[0] == data1
check recovered[1] == data2
finally:
encoder.free()
decoder.free()