Fix purge_date format to fast/soft forcedelete domains

This commit is contained in:
Alex Sherman 2020-01-21 18:49:09 +05:00
parent a9ce9dba51
commit 363a74248f
2 changed files with 31 additions and 2 deletions

View file

@ -93,8 +93,8 @@ module Concerns::Domain::ForceDelete # rubocop:disable Metrics/ModuleLength
end end
def purge_date def purge_date
force_delete_date || valid_to + Setting.expire_warning_period.days + (force_delete_date&.beginning_of_day || valid_to + Setting.expire_warning_period.days +
Setting.redemption_grace_period.days + 1.day Setting.redemption_grace_period.days)
end end
private private

View file

@ -152,6 +152,35 @@ class NewDomainForceDeleteTest < ActiveSupport::TestCase
assert_empty @domain.statuses & statuses assert_empty @domain.statuses & statuses
end end
def test_hard_force_delete_should_have_outzone_and_purge_date_with_time
@domain.schedule_force_delete(type: :fast_track)
@domain.reload
assert_equal(@domain.purge_date.to_date, @domain.force_delete_date)
assert_equal(@domain.outzone_date.to_date, @domain.force_delete_start.to_date +
Setting.expire_warning_period.days)
assert(@domain.purge_date.is_a?(ActiveSupport::TimeWithZone))
assert(@domain.outzone_date.is_a?(ActiveSupport::TimeWithZone))
end
def test_soft_force_delete_year_ahead_should_have_outzone_and_purge_date_with_time
@domain.update(valid_to: Time.zone.parse('2012-08-05'))
@domain.update(template_name: 'legal_person')
travel_to Time.zone.parse('2010-07-05')
@domain.schedule_force_delete(type: :soft)
travel_to Time.zone.parse('2010-08-21')
DomainCron.start_client_hold
@domain.reload
assert_equal(@domain.purge_date.to_date, @domain.force_delete_date.to_date)
assert_equal(@domain.outzone_date.to_date, @domain.force_delete_start.to_date +
Setting.expire_warning_period.days)
assert(@domain.purge_date.is_a?(ActiveSupport::TimeWithZone))
assert(@domain.outzone_date.is_a?(ActiveSupport::TimeWithZone))
end
def test_force_delete_soft_year_ahead_sets_client_hold def test_force_delete_soft_year_ahead_sets_client_hold
asserted_status = DomainStatus::CLIENT_HOLD asserted_status = DomainStatus::CLIENT_HOLD