[backport:1.4] JS cstring null fixes (#16979)
* [backport:1.4] JS cstring null fixes * fix JS move string * make it look cleaner
This commit is contained in:
parent
f3c39bf2d9
commit
81533a0014
5 changed files with 69 additions and 8 deletions
|
|
@ -71,12 +71,35 @@ block: # `$`(SomeInteger)
|
|||
testType int64
|
||||
testType BiggestInt
|
||||
|
||||
block: # #14350 for JS
|
||||
block: # #14350, #16674, #16686 for JS
|
||||
var cstr: cstring
|
||||
doAssert cstr == cstring(nil)
|
||||
doAssert cstr == nil
|
||||
doAssert cstr.isNil
|
||||
doAssert cstr != cstring("")
|
||||
doAssert cstr.len == 0
|
||||
|
||||
when defined(js):
|
||||
cstr.add(cstring("abc"))
|
||||
doAssert cstr == cstring("abc")
|
||||
|
||||
var nil1, nil2: cstring = nil
|
||||
|
||||
nil1.add(nil2)
|
||||
doAssert nil1 == cstring(nil)
|
||||
doAssert nil2 == cstring(nil)
|
||||
|
||||
nil1.add(cstring(""))
|
||||
doAssert nil1 == cstring("")
|
||||
doAssert nil2 == cstring(nil)
|
||||
|
||||
nil1.add(nil2)
|
||||
doAssert nil1 == cstring("")
|
||||
doAssert nil2 == cstring(nil)
|
||||
|
||||
nil2.add(nil1)
|
||||
doAssert nil1 == cstring("")
|
||||
doAssert nil2 == cstring("")
|
||||
|
||||
|
||||
proc main()=
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue