v7
This commit is contained in:
		
							
								
								
									
										54
									
								
								node_modules/istanbul-reports/lib/teamcity/index.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								node_modules/istanbul-reports/lib/teamcity/index.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,54 @@
 | 
			
		||||
/*
 | 
			
		||||
 Copyright 2012-2015, Yahoo Inc.
 | 
			
		||||
 Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.
 | 
			
		||||
 */
 | 
			
		||||
'use strict';
 | 
			
		||||
 | 
			
		||||
function TeamcityReport(opts) {
 | 
			
		||||
    opts = opts || {};
 | 
			
		||||
    this.file = opts.file || null;
 | 
			
		||||
    this.blockName = opts.blockName || 'Code Coverage Summary';
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function lineForKey(value, teamcityVar) {
 | 
			
		||||
    return (
 | 
			
		||||
        "##teamcity[buildStatisticValue key='" +
 | 
			
		||||
        teamcityVar +
 | 
			
		||||
        "' value='" +
 | 
			
		||||
        value +
 | 
			
		||||
        "']"
 | 
			
		||||
    );
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
TeamcityReport.prototype.onStart = function(node, context) {
 | 
			
		||||
    const metrics = node.getCoverageSummary();
 | 
			
		||||
    const cw = context.writer.writeFile(this.file);
 | 
			
		||||
 | 
			
		||||
    cw.println('');
 | 
			
		||||
    cw.println("##teamcity[blockOpened name='" + this.blockName + "']");
 | 
			
		||||
 | 
			
		||||
    //Statements Covered
 | 
			
		||||
    cw.println(
 | 
			
		||||
        lineForKey(metrics.statements.covered, 'CodeCoverageAbsBCovered')
 | 
			
		||||
    );
 | 
			
		||||
    cw.println(lineForKey(metrics.statements.total, 'CodeCoverageAbsBTotal'));
 | 
			
		||||
 | 
			
		||||
    //Branches Covered
 | 
			
		||||
    cw.println(lineForKey(metrics.branches.covered, 'CodeCoverageAbsRCovered'));
 | 
			
		||||
    cw.println(lineForKey(metrics.branches.total, 'CodeCoverageAbsRTotal'));
 | 
			
		||||
 | 
			
		||||
    //Functions Covered
 | 
			
		||||
    cw.println(
 | 
			
		||||
        lineForKey(metrics.functions.covered, 'CodeCoverageAbsMCovered')
 | 
			
		||||
    );
 | 
			
		||||
    cw.println(lineForKey(metrics.functions.total, 'CodeCoverageAbsMTotal'));
 | 
			
		||||
 | 
			
		||||
    //Lines Covered
 | 
			
		||||
    cw.println(lineForKey(metrics.lines.covered, 'CodeCoverageAbsLCovered'));
 | 
			
		||||
    cw.println(lineForKey(metrics.lines.total, 'CodeCoverageAbsLTotal'));
 | 
			
		||||
 | 
			
		||||
    cw.println("##teamcity[blockClosed name='" + this.blockName + "']");
 | 
			
		||||
    cw.close();
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
module.exports = TeamcityReport;
 | 
			
		||||
		Reference in New Issue
	
	Block a user