Skip to content

Commit 7c8cd1c

Browse files
committed
Add coverage for age method
1 parent 1106a9e commit 7c8cd1c

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
require "spec_helper"
2+
require "timecop"
3+
4+
RSpec.describe TenYearsRails::GemInfo do
5+
let(:release_date) { Time.utc(2019, 7, 6, 0, 0, 0) }
6+
let(:now) { Time.utc(2019, 7, 6, 12, 0, 0) }
7+
let(:spec) do
8+
Gem::Specification.new do |s|
9+
s.date = release_date
10+
end
11+
end
12+
13+
subject { TenYearsRails::GemInfo.new(spec) }
14+
15+
describe "#age" do
16+
around do |example|
17+
Timecop.travel(now) do
18+
example.run
19+
end
20+
end
21+
22+
context "when ActionView is available" do
23+
it "returns a time ago" do
24+
expect(subject.age).to eq("about 12 hours ago")
25+
end
26+
end
27+
28+
context "when ActionView is not available" do
29+
let(:result) { now.strftime("%b %e, %Y") }
30+
31+
before do
32+
subject.instance_eval('undef :time_ago_in_words')
33+
end
34+
35+
it "returns a date" do
36+
expect(subject.age).to eq(result)
37+
end
38+
end
39+
end
40+
end

0 commit comments

Comments
 (0)