all files / src/ SourceFileTreeLeaf.js

100% Statements 29/29
83.33% Branches 5/6
100% Functions 5/5
100% Lines 28/28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41  47× 47× 47× 47× 47×   36×   36× 36× 884×     870× 870×   11× 11×       36×        
"use strict";
var report_1 = require('stryker-api/report');
var HandlebarsModel_1 = require('./HandlebarsModel');
var path = require('path');
var fs = require('fs');
var util = require('./util');
var SourceFileTreeLeaf = (function () {
    function SourceFileTreeLeaf(file, results) {
        Eif (results === void 0) { results = []; }
        this.file = file;
        this.results = results;
        this.name = path.basename(file.path);
        this.filename = this.name + ".html";
    }
    SourceFileTreeLeaf.prototype.writeFileReport = function (directory) {
        fs.writeFileSync(path.join(directory, this.filename), util.sourceFileTemplate(this), 'utf8');
    };
    SourceFileTreeLeaf.prototype.calculateModel = function (urlPrefix) {
        var killed = 0, survived = 0, untested = 0;
        this.results.forEach(function (mutation) {
            switch (mutation.status) {
                case report_1.MutantStatus.KILLED:
                case report_1.MutantStatus.TIMEDOUT:
                    killed++;
                    break;
                case report_1.MutantStatus.SURVIVED:
                    survived++;
                    break;
                case report_1.MutantStatus.UNTESTED:
                    untested++;
                    break;
            }
        });
        this.model = new HandlebarsModel_1.default(this.name, urlPrefix, this.filename, killed, survived, untested);
    };
    ;
    return SourceFileTreeLeaf;
}());
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = SourceFileTreeLeaf;
//# sourceMappingURL=SourceFileTreeLeaf.js.map