Code coverage report for src/components/student-dashboard/event-info-icon.cjsx

Statements: 100% (15 / 15)      Branches: 85.71% (6 / 7)      Functions: 100% (1 / 1)      Lines: 100% (15 / 15)      Ignored: none     

All files » src/components/student-dashboard/ » event-info-icon.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                       168× 168× 168× 168× 165×                    
var BS, React, S, TimeStore, moment;
 
React = require('react');
 
BS = require('react-bootstrap');
 
S = require('../../helpers/string');
 
TimeStore = require('../../flux/time').TimeStore;
 
moment = require('moment');
 
module.exports = React.createClass({
  displayName: 'EventInfoIcon',
  propTypes: {
    event: React.PropTypes.object.isRequired
  },
  render: function() {
    var due, now, status, tooltip;
    due = moment(this.props.event.due_at);
    now = TimeStore.getNow();
    if (this.props.event.type !== 'homework' || this.props.event.complete_exercise_count === this.props.event.exercise_count || due.isAfter(now, 'd')) {
      return null;
    }
    status = due.isSame(now, 'd') ? 'incomplete' : 'late';
    tooltip = React.createElement(BS.Tooltip, null, React.createElement("b", null, S.capitalize(status)));
    return React.createElement(BS.OverlayTrigger, {
      "placement": 'top',
      "overlay": tooltip
    }, React.createElement("i", {
      "className": "info " + status
    }));
  }
});