all files / src/ imageContainer.js

91.41% Statements 117/128
65.22% Branches 15/23
100% Functions 18/18
91.94% Lines 114/124
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 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182       990×                               495× 495× 495× 495× 495× 495× 495×     455× 455× 455× 455× 308× 308× 308× 308× 308×   147× 147×   455× 455×     455× 455× 455× 455×         455× 455× 455× 455× 455× 28× 28× 28× 28× 28×   455× 455×         11× 11× 11×     30× 30× 30×     21× 21× 21× 21× 21× 21× 37× 37× 37×   21× 21×     20× 20× 20× 20× 20× 20×               51× 51× 51× 51× 51×         45× 45× 45×     42× 42× 42× 42× 42× 42×         42× 42×   42× 42×                    
Iif (typeof _$jscoverage === 'undefined') _$jscoverage = {};
(function(_export) {
    Iif (typeof _export._$jscoverage === 'undefined') {
        _export._$jscoverage = _$jscoverage;
    }
})(typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : this);
Eif (! _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"]) { _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"] = {"path":"/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee","s":{"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0},"b":{"1":[0,0],"2":[0,0],"3":[0,0],"4":[0,0],"5":[0,0]},"f":{"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0},"fnMap":{"1":{"name":"ImageContainer","line":9,"loc":{"start":{"line":9,"column":0},"end":{"line":66,"column":75}},"decl":{"start":{"line":9,"column":6},"end":{"line":9,"column":19}}},"2":{"name":"constructor","line":10,"loc":{"start":{"line":10,"column":15},"end":{"line":11,"column":19}},"decl":{"start":{"line":10,"column":2},"end":{"line":10,"column":42}}},"3":{"name":"this","line":14,"loc":{"start":{"line":14,"column":20},"end":{"line":27,"column":26}},"decl":{"start":{"line":14,"column":2},"end":{"line":14,"column":44}}},"4":{"name":"(anonymous_1)","line":19,"loc":{"start":{"line":19,"column":42},"end":{"line":27,"column":26}},"decl":{"start":{"line":19,"column":42},"end":{"line":19,"column":79}}},"5":{"name":"(anonymous_2)","line":24,"loc":{"start":{"line":24,"column":42},"end":{"line":26,"column":35}},"decl":{"start":{"line":24,"column":42},"end":{"line":24,"column":43}}},"6":{"name":"this","line":29,"loc":{"start":{"line":29,"column":26},"end":{"line":30,"column":18}},"decl":{"start":{"line":29,"column":2},"end":{"line":29,"column":27}}},"7":{"name":"this","line":32,"loc":{"start":{"line":32,"column":27},"end":{"line":33,"column":33}},"decl":{"start":{"line":32,"column":2},"end":{"line":32,"column":28}}},"8":{"name":"this","line":35,"loc":{"start":{"line":35,"column":21},"end":{"line":39,"column":6}},"decl":{"start":{"line":35,"column":2},"end":{"line":35,"column":22}}},"9":{"name":"source","line":41,"loc":{"start":{"line":41,"column":10},"end":{"line":45,"column":16}},"decl":{"start":{"line":41,"column":2},"end":{"line":41,"column":11}}},"10":{"name":"cleanup","line":48,"loc":{"start":{"line":48,"column":11},"end":{"line":50,"column":18}},"decl":{"start":{"line":48,"column":2},"end":{"line":48,"column":12}}},"11":{"name":"size","line":53,"loc":{"start":{"line":53,"column":8},"end":{"line":54,"column":26}},"decl":{"start":{"line":53,"column":2},"end":{"line":53,"column":9}}},"12":{"name":"dimensions","line":58,"loc":{"start":{"line":58,"column":14},"end":{"line":59,"column":20}},"decl":{"start":{"line":58,"column":2},"end":{"line":58,"column":20}}},"13":{"name":"normalDimension","line":63,"loc":{"start":{"line":63,"column":19},"end":{"line":66,"column":75}},"decl":{"start":{"line":63,"column":2},"end":{"line":63,"column":25}}},"14":{"name":"(anonymous_3)","line":64,"loc":{"start":{"line":64,"column":16},"end":{"line":66,"column":75}},"decl":{"start":{"line":64,"column":16},"end":{"line":64,"column":29}}}},"statementMap":{"1":{"start":{"line":1,"column":0},"end":{"line":1,"column":18}},"2":{"start":{"line":2,"column":0},"end":{"line":2,"column":17}},"3":{"start":{"line":3,"column":0},"end":{"line":3,"column":17}},"4":{"start":{"line":4,"column":0},"end":{"line":4,"column":20}},"5":{"start":{"line":5,"column":0},"end":{"line":5,"column":29}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":14}},"7":{"start":{"line":9,"column":0},"end":{"line":66,"column":75}},"8":{"start":{"line":11,"column":4},"end":{"line":11,"column":19}},"9":{"start":{"line":15,"column":4},"end":{"line":17,"column":84}},"10":{"start":{"line":16,"column":6},"end":{"line":16,"column":27}},"11":{"start":{"line":17,"column":6},"end":{"line":17,"column":84}},"12":{"start":{"line":17,"column":21},"end":{"line":17,"column":83}},"13":{"start":{"line":17,"column":22},"end":{"line":17,"column":22}},"14":{"start":{"line":17,"column":42},"end":{"line":17,"column":66}},"15":{"start":{"line":17,"column":71},"end":{"line":17,"column":71}},"16":{"start":{"line":19,"column":4},"end":{"line":27,"column":26}},"17":{"start":{"line":20,"column":6},"end":{"line":23,"column":39}},"18":{"start":{"line":21,"column":8},"end":{"line":21,"column":20}},"19":{"start":{"line":23,"column":8},"end":{"line":23,"column":39}},"20":{"start":{"line":24,"column":8},"end":{"line":26,"column":35}},"21":{"start":{"line":25,"column":10},"end":{"line":25,"column":26}},"22":{"start":{"line":26,"column":10},"end":{"line":26,"column":35}},"23":{"start":{"line":27,"column":8},"end":{"line":27,"column":26}},"24":{"start":{"line":30,"column":4},"end":{"line":30,"column":18}},"25":{"start":{"line":33,"column":4},"end":{"line":33,"column":33}},"26":{"start":{"line":36,"column":4},"end":{"line":36,"column":11}},"27":{"start":{"line":37,"column":4},"end":{"line":38,"column":15}},"28":{"start":{"line":38,"column":6},"end":{"line":38,"column":15}},"29":{"start":{"line":39,"column":4},"end":{"line":39,"column":6}},"30":{"start":{"line":42,"column":4},"end":{"line":45,"column":16}},"31":{"start":{"line":43,"column":6},"end":{"line":43,"column":15}},"32":{"start":{"line":45,"column":6},"end":{"line":45,"column":16}},"33":{"start":{"line":49,"column":4},"end":{"line":49,"column":54}},"34":{"start":{"line":50,"column":4},"end":{"line":50,"column":18}},"35":{"start":{"line":54,"column":4},"end":{"line":54,"column":26}},"36":{"start":{"line":59,"column":4},"end":{"line":59,"column":20}},"37":{"start":{"line":64,"column":4},"end":{"line":66,"column":75}},"38":{"start":{"line":65,"column":6},"end":{"line":65,"column":26}},"39":{"start":{"line":65,"column":6},"end":{"line":65,"column":19}},"40":{"start":{"line":66,"column":6},"end":{"line":66,"column":75}},"41":{"start":{"line":66,"column":48},"end":{"line":66,"column":51}},"42":{"start":{"line":66,"column":64},"end":{"line":66,"column":67}},"43":{"start":{"line":69,"column":0},"end":{"line":69,"column":30}}},"branchMap":{"1":{"line":15,"loc":{"start":{"line":15,"column":4},"end":{"line":15,"column":4}},"type":"if","locations":[{"start":{"line":15,"column":4},"end":{"line":15,"column":4}},{"start":{"line":15,"column":4},"end":{"line":15,"column":4}}]},"2":{"line":20,"loc":{"start":{"line":20,"column":6},"end":{"line":20,"column":6}},"type":"if","locations":[{"start":{"line":20,"column":6},"end":{"line":20,"column":6}},{"start":{"line":20,"column":6},"end":{"line":20,"column":6}}]},"3":{"line":42,"loc":{"start":{"line":42,"column":4},"end":{"line":42,"column":4}},"type":"if","locations":[{"start":{"line":42,"column":4},"end":{"line":42,"column":4}},{"start":{"line":42,"column":4},"end":{"line":42,"column":4}}]},"4":{"line":65,"loc":{"start":{"line":65,"column":6},"end":{"line":65,"column":6}},"type":"if","locations":[{"start":{"line":65,"column":6},"end":{"line":65,"column":6}},{"start":{"line":65,"column":6},"end":{"line":65,"column":6}}]},"5":{"line":66,"loc":{"start":{"line":66,"column":15},"end":{"line":66,"column":15}},"type":"if","locations":[{"start":{"line":66,"column":15},"end":{"line":66,"column":15}},{"start":{"line":66,"column":15},"end":{"line":66,"column":15}}]}}} }(function() {
  var ImageContainer, callerId, containers, fs, gm, path, tmp,
    bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; };
 
  _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[1]++;
 
  tmp = require('tmp');
 
  _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[2]++;
 
  fs = require('fs');
 
  _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[3]++;
 
  gm = require('gm');
 
  _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[4]++;
 
  path = require('path');
 
  _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[5]++;
 
  callerId = require('caller-id');
 
  _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[6]++;
 
  containers = {};
 
  _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[7]++;
 
  ImageContainer = (function() {
    _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].f[1]++;
 
    function ImageContainer(path1, cleanupCallback1) {
      this.path = path1;
      this.cleanupCallback = cleanupCallback1;
      this.cleanup = bind(this.cleanup, this);
      this.source = bind(this.source, this);
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].f[2]++;
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[8]++;
      this.cleaned = false;
    }
 
    ImageContainer.fromNewTempFile = function(callback, callerName) {
      var c;
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].f[3]++;
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[9]++;
      if (!callerName) {
        _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].b[1][0]++;
        _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[10]++;
        c = callerId.getData();
        _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[11]++;
        callerName = (_$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[12]++, (_$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[13]++, c.functionName) + "() " + (_$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[14]++, path.basename(c.filePath)) + ":" + (_$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[15]++, c.lineNumber));
      } else {
        _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].b[1][1]++;
        void 0;
      }
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[16]++;
      return tmp.file({
        discardDescriptor: true
      }, function(err, newPath, fd, cleanupCallback) {
        var ret;
        _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].f[4]++;
        _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[17]++;
        Iif (err) {
          _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].b[2][0]++;
          _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[18]++;
          return callback(err);
        } else {
          _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].b[2][1]++;
          _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[19]++;
          containers[newPath] = callerName;
          _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[20]++;
          ret = new ImageContainer(newPath, function() {
            _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].f[5]++;
            _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[21]++;
            cleanupCallback();
            _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[22]++;
            return delete containers[newPath];
          });
          _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[23]++;
          return callback(null, ret);
        }
      });
    };
 
    ImageContainer.clearContainerTracker = function() {
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].f[6]++;
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[24]++;
      return containers = {};
    };
 
    ImageContainer.existingContainerCount = function() {
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].f[7]++;
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[25]++;
      return Object.keys(containers).length;
    };
 
    ImageContainer.activeContainers = function() {
      var k, ret, v;
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].f[8]++;
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[26]++;
      ret = {};
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[27]++;
      for (k in containers) {
        v = containers[k];
        _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[28]++;
        ret[k] = v;
      }
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[29]++;
      return ret;
    };
 
    ImageContainer.prototype.source = function() {
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].f[9]++;
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[30]++;
      Eif (this.path in containers) {
        _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].b[3][0]++;
        _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[31]++;
        return containers[this.path];
      } else {
        _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].b[3][1]++;
        _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[32]++;
        return "<non-tmp>";
      }
    };
 
    ImageContainer.prototype.cleanup = function() {
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].f[10]++;
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[33]++;
      this.cleanupCallback && !this.cleaned && this.cleanupCallback();
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[34]++;
      return this.cleaned = true;
    };
 
    ImageContainer.prototype.size = function() {
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].f[11]++;
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[35]++;
      return fs.statSync(this.path).size;
    };
 
    ImageContainer.prototype.dimensions = function(cb) {
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].f[12]++;
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[36]++;
      return gm(this.path).size(cb);
    };
 
    ImageContainer.prototype.normalDimension = function(cb) {
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].f[13]++;
      _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[37]++;
      return this.dimensions(function(err, dims) {
        _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].f[14]++;
        _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[38]++;
        Iif (err) {
          _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].b[4][0]++;
          _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[39]++;
          return cb(err);
        } else {
          _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].b[4][1]++;
          void 0;
        }
        _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[40]++;
        return cb(null, dims.width > dims.height ? (_$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].b[5][0]++, _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[41]++, dims.width) : (_$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].b[5][1]++, _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[42]++, dims.height));
      });
    };
 
    return ImageContainer;
 
  })();
 
  _$jscoverage["/Users/ikatz/Development/non-wayfair/macramoji/src/imageContainer.coffee"].s[43]++;
 
  module.exports = ImageContainer;
 
}).call(this);