reports/Builder__CoverageReportFormat.st
changeset 192 c1bb8ec592e1
parent 186 b53f4cc947e1
child 193 9171e507b523
--- a/reports/Builder__CoverageReportFormat.st	Fri Jul 05 18:15:04 2013 +0200
+++ b/reports/Builder__CoverageReportFormat.st	Mon Jul 29 01:40:21 2013 +0200
@@ -192,22 +192,24 @@
     firstLineNr := (info lineAndColumnOfOffset: firstCharOffset) x.
     lastLineNr := (info lineAndColumnOfOffset: firstCharOffset + method source size) x.
 
-    lines := Array new: lastLineNr - firstLineNr + 1 withAll: method methodInvocationInfo count.
+    lines := Array new: lastLineNr - firstLineNr + 1 withAll: nil.
 
-
-    (method blockInvocationInfo copy sort:[:a :b | a startPosition < b startPosition]) do:[:eachBlockInfo |
+    (method statementInvocationInfo copy sort:[:a :b | a startPosition < b startPosition]) do:[:eachBlockInfo |
         | startLine endLine |
 
         startLine := (info lineAndColumnOfOffset: firstCharOffset + eachBlockInfo startPosition - 1) x.
         endLine := (info lineAndColumnOfOffset: firstCharOffset + eachBlockInfo endPosition - 1) x.
         startLine to: endLine do:[:lineNr|
-            lines at: (lineNr - firstLineNr + 1) put: ((lines at: (lineNr - firstLineNr + 1)) min: eachBlockInfo count)
+            (lines at: (lineNr - firstLineNr + 1)) isNil ifTrue:[
+                lines at: (lineNr - firstLineNr + 1) put: (eachBlockInfo count)
+            ] ifFalse:[
+                lines at: (lineNr - firstLineNr + 1) put: ((lines at: (lineNr - firstLineNr + 1)) min: eachBlockInfo count)
+            ]
         ]            
     ].
-
     1 to: lines size do:[:i|
-        self writeLine: (i + firstLineNr - 1) hits: (lines at: i) on: stream.
-        self writeLine: (i + firstLineNr - 1) hits: (lines at: i) on: currentClassLinesBuffer.
+        self writeLine: (i + firstLineNr - 1) hits: ((lines at: i) ? 0) on: stream.
+        self writeLine: (i + firstLineNr - 1) hits: ((lines at: i) ? 0) on: currentClassLinesBuffer.
     ].
 
     currentMethod := nil.
@@ -215,7 +217,7 @@
     stream nextPutLine:'        </method>'
 
     "Created: / 25-06-2013 / 13:17:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-    "Modified: / 28-06-2013 / 01:59:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 29-07-2013 / 00:35:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 writePackage: packageName with: aBlock