mirror of
https://github.com/internetee/registry.git
synced 2025-06-06 20:55:44 +02:00
51 lines
No EOL
1.5 KiB
Ruby
51 lines
No EOL
1.5 KiB
Ruby
require 'test_helper'
|
|
|
|
class DiscardDomainTaskTest < TaskTestCase
|
|
setup do
|
|
travel_to Time.zone.parse('2010-07-05 08:00')
|
|
@domain = domains(:shop)
|
|
end
|
|
|
|
def test_discard_domains_with_past_delete_at
|
|
@domain.update!(delete_at: Time.zone.parse('2010-07-05 07:59'))
|
|
Rake::Task['domain:discard'].execute
|
|
@domain.reload
|
|
assert @domain.discarded?
|
|
end
|
|
|
|
def test_ignore_domains_with_delete_at_in_the_future_or_now
|
|
@domain.update!(delete_at: Time.zone.parse('2010-07-05 08:00'))
|
|
Rake::Task['domain:discard'].execute
|
|
@domain.reload
|
|
refute @domain.discarded?
|
|
end
|
|
|
|
def test_ignore_already_discarded_domains
|
|
@domain.update!(delete_at: Time.zone.parse('2010-07-05 07:59'))
|
|
@domain.discard
|
|
|
|
job_count = lambda do
|
|
QueJob.where("args->>0 = '#{@domain.id}'", job_class: DomainDeleteJob.name).count
|
|
end
|
|
|
|
assert_no_difference job_count, 'A domain should not be discarded again' do
|
|
Rake::Task['domain:discard'].execute
|
|
end
|
|
end
|
|
|
|
def test_ignore_domains_with_server_delete_prohibited_status
|
|
@domain.update!(delete_at: Time.zone.parse('2010-07-05 07:59'),
|
|
statuses: [DomainStatus::SERVER_DELETE_PROHIBITED])
|
|
Rake::Task['domain:discard'].execute
|
|
@domain.reload
|
|
refute @domain.discarded?
|
|
end
|
|
|
|
def test_show_results
|
|
@domain.update!(delete_at: Time.zone.parse('2010-07-05 07:59'))
|
|
$stdout = StringIO.new
|
|
|
|
Rake::Task['domain:discard'].execute
|
|
assert_equal "shop.test is discarded\nDiscarded total: 1\n", $stdout.string
|
|
end
|
|
end |