summary refs log tree commit diff stats
path: root/tools/nimsuggest/tester.nim
diff options
context:
space:
mode:
authorAndreas Rumpf <rumpf_a@web.de>2017-02-07 10:43:33 +0100
committerAndreas Rumpf <rumpf_a@web.de>2017-02-07 10:43:33 +0100
commitd7e312ee135b18d8f95750fb2bc94c80c7e13d04 (patch)
treea57603e103f5aa8fe95c735b26928442cf61c660 /tools/nimsuggest/tester.nim
parenteb9efed64bcff6fca07b008f6183f84f0560e0de (diff)
downloadNim-d7e312ee135b18d8f95750fb2bc94c80c7e13d04.tar.gz
nimsuggest works in macros
Diffstat (limited to 'tools/nimsuggest/tester.nim')
-rw-r--r--tools/nimsuggest/tester.nim12
1 files changed, 10 insertions, 2 deletions
diff --git a/tools/nimsuggest/tester.nim b/tools/nimsuggest/tester.nim
index c90afe3db..156d3ddb9 100644
--- a/tools/nimsuggest/tester.nim
+++ b/tools/nimsuggest/tester.nim
@@ -161,8 +161,16 @@ proc runTest(filename: string): int =
           answer.add '\L'
         if resp != answer and not smartCompare(resp, answer):
           report.add "\nTest failed: " & filename
-          report.add "\n  Expected:  " & resp
-          report.add "\n  But got:   " & answer
+          var hasDiff = false
+          for i in 0..min(resp.len-1, answer.len-1):
+            if resp[i] != answer[i]:
+              report.add "\n  Expected:  " & resp.substr(i)
+              report.add "\n  But got:   " & answer.substr(i)
+              hasDiff = true
+              break
+          if not hasDiff:
+            report.add "\n  Expected:  " & resp
+            report.add "\n  But got:   " & answer
   finally:
     inp.writeLine("quit")
     inp.flush()
n> """ errormsg: "cannot instantiate B" nimout: ''' got: <typedesc[string]> but expected: <T: A> ''' """ type A = concept c advance(c) B[T: A] = object child: ref B[T] proc advance(x: int): int = x + 1 var a: B[int] var b: B[string]