Add basic tuple and value fetching from queries.
Add safeties for =destroy hooks. FossilOrigin-Name: 2fae5297a0d0598cc3580777688b4f4307de008d4f379d2fb224c8a74cb9b708
This commit is contained in:
parent
1ed442a68a
commit
7850a79372
14 changed files with 237 additions and 17 deletions
19
tests/queries/t_can_iterate_tuples.nim
Normal file
19
tests/queries/t_can_iterate_tuples.nim
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
# vim: set et sta sw=4 ts=4 :
|
||||
|
||||
discard """
|
||||
output: "Camel\nLampshade\nDelicious Cake\n"
|
||||
"""
|
||||
|
||||
import kuzu
|
||||
|
||||
let db = newKuzuDatabase()
|
||||
let conn = db.connect
|
||||
|
||||
var q = conn.query( "CREATE NODE TABLE Doop ( id SERIAL, thing STRING, PRIMARY KEY(id) )" )
|
||||
|
||||
for thing in @[ "Camel", "Lampshade", "Delicious Cake" ]:
|
||||
q = conn.query( "CREATE (d:Doop {thing: '" & thing & "'})" )
|
||||
|
||||
for tpl in conn.query( "MATCH (d:Doop) RETURN d.thing" ):
|
||||
echo $tpl
|
||||
|
||||
17
tests/queries/t_can_stringify_results.nim
Normal file
17
tests/queries/t_can_stringify_results.nim
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
# vim: set et sta sw=4 ts=4 :
|
||||
|
||||
discard """
|
||||
output: "d.thing\nokay!\n\n"
|
||||
"""
|
||||
|
||||
import kuzu
|
||||
|
||||
let db = newKuzuDatabase()
|
||||
let conn = db.connect
|
||||
|
||||
var q = conn.query( "CREATE NODE TABLE Doop ( id SERIAL, thing STRING, PRIMARY KEY(id) )" )
|
||||
q = conn.query( "CREATE (d:Doop {thing: 'okay!'})" )
|
||||
q = conn.query( "MATCH (d:Doop) RETURN d.thing" )
|
||||
|
||||
echo $q
|
||||
|
||||
24
tests/queries/t_knows_if_there_are_waiting_tuples.nim
Normal file
24
tests/queries/t_knows_if_there_are_waiting_tuples.nim
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
# vim: set et sta sw=4 ts=4 :
|
||||
|
||||
import kuzu
|
||||
|
||||
let db = newKuzuDatabase()
|
||||
let conn = db.connect
|
||||
|
||||
var q = conn.query( "CREATE NODE TABLE Doop ( id SERIAL, thing STRING, PRIMARY KEY(id) )" )
|
||||
assert typeOf( q ) is KuzuQueryResult
|
||||
|
||||
q = conn.query( "MATCH (d:Doop) RETURN d.thing" )
|
||||
assert q.num_tuples == 0
|
||||
assert q.hasNext == false
|
||||
|
||||
q = conn.query( "CREATE (d:Doop {thing: 'okay!'})" )
|
||||
q = conn.query( "MATCH (d:Doop) RETURN d.thing" )
|
||||
assert q.num_tuples == 1
|
||||
assert q.hasNext == true
|
||||
|
||||
discard $q # consume the tuple result
|
||||
|
||||
assert q.num_tuples == 1
|
||||
assert q.hasNext == false
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue