mirror of
https://github.com/logos-storage/nim-datastore.git
synced 2026-05-21 00:59:25 +00:00
fix databuffer tests
This commit is contained in:
parent
600dca6148
commit
783ecc3ab3
@ -7,8 +7,9 @@ import pkg/stew/byteutils
|
|||||||
import pkg/unittest2
|
import pkg/unittest2
|
||||||
import pkg/questionable
|
import pkg/questionable
|
||||||
import pkg/questionable/results
|
import pkg/questionable/results
|
||||||
|
import pkg/datastore/key
|
||||||
|
|
||||||
include ../../datastore/databuffer
|
include ../../datastore/threads/databuffer
|
||||||
|
|
||||||
var
|
var
|
||||||
shareVal: DataBuffer
|
shareVal: DataBuffer
|
||||||
@ -44,7 +45,7 @@ proc thread2(val: int) {.thread.} =
|
|||||||
echo "thread2: receiving "
|
echo "thread2: receiving "
|
||||||
let msg: DataBuffer = shareVal
|
let msg: DataBuffer = shareVal
|
||||||
echo "thread2: received: ", msg
|
echo "thread2: received: ", msg
|
||||||
check msg.toSeq(char) == @"hello world"
|
check string.fromBytes(msg.toSeq()) == "hello world"
|
||||||
# os.sleep(100)
|
# os.sleep(100)
|
||||||
|
|
||||||
proc runBasicTest() =
|
proc runBasicTest() =
|
||||||
@ -60,13 +61,19 @@ proc runBasicTest() =
|
|||||||
joinThreads(threads)
|
joinThreads(threads)
|
||||||
|
|
||||||
suite "Share buffer test":
|
suite "Share buffer test":
|
||||||
|
var
|
||||||
|
k1: Key
|
||||||
|
k2: Key
|
||||||
|
a: DataBuffer
|
||||||
|
b: DataBuffer
|
||||||
|
c: DataBuffer
|
||||||
|
|
||||||
setup:
|
setup:
|
||||||
let k1 {.used.} = Key.init("/a/b").get()
|
k1 = Key.init("/a/b").tryGet()
|
||||||
let k2 {.used.} = Key.init("/a").get()
|
k2 = Key.init("/a").tryGet()
|
||||||
let a {.used.} = KeyBuffer.new(k1)
|
a = DataBuffer.new($k1)
|
||||||
let b {.used.} = KeyBuffer.new(Key.init("/a/b").get)
|
b = DataBuffer.new($Key.init("/a/b").tryGet())
|
||||||
let c {.used.} = KeyBuffer.new(k2)
|
c = DataBuffer.new($k2)
|
||||||
|
|
||||||
test "creation":
|
test "creation":
|
||||||
let db = DataBuffer.new("abc")
|
let db = DataBuffer.new("abc")
|
||||||
@ -74,21 +81,27 @@ suite "Share buffer test":
|
|||||||
check db[].buf[0].char == 'a'
|
check db[].buf[0].char == 'a'
|
||||||
check db[].buf[1].char == 'b'
|
check db[].buf[1].char == 'b'
|
||||||
check db[].buf[2].char == 'c'
|
check db[].buf[2].char == 'c'
|
||||||
|
|
||||||
test "equality":
|
test "equality":
|
||||||
check a == b
|
check a == b
|
||||||
|
|
||||||
test "toString":
|
test "toString":
|
||||||
check a.toString() == "/a/b"
|
check $a == "/a/b"
|
||||||
|
|
||||||
test "hash":
|
test "hash":
|
||||||
check a.hash() == b.hash()
|
check a.hash() == b.hash()
|
||||||
|
|
||||||
test "hashes differ":
|
test "hashes differ":
|
||||||
check a.hash() != c.hash()
|
check a.hash() != c.hash()
|
||||||
|
|
||||||
test "key conversion":
|
test "key conversion":
|
||||||
check a.toKey().get() == k1
|
check Key.init(a).tryGet == k1
|
||||||
|
|
||||||
test "seq conversion":
|
test "seq conversion":
|
||||||
check a.toSeq(char) == @"/a/b"
|
check string.fromBytes(a.toSeq()) == "/a/b"
|
||||||
|
|
||||||
test "seq conversion":
|
test "seq conversion":
|
||||||
check a.toSeq(byte) == "/a/b".toBytes
|
check a.toSeq() == "/a/b".toBytes
|
||||||
|
|
||||||
test "basic thread test":
|
test "basic thread test":
|
||||||
runBasicTest()
|
runBasicTest()
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user