From 843662821ddbf2d06aa2da72ce32717cebecb7c6 Mon Sep 17 00:00:00 2001 From: Robert Speicher Date: Wed, 13 Jan 2016 11:46:32 -0500 Subject: [PATCH] Move `BroadcastMessage#status` to a helper since it's presentational --- app/helpers/broadcast_messages_helper.rb | 10 ++++++++++ app/models/broadcast_message.rb | 10 ---------- .../admin/broadcast_messages/index.html.haml | 2 +- .../helpers/broadcast_messages_helper_spec.rb | 20 +++++++++++++++++++ spec/models/broadcast_message_spec.rb | 20 ------------------- 5 files changed, 31 insertions(+), 31 deletions(-) diff --git a/app/helpers/broadcast_messages_helper.rb b/app/helpers/broadcast_messages_helper.rb index 44bb09b74f4..1ed8c710f77 100644 --- a/app/helpers/broadcast_messages_helper.rb +++ b/app/helpers/broadcast_messages_helper.rb @@ -21,4 +21,14 @@ module BroadcastMessagesHelper style end + + def broadcast_message_status(broadcast_message) + if broadcast_message.active? + 'Active' + elsif broadcast_message.ended? + 'Expired' + else + 'Pending' + end + end end diff --git a/app/models/broadcast_message.rb b/app/models/broadcast_message.rb index 188545f9ae5..61119633717 100644 --- a/app/models/broadcast_message.rb +++ b/app/models/broadcast_message.rb @@ -40,14 +40,4 @@ class BroadcastMessage < ActiveRecord::Base def ended? ends_at < Time.zone.now end - - def status - if active? - 'Active' - elsif ended? - 'Expired' - else - 'Pending' - end - end end diff --git a/app/views/admin/broadcast_messages/index.html.haml b/app/views/admin/broadcast_messages/index.html.haml index 6c72b28ee0c..3c4ef4fe428 100644 --- a/app/views/admin/broadcast_messages/index.html.haml +++ b/app/views/admin/broadcast_messages/index.html.haml @@ -23,7 +23,7 @@ - @broadcast_messages.each do |message| %tr %td - = message.status + = broadcast_message_status(message) %td = broadcast_message(message) %td diff --git a/spec/helpers/broadcast_messages_helper_spec.rb b/spec/helpers/broadcast_messages_helper_spec.rb index 0fb8a7284f3..157cc4665a2 100644 --- a/spec/helpers/broadcast_messages_helper_spec.rb +++ b/spec/helpers/broadcast_messages_helper_spec.rb @@ -37,4 +37,24 @@ describe BroadcastMessagesHelper do to match('background-color: #f2dede; color: #b94a48') end end + + describe 'broadcast_message_status' do + it 'returns Active' do + message = build(:broadcast_message) + + expect(helper.broadcast_message_status(message)).to eq 'Active' + end + + it 'returns Expired' do + message = build(:broadcast_message, :expired) + + expect(helper.broadcast_message_status(message)).to eq 'Expired' + end + + it 'returns Pending' do + message = build(:broadcast_message, :future) + + expect(helper.broadcast_message_status(message)).to eq 'Pending' + end + end end diff --git a/spec/models/broadcast_message_spec.rb b/spec/models/broadcast_message_spec.rb index 57550725ae3..f6f84db57e6 100644 --- a/spec/models/broadcast_message_spec.rb +++ b/spec/models/broadcast_message_spec.rb @@ -111,24 +111,4 @@ describe BroadcastMessage, models: true do end end end - - describe '#status' do - it 'returns Active' do - message = build(:broadcast_message) - - expect(message.status).to eq 'Active' - end - - it 'returns Expired' do - message = build(:broadcast_message, :expired) - - expect(message.status).to eq 'Expired' - end - - it 'returns Pending' do - message = build(:broadcast_message, :future) - - expect(message.status).to eq 'Pending' - end - end end