From 2997ece1036f5f4e9f5fea9e7ef42816372433b2 Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Fri, 30 Nov 2018 16:43:25 +0200 Subject: [PATCH] Bypass validation --- .../regenerate_registrar_reference_numbers.rake | 4 +--- .../regenerate_registrar_reference_numbers_test.rb | 11 +++++++++++ 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/lib/tasks/data_migrations/regenerate_registrar_reference_numbers.rake b/lib/tasks/data_migrations/regenerate_registrar_reference_numbers.rake index aff296d83..6f6aaebe2 100644 --- a/lib/tasks/data_migrations/regenerate_registrar_reference_numbers.rake +++ b/lib/tasks/data_migrations/regenerate_registrar_reference_numbers.rake @@ -6,9 +6,7 @@ namespace :data_migrations do Registrar.all.each do |registrar| next unless registrar.reference_no.start_with?('RF') - registrar.reference_no = Billing::ReferenceNo.generate - registrar.save! - + registrar.update_columns(reference_no: Billing::ReferenceNo.generate) processed_registrar_count += 1 end end diff --git a/test/integration/tasks/data_migrations/regenerate_registrar_reference_numbers_test.rb b/test/integration/tasks/data_migrations/regenerate_registrar_reference_numbers_test.rb index 7700b3fb6..c496cd95b 100644 --- a/test/integration/tasks/data_migrations/regenerate_registrar_reference_numbers_test.rb +++ b/test/integration/tasks/data_migrations/regenerate_registrar_reference_numbers_test.rb @@ -11,6 +11,17 @@ class RegenerateRegistrarReferenceNumbersTaskTest < ActiveSupport::TestCase assert_not registrar.reference_no.start_with?('RF') end + def test_bypasses_registrar_validation + registrar = registrars(:invalid) + registrar.update_column(:reference_no, 'RF1111') + assert registrar.invalid? + + capture_io { run_task } + registrar.reload + + assert_not registrar.reference_no.start_with?('RF') + end + def test_does_not_regenerate_when_the_task_is_run_again registrar = registrars(:bestnames) registrar.update!(reference_no: '1111')