mirror of
https://github.com/nim-lang/Nim.git
synced 2025-12-29 09:24:36 +00:00
* clean up some test categories * mention exact slice issue * magics into system * move trangechecks into overflow * move tmemory to system * try fix CI * try fix CI * final CI fix
109 lines
2.5 KiB
Nim
109 lines
2.5 KiB
Nim
|
|
mode = ScriptMode.Whatif
|
|
|
|
exec "gcc -v"
|
|
|
|
--define:release
|
|
|
|
--forceBuild
|
|
--path: "../generics"
|
|
|
|
warning("uninit", off)
|
|
|
|
block: # supported syntaxes for hint,warning,switch
|
|
--hint:processing
|
|
hint("processing", on)
|
|
hint("processing", off)
|
|
switch("hint", "processing")
|
|
switch("hint", "processing:on")
|
|
switch("hint", "processing:off")
|
|
switch("hint", "[processing]")
|
|
switch("hint", "[processing]:on")
|
|
switch("hint", "[processing]:off") # leave it off
|
|
|
|
--warning:UnusedImport
|
|
switch("warning", "UnusedImport:off")
|
|
switch("warning", "UnusedImport:on")
|
|
switch("warning", "[UnusedImport]:off")
|
|
switch("warning", "[UnusedImport]:on")
|
|
switch("warning", "[UnusedImport]")
|
|
switch("warning", "UnusedImport") # leave it on
|
|
|
|
#--verbosity:2
|
|
patchFile("stdlib", "math", "mymath")
|
|
|
|
task listDirs, "lists every subdirectory":
|
|
for x in listDirs("."):
|
|
echo "DIR ", x
|
|
|
|
task default, "default target":
|
|
--define: definedefine
|
|
setCommand "c"
|
|
|
|
# bug #6327
|
|
doAssert(existsEnv("dummy") == false)
|
|
|
|
# issue #7283
|
|
putEnv("dummy", "myval")
|
|
doAssert(existsEnv("dummy"))
|
|
doAssert(getEnv("dummy") == "myval")
|
|
delEnv("dummy")
|
|
doAssert(existsEnv("dummy") == false)
|
|
|
|
# issue #7393
|
|
let wd = getCurrentDir()
|
|
cd("..")
|
|
doAssert wd != getCurrentDir()
|
|
cd(wd)
|
|
doAssert wd == getCurrentDir()
|
|
|
|
when false:
|
|
# this doesn't work in a 'koch testintall' environment
|
|
doAssert findExe("nim") != ""
|
|
|
|
# general tests
|
|
mode = ScriptMode.Verbose
|
|
|
|
doAssert getCommand() == "c"
|
|
setCommand("cpp")
|
|
doAssert getCommand() == "cpp"
|
|
setCommand("c")
|
|
|
|
doAssert cmpic("HeLLO", "hello") == 0
|
|
|
|
doAssert fileExists("tests/newconfig/tfoo.nims") == true
|
|
doAssert dirExists("tests") == true
|
|
|
|
doAssert fileExists("tests/newconfig/tfoo.nims") == true
|
|
doAssert dirExists("tests") == true
|
|
|
|
discard selfExe()
|
|
|
|
when defined(windows):
|
|
doAssert toExe("nim") == "nim.exe"
|
|
doAssert toDll("nim") == "nim.dll"
|
|
else:
|
|
doAssert toExe("nim") == "nim"
|
|
doAssert toDll("nim") == "libnim.so"
|
|
|
|
rmDir("tempXYZ")
|
|
doAssertRaises(OSError):
|
|
rmDir("tempXYZ", checkDir = true)
|
|
doAssert dirExists("tempXYZ") == false
|
|
mkDir("tempXYZ")
|
|
doAssert dirExists("tempXYZ") == true
|
|
doAssert fileExists("tempXYZ/koch.nim") == false
|
|
|
|
when false:
|
|
# this doesn't work in a 'koch testintall' environment
|
|
cpFile("koch.nim", "tempXYZ/koch.nim")
|
|
doAssert fileExists("tempXYZ/koch.nim") == true
|
|
cpDir("nimsuggest", "tempXYZ/.")
|
|
doAssert dirExists("tempXYZ/tests") == true
|
|
doAssert fileExists("tempXYZ/nimsuggest.nim") == true
|
|
rmFile("tempXYZ/koch.nim")
|
|
doAssert fileExists("tempXYZ/koch.nim") == false
|
|
|
|
rmDir("tempXYZ")
|
|
doAssert dirExists("tempXYZ") == false
|