Fix Video Duration to include hours (#3572)

This commit is contained in:
Bolarinwa Balogun 2019-07-30 09:10:49 -04:00 committed by Ben Halpern
parent b90cd8812b
commit 7f125f18df
2 changed files with 14 additions and 1 deletions

View file

@ -429,7 +429,10 @@ class Article < ApplicationRecord
minutes = (video_duration_in_seconds.to_i / 60) % 60
seconds = video_duration_in_seconds.to_i % 60
seconds = "0#{seconds}" if seconds.to_s.size == 1
"#{minutes}:#{seconds}"
hours = (video_duration_in_seconds.to_i / 3600)
minutes = "0#{minutes}" if hours.positive? && minutes < 10
hours < 1 ? "#{minutes}:#{seconds}" : "#{hours}:#{minutes}:#{seconds}"
end
def fetch_video_duration

View file

@ -251,6 +251,16 @@ RSpec.describe Article, type: :model do
article.video_duration_in_seconds = 1161
expect(article.video_duration_in_minutes).to eq("19:21")
end
it "has video_duration_in_minutes display hour when video is an hour or longer" do
article.video_duration_in_seconds = 3600
expect(article.video_duration_in_minutes).to eq("1:00:00")
end
it "has correctly non-padded minutes with hour in video_duration_in_minutes" do
article.video_duration_in_seconds = 5000
expect(article.video_duration_in_minutes).to eq("1:23:20")
end
end
describe ".seo_boostable" do