porting query tests

This commit is contained in:
Jaremy Creechley 2023-09-21 19:23:23 -07:00
parent 0971986863
commit 185f162050
No known key found for this signature in database
GPG Key ID: 4E66FB67B21D3300
2 changed files with 9 additions and 7 deletions

View File

@ -211,7 +211,7 @@ proc query*(
if blob.isSome:
let arr = cast[ptr UncheckedArray[byte]](blob)
DataBuffer.new(arr.toOpenArray(0, dataLen-1))
else: DataBuffer.new(0)
else: DataBuffer.new("")
echo "SQLITE ROW: yield"
yield success (key.some, data)

View File

@ -45,7 +45,7 @@ template `==`*[T: char | byte](a: DataBuffer, b: openArray[T]): bool =
elif a[].size != b.len: false
else: a.hash() == b.hash()
proc new*(tp: type DataBuffer, capacity: int = 0): DataBuffer =
proc new(tp: type DataBuffer, capacity: int = 0): DataBuffer =
## allocate new buffer with given capacity
##
@ -122,11 +122,13 @@ proc `==`*(a, b: DataBuffer): bool =
echo "DB == cap: ", a[].cap, " ", b[].cap
echo "DB == ", a[].buf.pointer.repr, " ", b[].buf.pointer.repr
echo "DB == ", a[].hash, " ", b[].hash
if a.isNil and b.isNil: return true
elif a.isNil or b.isNil: return false
elif a[].size != b[].size: return false
elif a[].buf == b[].buf: return true
else: a.hash() == b.hash()
if a.isNil and b.isNil: result = true
elif a.isNil or b.isNil: result = false
elif a[].size != b[].size: result = false
elif a[].buf == b[].buf: result = true
else: result = a.hash() == b.hash()
echo "DB == ", result
echo ""
converter toBuffer*(err: ref CatchableError): DataBuffer =
## convert exception to an object with StringBuffer