Code coverage report for 6to5/transformers/property-method-assignment.js

Statements: 100% (16 / 16)      Branches: 100% (8 / 8)      Functions: 100% (3 / 3)      Lines: 100% (14 / 14)      Ignored: none     

All files » 6to5/transformers/ » property-method-assignment.js
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 281 1 1   1 91     1 51   51 75 4 4   71       51   3          
var util = require("../util");
var b    = require("ast-types").builders;
var _    = require("lodash");
 
exports.Property = function (node) {
  if (node.method) node.method = false;
};
 
exports.ObjectExpression = function (node) {
  var mutatorMap = {};
 
  node.properties = node.properties.filter(function (prop) {
    if (prop.kind === "get" || prop.kind === "set") {
      util.pushMutatorMap(mutatorMap, prop.key.name, prop.kind, prop.value);
      return false;
    } else {
      return true;
    }
  });
 
  if (_.isEmpty(mutatorMap)) return;
 
  return util.template("object-define-properties-closure", {
    OBJECT: node,
    CONTENT: util.buildDefineProperties(mutatorMap, b.identifier("obj")).expression
  });
};