65 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			65 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|  | /* | ||
|  |  Copyright 2012-2015, Yahoo Inc. | ||
|  |  Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms. | ||
|  |  */ | ||
|  | 'use strict'; | ||
|  | 
 | ||
|  | /** | ||
|  |  * istanbul-lib-coverage exports an API that allows you to create and manipulate | ||
|  |  * file coverage, coverage maps (a set of file coverage objects) and summary | ||
|  |  * coverage objects. File coverage for the same file can be merged as can | ||
|  |  * entire coverage maps. | ||
|  |  * | ||
|  |  * @module Exports | ||
|  |  */ | ||
|  | const CoverageSummary = require('./lib/file').CoverageSummary; | ||
|  | const FileCoverage = require('./lib/file').FileCoverage; | ||
|  | const CoverageMap = require('./lib/coverage-map').CoverageMap; | ||
|  | 
 | ||
|  | module.exports = { | ||
|  |     /** | ||
|  |      * creates a coverage summary object | ||
|  |      * @param {Object} obj an argument with the same semantics | ||
|  |      *  as the one passed to the `CoverageSummary` constructor | ||
|  |      * @returns {CoverageSummary} | ||
|  |      */ | ||
|  |     createCoverageSummary(obj) { | ||
|  |         if (obj && obj instanceof CoverageSummary) { | ||
|  |             return obj; | ||
|  |         } | ||
|  |         return new CoverageSummary(obj); | ||
|  |     }, | ||
|  |     /** | ||
|  |      * creates a CoverageMap object | ||
|  |      * @param {Object} obj optional - an argument with the same semantics | ||
|  |      *  as the one passed to the CoverageMap constructor. | ||
|  |      * @returns {CoverageMap} | ||
|  |      */ | ||
|  |     createCoverageMap(obj) { | ||
|  |         if (obj && obj instanceof CoverageMap) { | ||
|  |             return obj; | ||
|  |         } | ||
|  |         return new CoverageMap(obj); | ||
|  |     }, | ||
|  |     /** | ||
|  |      * creates a FileCoverage object | ||
|  |      * @param {Object} obj optional - an argument with the same semantics | ||
|  |      *  as the one passed to the FileCoverage constructor. | ||
|  |      * @returns {FileCoverage} | ||
|  |      */ | ||
|  |     createFileCoverage(obj) { | ||
|  |         if (obj && obj instanceof FileCoverage) { | ||
|  |             return obj; | ||
|  |         } | ||
|  |         return new FileCoverage(obj); | ||
|  |     } | ||
|  | }; | ||
|  | 
 | ||
|  | /** classes exported for reuse */ | ||
|  | module.exports.classes = { | ||
|  |     /** | ||
|  |      * the file coverage constructor | ||
|  |      */ | ||
|  |     FileCoverage | ||
|  | }; |