Code coverage report for src/components/qa/exercise-card.cjsx

Statements: 34.62% (9 / 26)      Branches: 0% (0 / 2)      Functions: 0% (0 / 5)      Lines: 34.62% (9 / 26)      Ignored: none     

All files » src/components/qa/ » exercise-card.cjsx
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                                                                                                                
var Exercise, ExerciseCard, ExerciseStore, React, String, _, classnames;
 
_ = require('underscore');
 
React = require('react');
 
classnames = require('classnames');
 
ExerciseStore = require('../../flux/exercise').ExerciseStore;
 
String = require('../../helpers/string');
 
ExerciseCard = require('../exercise-card');
 
Exercise = React.createClass({displayName: "Exercise",
  propTypes: {
    exercise: React.PropTypes.object.isRequired,
    ignoredPoolTypes: React.PropTypes.object.isRequired
  },
  renderHeader: function() {
    var className, pool;
    return React.createElement("div", {
      "className": 'pools'
    }, (function() {
      var i, len, ref, results;
      ref = ExerciseStore.poolTypes(this.props.exercise);
      results = [];
      for (i = 0, len = ref.length; i < len; i++) {
        pool = ref[i];
        className = classnames(pool, {
          'is-ignored': this.props.ignoredPoolTypes[pool]
        });
        results.push(React.createElement("span", {
          "key": pool,
          "className": className
        }, String.titleize(pool)));
      }
      return results;
    }).call(this));
  },
  render: function() {
    var editUrl;
    if (_.every(ExerciseStore.poolTypes(this.props.exercise), (function(_this) {
      return function(pt) {
        return _this.props.ignoredPoolTypes[pt];
      };
    })(this))) {
      return null;
    }
    editUrl = this.props.exercise.url.replace(/@\d+/, '@draft');
    return React.createElement(ExerciseCard, React.__spread({}, this.props, {
      "header": this.renderHeader(),
      "displayAllTags": true,
      "displayFeedback": true
    }), React.createElement("a", {
      "target": "_blank",
      "className": "edit-link",
      "href": editUrl
    }, "edit"));
  }
});
 
module.exports = Exercise;