Travis.DurationCalculations = Ember.Mixin.create
  duration: (->
    if @get('notStarted')
      null
    else if duration = @get('_duration')
      duration
    else
      Travis.Helpers.durationFrom(@get('startedAt'), @get('finishedAt'))
  ).property('_duration', 'finishedAt', 'startedAt', 'notStarted')

  updateTimes: ->
    unless @get('isFinished')
      @notifyPropertyChange '_duration'
      @notifyPropertyChange 'finished_at'
