From b8790cc9255b5c6e0da44be7ef230910b848c944 Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Wed, 19 Oct 2016 02:04:26 +0300 Subject: [PATCH] Record current time when putting domain into "on hold" status #182 --- app/models/domain.rb | 1 + spec/models/domain_spec.rb | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/app/models/domain.rb b/app/models/domain.rb index 032164e25..6c1287461 100644 --- a/app/models/domain.rb +++ b/app/models/domain.rb @@ -699,6 +699,7 @@ class Domain < ActiveRecord::Base def set_server_hold statuses << DomainStatus::SERVER_HOLD + self.on_hold_time = Time.current end # rubocop: disable Metrics/CyclomaticComplexity diff --git a/spec/models/domain_spec.rb b/spec/models/domain_spec.rb index cddb9141b..6a1ad9b35 100644 --- a/spec/models/domain_spec.rb +++ b/spec/models/domain_spec.rb @@ -926,3 +926,22 @@ describe Domain do end end end + +RSpec.describe Domain, db: false do + describe '#set_server_hold' do + let(:domain) { described_class.new } + + before :example do + travel_to Time.zone.parse('05.07.2010') + domain.set_server_hold + end + + it 'sets corresponding status' do + expect(domain.statuses).to include(DomainStatus::SERVER_HOLD) + end + + it 'sets :on_hold_time to now' do + expect(domain.on_hold_time).to eq(Time.zone.parse('05.07.2010')) + end + end +end