Skip to content

Commit 7f1c306

Browse files
committed
Add tests for in_last_12_months scope
1 parent 6bb50a1 commit 7f1c306

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

spec/models/distribution_spec.rb

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,34 @@
139139
end
140140
end
141141

142+
describe "in_last_12_months >" do
143+
context "when the current date is December 31, 2023" do
144+
before do
145+
travel_to Time.zone.local(2023, 12, 31)
146+
end
147+
148+
after do
149+
travel_back
150+
end
151+
152+
it "includes distributions issued within the last 12 months" do
153+
included_distribution = create(:distribution, organization: organization, issued_at: Time.zone.local(2023, 1, 1))
154+
excluded_distribution = create(:distribution, organization: organization, issued_at: Time.zone.local(2022, 12, 30))
155+
distributions = Distribution.in_last_12_months
156+
expect(distributions).to include(included_distribution)
157+
expect(distributions).not_to include(excluded_distribution)
158+
end
159+
160+
it "includes distributions up to the current date and excludes future ones" do
161+
current_distribution = create(:distribution, organization: organization, issued_at: Time.zone.local(2023, 12, 31))
162+
future_distribution = create(:distribution, organization: organization, issued_at: Time.zone.local(2024, 1, 1))
163+
distributions = Distribution.in_last_12_months
164+
expect(distributions).to include(current_distribution)
165+
expect(distributions).not_to include(future_distribution)
166+
end
167+
end
168+
end
169+
142170
describe "by_item_id >" do
143171
it "only returns distributions with given item id" do
144172
# create 2 items with unique ids

0 commit comments

Comments
 (0)