| Index: compiler/lib/coverage.dart
|
| diff --git a/compiler/lib/coverage.dart b/compiler/lib/coverage.dart
|
| deleted file mode 100644
|
| index cfbd1458772f6d13b85fd32b66c31a2df4a394ac..0000000000000000000000000000000000000000
|
| --- a/compiler/lib/coverage.dart
|
| +++ /dev/null
|
| @@ -1,213 +0,0 @@
|
| -// Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
|
| -// for details. All rights reserved. Use of this source code is governed by a
|
| -// BSD-style license that can be found in the LICENSE file.
|
| -
|
| -//#library("coverage");
|
| -
|
| -// Dart coverage test
|
| -class Coverage{
|
| - static Map<String, Set<String>> coveredFunctions;
|
| - static Map<String, Set<int>> coveredStatements;
|
| - static Map<String, Map<int, Set<int>>> coveredBranches;
|
| - static Set<String> loopBranchTracker;
|
| - static Map<String, int> totalFunctions, totalStatements, totalBranches;
|
| -
|
| - static void init() {
|
| - coveredFunctions = new HashMap<String, Set<String>>();
|
| - coveredStatements = new HashMap<String, Set<int>>();
|
| - coveredBranches = new HashMap<String, Map<int, Set<int>>>();
|
| - loopBranchTracker = new Set<String>();
|
| - totalFunctions = new HashMap<String, int>();
|
| - totalStatements = new HashMap<String, int>();
|
| - totalBranches = new HashMap<String, int>();
|
| - }
|
| -
|
| -}
|
| -
|
| -// Call for each Dart Unit
|
| -void setCoverageTotals(String unit, int numFunctions, int numStatements,
|
| - int numBranches) {
|
| - if(Coverage.totalFunctions == null){
|
| - Coverage.init();
|
| - }
|
| - Coverage.totalFunctions[unit] = numFunctions;
|
| - Coverage.totalStatements[unit] = numStatements;
|
| - Coverage.totalBranches[unit] = numBranches;
|
| -}
|
| -
|
| -void coverFunction(String unitName, String funcName) {
|
| - if(Coverage.coveredFunctions == null) {
|
| - Coverage.init();
|
| - }
|
| - if(Coverage.coveredFunctions[unitName] == null) {
|
| - Coverage.coveredFunctions[unitName] = new Set<String>();
|
| - }
|
| - Coverage.coveredFunctions[unitName].add(funcName);
|
| -}
|
| -
|
| -void coverStatement(String unitName, int lineNum) {
|
| - if(Coverage.coveredStatements == null) {
|
| - Coverage.init();
|
| - }
|
| - if(Coverage.coveredStatements[unitName] == null) {
|
| - Coverage.coveredStatements[unitName] = new Set<int>();
|
| - }
|
| - Coverage.coveredStatements[unitName].add(lineNum);
|
| -}
|
| -
|
| -void coverBranch(String unitName, int lineNum, int startPos) {
|
| - if(Coverage.coveredBranches == null) {
|
| - Coverage.init();
|
| - }
|
| - if(Coverage.coveredBranches[unitName] == null) {
|
| - Coverage.coveredBranches[unitName] = new HashMap<int, Set<int>>();
|
| - }
|
| - if(Coverage.coveredBranches[unitName][lineNum] == null) {
|
| - Coverage.coveredBranches[unitName][lineNum] = new Set<int>();
|
| - }
|
| - Coverage.coveredBranches[unitName][lineNum].add(startPos);
|
| -}
|
| -
|
| -void loopBranchBefore(String unitName, int lineNum, int startPos) {
|
| - Coverage.loopBranchTracker.remove('$unitName,$lineNum,$startPos');
|
| -}
|
| -
|
| -void loopBranchInside(String unitName, int lineNum, int startPos) {
|
| - Coverage.loopBranchTracker.add('$unitName,$lineNum,$startPos');
|
| -}
|
| -
|
| -void coverLoopBranch(String unitName, int lineNum, int startPos, int endPos) {
|
| - if(Coverage.coveredBranches == null) {
|
| - Coverage.init();
|
| - }
|
| - if(Coverage.coveredBranches[unitName] == null) {
|
| - Coverage.coveredBranches[unitName] = new HashMap<int, Set<int>>();
|
| - }
|
| - if(Coverage.coveredBranches[unitName][lineNum] == null) {
|
| - Coverage.coveredBranches[unitName][lineNum] = new Set<int>();
|
| - }
|
| -
|
| - if(Coverage.loopBranchTracker.contains('$unitName,$lineNum,$startPos')) {
|
| - // Branch that enters loop.
|
| - Coverage.coveredBranches[unitName][lineNum].add(startPos);
|
| - } else {
|
| - // Branch that doesn't enter loop.
|
| - Coverage.coveredBranches[unitName][lineNum].add(endPos);
|
| - }
|
| -
|
| -}
|
| -
|
| -void printCoverageSummary() {
|
| - print(getCoverageSummary());
|
| -}
|
| -
|
| -String getCoverageSummary() {
|
| - int covFunc = 0, totFunc = 0, covStmt = 0, totStmt = 0, covBr = 0, totBr = 0;
|
| - if(Coverage.totalFunctions != null) {
|
| - for(String unit in Coverage.totalFunctions.getKeys()) {
|
| - if(Coverage.coveredFunctions.containsKey(unit)) {
|
| - covFunc += Coverage.coveredFunctions[unit].length;
|
| - }
|
| - if(Coverage.totalFunctions.containsKey(unit)) {
|
| - totFunc += Coverage.totalFunctions[unit];
|
| - }
|
| - }
|
| - }
|
| -
|
| - if(Coverage.totalStatements != null) {
|
| - for(String unit in Coverage.totalStatements.getKeys()) {
|
| - if(Coverage.coveredStatements.containsKey(unit)) {
|
| - covStmt += Coverage.coveredStatements[unit].length;
|
| - }
|
| - if(Coverage.totalStatements.containsKey(unit)) {
|
| - totStmt += Coverage.totalStatements[unit];
|
| - }
|
| - }
|
| - }
|
| -
|
| - if(Coverage.totalBranches != null) {
|
| - for(String unit in Coverage.totalBranches.getKeys()) {
|
| - if(Coverage.coveredBranches.containsKey(unit)) {
|
| - Map<int, Set<int>> brn = Coverage.coveredBranches[unit];
|
| - for(int line in brn.getKeys()) {
|
| - for(int st in brn[line]) {
|
| - covBr++;
|
| - }
|
| - }
|
| - }
|
| - if(Coverage.totalBranches.containsKey(unit)) {
|
| - totBr += Coverage.totalBranches[unit];
|
| - }
|
| - }
|
| - }
|
| -
|
| - StringBuffer output = new StringBuffer('COVERAGE SUMMARY:\n');
|
| - output.add('Function Coverage = ');
|
| - output.add('$covFunc/$totFunc (${calculatePercent(covFunc,totFunc)}%)\n');
|
| - output.add('Statement Coverage = ');
|
| - output.add('$covStmt/$totStmt (${calculatePercent(covStmt,totStmt)}%)\n');
|
| - output.add('Branch Coverage = ');
|
| - output.add('$covBr/$totBr (${calculatePercent(covBr,totBr)}%)');
|
| - return output.toString();
|
| -}
|
| -
|
| -String getCoverageDetails(){
|
| - Set<String> allUnits = new HashSet<String>();
|
| - if(Coverage.totalFunctions != null) {
|
| - allUnits.addAll(Coverage.totalFunctions.getKeys());
|
| - }
|
| - if(Coverage.totalStatements != null) {
|
| - allUnits.addAll(Coverage.totalStatements.getKeys());
|
| - }
|
| - if(Coverage.totalBranches != null) {
|
| - allUnits.addAll(Coverage.totalBranches.getKeys());
|
| - }
|
| -
|
| - StringBuffer coverageDetails = new StringBuffer();
|
| - for(String unit in allUnits) {
|
| - int covFunc = 0, totFunc = 0, covStmt = 0, totStmt = 0, covBr = 0, totBr = 0;
|
| - if(Coverage.totalFunctions != null &&
|
| - Coverage.totalFunctions.containsKey(unit)) {
|
| - if(Coverage.coveredFunctions.containsKey(unit)){
|
| - covFunc = Coverage.coveredFunctions[unit].length;
|
| - }
|
| - totFunc = Coverage.totalFunctions[unit];
|
| - }
|
| - if(Coverage.totalStatements != null &&
|
| - Coverage.totalStatements.containsKey(unit)) {
|
| - if(Coverage.coveredStatements.containsKey(unit)){
|
| - covStmt = Coverage.coveredStatements[unit].length;
|
| - }
|
| - totStmt = Coverage.totalStatements[unit];
|
| - }
|
| - if(Coverage.totalBranches != null &&
|
| - Coverage.totalBranches.containsKey(unit)) {
|
| - if(Coverage.coveredBranches.containsKey(unit)){
|
| - Map<int, Set<int>> brn = Coverage.coveredBranches[unit];
|
| - for(int line in brn.getKeys()) {
|
| - for(int st in brn[line]) {
|
| - covBr++;
|
| - }
|
| - }
|
| - }
|
| - totBr = Coverage.totalBranches[unit];
|
| - }
|
| - coverageDetails.add('<tr> <td>$unit <td> $covFunc/$totFunc ');
|
| - coverageDetails.add('<td> $covStmt/$totStmt <td> $covBr/$totBr\n');
|
| - }
|
| - return coverageDetails.toString();
|
| -}
|
| -
|
| -String calculatePercent(int val, int total){
|
| - return (val/total*100).toStringAsPrecision(3);
|
| -}
|
| -
|
| -String getString(Map m){
|
| - StringBuffer o = new StringBuffer();
|
| - if(m != null) {
|
| - for(String key in m.getKeys()){
|
| - o.add('$key:${m[key]}\n');
|
| - }
|
| - }
|
| - return o.toString();
|
| -}
|
|
|