@@ -12,7 +12,7 @@ import java.util.concurrent.{TimeUnit, TimeoutException, Executors => JExecutors
1212
1313import scala .collection .mutable
1414import scala .io .Source
15- import scala .util .{Random , Try , Failure => TryFailure , Success => TrySuccess }
15+ import scala .util .{Random , Try , Failure => TryFailure , Success => TrySuccess , Using }
1616import scala .util .control .NonFatal
1717import scala .util .matching .Regex
1818
@@ -654,33 +654,35 @@ trait ParallelTesting extends RunnerOrchestration { self =>
654654 val errorMap = new HashMap [String , Integer ]()
655655 var expectedErrors = 0
656656 files.filter(_.getName.endsWith(" .scala" )).foreach { file =>
657- Source .fromFile(file, " UTF-8" ).getLines().zipWithIndex.foreach { case (line, lineNbr) =>
658- val errors = line.toSeq.sliding(" // error" .length).count(_.unwrap == " // error" )
659- if (errors > 0 )
660- errorMap.put(s " ${file.getPath}: $lineNbr" , errors)
661-
662- val noposErrors = line.toSeq.sliding(" // nopos-error" .length).count(_.unwrap == " // nopos-error" )
663- if (noposErrors > 0 ) {
664- val nopos = errorMap.get(" nopos" )
665- val existing : Integer = if (nopos eq null ) 0 else nopos
666- errorMap.put(" nopos" , noposErrors + existing)
667- }
657+ Using (Source .fromFile(file, " UTF-8" )) { source =>
658+ source.getLines.zipWithIndex.foreach { case (line, lineNbr) =>
659+ val errors = line.toSeq.sliding(" // error" .length).count(_.unwrap == " // error" )
660+ if (errors > 0 )
661+ errorMap.put(s " ${file.getPath}: $lineNbr" , errors)
662+
663+ val noposErrors = line.toSeq.sliding(" // nopos-error" .length).count(_.unwrap == " // nopos-error" )
664+ if (noposErrors > 0 ) {
665+ val nopos = errorMap.get(" nopos" )
666+ val existing : Integer = if (nopos eq null ) 0 else nopos
667+ errorMap.put(" nopos" , noposErrors + existing)
668+ }
668669
669- val anyposErrors = line.toSeq.sliding(" // anypos-error" .length).count(_.unwrap == " // anypos-error" )
670- if (anyposErrors > 0 ) {
671- val anypos = errorMap.get(" anypos" )
672- val existing : Integer = if (anypos eq null ) 0 else anypos
673- errorMap.put(" anypos" , anyposErrors + existing)
674- }
670+ val anyposErrors = line.toSeq.sliding(" // anypos-error" .length).count(_.unwrap == " // anypos-error" )
671+ if (anyposErrors > 0 ) {
672+ val anypos = errorMap.get(" anypos" )
673+ val existing : Integer = if (anypos eq null ) 0 else anypos
674+ errorMap.put(" anypos" , anyposErrors + existing)
675+ }
675676
676- val possibleTypos = List (" //error" -> " // error" , " //nopos-error" -> " // nopos-error" , " //anypos-error" -> " // anypos-error" )
677- for ((possibleTypo, expected) <- possibleTypos) {
678- if (line.contains(possibleTypo))
679- echo(s " Warning: Possible typo in error tag in file ${file.getCanonicalPath}: $lineNbr: found ` $possibleTypo` but expected ` $expected` " )
680- }
677+ val possibleTypos = List (" //error" -> " // error" , " //nopos-error" -> " // nopos-error" , " //anypos-error" -> " // anypos-error" )
678+ for ((possibleTypo, expected) <- possibleTypos) {
679+ if (line.contains(possibleTypo))
680+ echo(s " Warning: Possible typo in error tag in file ${file.getCanonicalPath}: $lineNbr: found ` $possibleTypo` but expected ` $expected` " )
681+ }
681682
682- expectedErrors += anyposErrors + noposErrors + errors
683- }
683+ expectedErrors += anyposErrors + noposErrors + errors
684+ }
685+ }.get
684686 }
685687
686688 (errorMap, expectedErrors)
0 commit comments