tsendtwice test: make it arch-independent
This commit is contained in:
parent
0fc42fc4f7
commit
c644bf399f
1 changed files with 13 additions and 13 deletions
|
|
@ -1,11 +1,11 @@
|
|||
discard """
|
||||
output: '''obj2 @[]
|
||||
obj @[]
|
||||
obj3 @[]
|
||||
3
|
||||
output: '''ob @[]
|
||||
ob3 @[]
|
||||
obj2 @[]
|
||||
obj @[]
|
||||
obj3 @[]'''
|
||||
3
|
||||
ob @[]
|
||||
ob3 @[]
|
||||
ob2 @[]'''
|
||||
cmd: "nim c -r --threads:on $file"
|
||||
"""
|
||||
|
||||
|
|
@ -30,24 +30,24 @@ type
|
|||
var globalTable {.threadvar.}: TableRef[string, Base]
|
||||
globalTable = newTable[string, Base]()
|
||||
let d = new(Derived)
|
||||
globalTable.add("obj", d)
|
||||
globalTable.add("obj2", d)
|
||||
globalTable.add("obj3", d)
|
||||
globalTable.add("ob", d)
|
||||
globalTable.add("ob2", d)
|
||||
globalTable.add("ob3", d)
|
||||
|
||||
proc testThread(channel: ptr TableChannel) {.thread.} =
|
||||
globalTable = channel[].recv()
|
||||
for k, v in pairs globaltable:
|
||||
echo k, " ", v.someSeq
|
||||
var myObj: Base
|
||||
deepCopy(myObj, globalTable["obj"])
|
||||
deepCopy(myObj, globalTable["ob"])
|
||||
myObj.someSeq = newSeq[int](100)
|
||||
let table = channel[].recv() # same table
|
||||
echo table.len
|
||||
for k, v in mpairs table:
|
||||
echo k, " ", v.someSeq
|
||||
assert(table.contains("obj")) # fails!
|
||||
assert(table.contains("obj2")) # fails!
|
||||
assert(table.contains("obj3")) # fails!
|
||||
assert(table.contains("ob")) # fails!
|
||||
assert(table.contains("ob2")) # fails!
|
||||
assert(table.contains("ob3")) # fails!
|
||||
|
||||
var channel: TableChannel
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue