Потеря минут при округлении до ближайшего часа - PullRequest
0 голосов
/ 13 сентября 2018

У меня есть функция, которая округляет момент obj до ближайшего часа

  var date = Math.round(moment.duration(moment(startDate).diff(moment())).asHours());

Мой тест проверил бы, если startDate теперь

  it('checks if startDate is due now', function () {
      var project1 = mockProject1[1]
      moment().add(30, 'm').format('YYYY-MM-DDTHH:mm:ss') + 'Z';

      var controller = $controller('MyController', {});
      $rootScope.$digest();
      expect(controller.project[3].startDate).toEqual('Due in: < 1h');
  });

Проблема в том, что когда я сравниваюдата начала до настоящего момента и округление до ближайшего часа теряет минуты, а дата отключается на 35 минут в моем случае.

Если я добавляю что-то между 0 и 35 минутами, нет проблем, это выводит проект, который должен быть выполнен сейчас,но если это значение от 35 до 60 минут, это не так.Пол и потолок не сработают,

1 Ответ

0 голосов
/ 13 сентября 2018

Вы должны сравнить две даты с данными минут, чтобы получить правильный результат.

...