From 74b385a36bed0b3184d35d8821f11bc47801665f Mon Sep 17 00:00:00 2001 From: olegphenomenon Date: Tue, 7 Dec 2021 14:02:22 +0200 Subject: [PATCH] added tests --- app/jobs/nameserver_record_validation_job.rb | 9 +++---- .../nameserver_record_validation_job_test.rb | 25 +++++++++++++++++++ 2 files changed, 29 insertions(+), 5 deletions(-) create mode 100644 test/jobs/nameserver_record_validation_job_test.rb diff --git a/app/jobs/nameserver_record_validation_job.rb b/app/jobs/nameserver_record_validation_job.rb index 90160d283..cbc935250 100644 --- a/app/jobs/nameserver_record_validation_job.rb +++ b/app/jobs/nameserver_record_validation_job.rb @@ -5,10 +5,12 @@ class NameserverRecordValidationJob < ApplicationJob def perform(nameserver = nil) if nameserver.nil? Nameserver.all.map do |nameserver| - validate(nameserver) + result = validate(nameserver) + inform_to_registrar(nameserver) unless result end else - rvalidate(nameserver) + result = validate(nameserver) + inform_to_registrar(nameserver) unless result end end @@ -16,10 +18,7 @@ class NameserverRecordValidationJob < ApplicationJob def validate(nameserver) return true if Resolv.getaddress nameserver.hostname - - inform_to_registrar(nameserver) rescue Resolv::ResolvError - inform_to_registrar(nameserver) false end diff --git a/test/jobs/nameserver_record_validation_job_test.rb b/test/jobs/nameserver_record_validation_job_test.rb new file mode 100644 index 000000000..ceafe462f --- /dev/null +++ b/test/jobs/nameserver_record_validation_job_test.rb @@ -0,0 +1,25 @@ +require 'test_helper' + +class NameserverRecordValidationJobTest < ActiveSupport::TestCase + include ActionMailer::TestHelper + + setup do + @nameserver = nameservers(:shop_ns1) + end + + def test_nameserver_should_send_notification_if_nameserver_is_failed + Spy.on_instance_method(NameserverRecordValidationJob, :validate).and_return(false) + + assert_difference 'Notification.count' do + NameserverRecordValidationJob.perform_now(@nameserver) + end + end + + def test_nameserver_should_not_send_notification_if_nameserver_is_correct + Spy.on_instance_method(NameserverRecordValidationJob, :validate).and_return(true) + + assert_no_difference 'Notification.count' do + NameserverRecordValidationJob.perform_now(@nameserver) + end + end +end