mirror of
https://github.com/maybe-finance/maybe.git
synced 2025-07-19 13:19:39 +02:00
Fix auto sync trigger logic and add tests
This commit is contained in:
parent
bebe7b40d6
commit
bcb47a9d29
3 changed files with 50 additions and 3 deletions
41
test/controllers/concerns/auto_sync_test.rb
Normal file
41
test/controllers/concerns/auto_sync_test.rb
Normal file
|
@ -0,0 +1,41 @@
|
|||
require "test_helper"
|
||||
|
||||
class AutoSyncTest < ActionDispatch::IntegrationTest
|
||||
setup do
|
||||
sign_in @user = users(:family_admin)
|
||||
@family = @user.family
|
||||
|
||||
# Start fresh
|
||||
Sync.destroy_all
|
||||
end
|
||||
|
||||
test "auto-syncs family if hasn't synced" do
|
||||
assert_difference "Sync.count", 1 do
|
||||
get root_path
|
||||
end
|
||||
end
|
||||
|
||||
test "auto-syncs family if hasn't synced in last 24 hours" do
|
||||
# If request comes in at beginning of day, but last sync was 1 hour ago ("yesterday"), we still sync
|
||||
travel_to Time.current.beginning_of_day
|
||||
last_sync_datetime = 1.hour.ago
|
||||
|
||||
Sync.create!(syncable: @family, created_at: last_sync_datetime)
|
||||
|
||||
assert_difference "Sync.count", 1 do
|
||||
get root_path
|
||||
end
|
||||
end
|
||||
|
||||
test "does not auto-sync if family has synced today already" do
|
||||
travel_to Time.current.end_of_day
|
||||
|
||||
last_created_sync_at = 23.hours.ago
|
||||
|
||||
Sync.create!(syncable: @family, created_at: last_created_sync_at)
|
||||
|
||||
assert_no_difference "Sync.count" do
|
||||
get root_path
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue