Merge remote-tracking branch 'upstream/devel' into test-6434
This commit is contained in:
commit
e4fa1c81cb
8 changed files with 65 additions and 28 deletions
|
|
@ -1,13 +1,31 @@
|
|||
discard """
|
||||
output: '''
|
||||
tfailedassert_stacktrace.nim(16) tfailedassert_stacktrace
|
||||
tfailedassert_stacktrace.nim(15) foo
|
||||
system.nim(3778) failedAssertImpl
|
||||
system.nim(3771) raiseAssert
|
||||
system.nim(2818) sysFatal
|
||||
'''
|
||||
output: '''true'''
|
||||
"""
|
||||
|
||||
const expected = """
|
||||
tfailedassert_stacktrace.nim(34) tfailedassert_stacktrace
|
||||
tfailedassert_stacktrace.nim(33) foo
|
||||
system.nim(*) failedAssertImpl
|
||||
system.nim(*) raiseAssert
|
||||
system.nim(*) sysFatal"""
|
||||
|
||||
proc tmatch(x, p: string): bool =
|
||||
var i = 0
|
||||
var k = 0
|
||||
while i < p.len:
|
||||
if p[i] == '*':
|
||||
let oldk = k
|
||||
while k < x.len and x[k] in {'0'..'9'}: inc k
|
||||
# no digit skipped?
|
||||
if oldk == k: return false
|
||||
inc i
|
||||
elif k < x.len and p[i] == x[k]:
|
||||
inc i
|
||||
inc k
|
||||
else:
|
||||
return false
|
||||
while k < x.len and x[k] in {' ', '\L', '\C'}: inc k
|
||||
result = i >= p.len and k >= x.len
|
||||
|
||||
|
||||
try:
|
||||
|
|
@ -16,4 +34,5 @@ try:
|
|||
foo()
|
||||
except AssertionError:
|
||||
let e = getCurrentException()
|
||||
echo e.getStackTrace
|
||||
let trace = e.getStackTrace
|
||||
echo tmatch(trace, expected)
|
||||
|
|
|
|||
|
|
@ -6,12 +6,14 @@ string 3'''
|
|||
# bug #5532
|
||||
import os, asyncfile, asyncdispatch
|
||||
|
||||
removeFile("test.txt")
|
||||
let f = openAsync("test.txt", fmWrite)
|
||||
const F = "test_async.txt"
|
||||
|
||||
removeFile(F)
|
||||
let f = openAsync(F, fmWrite)
|
||||
var futs = newSeq[Future[void]]()
|
||||
for i in 1..3:
|
||||
futs.add(f.write("string " & $i & "\n"))
|
||||
waitFor(all(futs))
|
||||
f.close()
|
||||
echo readFile("test.txt")
|
||||
echo readFile(F)
|
||||
|
||||
|
|
|
|||
10
tests/ccgbugs/t8967.nim
Normal file
10
tests/ccgbugs/t8967.nim
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
discard """
|
||||
targets: "c cpp"
|
||||
"""
|
||||
|
||||
import marshal
|
||||
|
||||
let orig: set[char] = {'A'..'Z'}
|
||||
let m = $$orig
|
||||
let old = to[set[char]](m)
|
||||
doAssert orig - old == {}
|
||||
Loading…
Add table
Add a link
Reference in a new issue