mirror of
https://github.com/nim-lang/Nim.git
synced 2026-01-08 22:13:29 +00:00
make tests green again
This commit is contained in:
@@ -59,6 +59,7 @@ build_script:
|
||||
|
||||
test_script:
|
||||
- tests\testament\tester --pedantic all -d:nimCoroutines
|
||||
- nim c -r nimdoc\tester
|
||||
# - koch csource
|
||||
# - koch zip
|
||||
|
||||
|
||||
@@ -9,7 +9,8 @@
|
||||
|
||||
## Layouter for nimpretty.
|
||||
|
||||
import idents, lexer, lineinfos, llstream, options, msgs, strutils
|
||||
import idents, lexer, lineinfos, llstream, options, msgs, strutils,
|
||||
pathutils
|
||||
from os import changeFileExt
|
||||
|
||||
const
|
||||
@@ -39,7 +40,7 @@ type
|
||||
|
||||
proc openEmitter*(em: var Emitter, cache: IdentCache;
|
||||
config: ConfigRef, fileIdx: FileIndex) =
|
||||
let fullPath = config.toFullPath(fileIdx)
|
||||
let fullPath = Absolutefile config.toFullPath(fileIdx)
|
||||
em.indWidth = getIndentWidth(fileIdx, llStreamOpen(fullPath, fmRead),
|
||||
cache, config)
|
||||
if em.indWidth == 0: em.indWidth = 2
|
||||
@@ -55,7 +56,7 @@ proc openEmitter*(em: var Emitter, cache: IdentCache;
|
||||
proc closeEmitter*(em: var Emitter) =
|
||||
var f = llStreamOpen(em.config.outFile, fmWrite)
|
||||
if f == nil:
|
||||
rawMessage(em.config, errGenerated, "cannot open file: " & em.config.outFile)
|
||||
rawMessage(em.config, errGenerated, "cannot open file: " & em.config.outFile.string)
|
||||
f.llStreamWrite em.content
|
||||
llStreamClose(f)
|
||||
|
||||
|
||||
@@ -111,11 +111,12 @@ proc canon(x: string; result: var string; state: var int) =
|
||||
# f/..
|
||||
while d > (state and 1) and result[d-1] != DirSep:
|
||||
dec d
|
||||
setLen(result, d)
|
||||
setLen(result, d-1)
|
||||
elif isDot(x, b):
|
||||
discard "discard the dot"
|
||||
else:
|
||||
if result.len > (state and 1): result.add DirSep
|
||||
elif b[1] > b[0]:
|
||||
if result.len > 0 and result[^1] != DirSep:
|
||||
result.add DirSep
|
||||
result.add substr(x, b[0], b[1])
|
||||
inc state, 2
|
||||
|
||||
@@ -253,3 +254,7 @@ when isMainModule and defined(posix):
|
||||
|
||||
doAssert AbsoluteDir"/Users/me///" / RelativeFile"z.nim" == AbsoluteFile"/Users/me/z.nim"
|
||||
doAssert relativeTo("/foo/bar.nim", "/foo/") == "bar.nim"
|
||||
|
||||
when isMainModule and defined(windows):
|
||||
let nasty = string(AbsoluteDir(r"C:\Users\rumpf\projects\nim\tests\nimble\nimbleDir\linkedPkgs\pkgB-#head\../../simplePkgs/pkgB-#head/") / RelativeFile"pkgA/module.nim")
|
||||
doAssert nasty == r"C:\Users\rumpf\projects\nim\tests\nimble\nimbleDir\simplePkgs\pkgB-#head\pkgA\module.nim"
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
when not defined(nimpretty):
|
||||
{.error: "This needs to be compiled with --define:nimPretty".}
|
||||
|
||||
import ../compiler / [idents, msgs, ast, syntaxes, renderer, options]
|
||||
import ../compiler / [idents, msgs, ast, syntaxes, renderer, options, pathutils]
|
||||
|
||||
import parseopt, strutils, os
|
||||
|
||||
@@ -42,8 +42,8 @@ proc writeVersion() =
|
||||
|
||||
proc prettyPrint(infile, outfile: string) =
|
||||
var conf = newConfigRef()
|
||||
let fileIdx = fileInfoIdx(conf, infile)
|
||||
conf.outFile = outfile
|
||||
let fileIdx = fileInfoIdx(conf, AbsoluteFile infile)
|
||||
conf.outFile = AbsoluteFile outfile
|
||||
when defined(nimpretty2):
|
||||
discard parseFile(fileIdx, newIdentCache(), conf)
|
||||
else:
|
||||
|
||||
Reference in New Issue
Block a user