aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/health_checks/checks/incoming_message_check.rb12
-rw-r--r--lib/health_checks/checks/outgoing_message_check.rb12
-rw-r--r--lib/health_checks/checks/user_signup_check.rb12
-rw-r--r--spec/lib/health_checks/checks/incoming_message_check_spec.rb26
-rw-r--r--spec/lib/health_checks/checks/outgoing_message_check_spec.rb32
-rw-r--r--spec/lib/health_checks/checks/user_signup_check_spec.rb26
6 files changed, 120 insertions, 0 deletions
diff --git a/lib/health_checks/checks/incoming_message_check.rb b/lib/health_checks/checks/incoming_message_check.rb
new file mode 100644
index 000000000..fb6d36e25
--- /dev/null
+++ b/lib/health_checks/checks/incoming_message_check.rb
@@ -0,0 +1,12 @@
+module HealthChecks
+ module Checks
+ class IncomingMessageCheck
+ include HealthChecks::HealthCheckable
+
+ def check
+ IncomingMessage.last.created_at >= 1.day.ago
+ end
+
+ end
+ end
+end
diff --git a/lib/health_checks/checks/outgoing_message_check.rb b/lib/health_checks/checks/outgoing_message_check.rb
new file mode 100644
index 000000000..26feb538b
--- /dev/null
+++ b/lib/health_checks/checks/outgoing_message_check.rb
@@ -0,0 +1,12 @@
+module HealthChecks
+ module Checks
+ class OutgoingMessageCheck
+ include HealthChecks::HealthCheckable
+
+ def check
+ OutgoingMessage.last.created_at >= 1.day.ago
+ end
+
+ end
+ end
+end
diff --git a/lib/health_checks/checks/user_signup_check.rb b/lib/health_checks/checks/user_signup_check.rb
new file mode 100644
index 000000000..0c775332c
--- /dev/null
+++ b/lib/health_checks/checks/user_signup_check.rb
@@ -0,0 +1,12 @@
+module HealthChecks
+ module Checks
+ class UserSignupCheck
+ include HealthChecks::HealthCheckable
+
+ def check
+ User.last.created_at >= 1.day.ago
+ end
+
+ end
+ end
+end
diff --git a/spec/lib/health_checks/checks/incoming_message_check_spec.rb b/spec/lib/health_checks/checks/incoming_message_check_spec.rb
new file mode 100644
index 000000000..8d6105925
--- /dev/null
+++ b/spec/lib/health_checks/checks/incoming_message_check_spec.rb
@@ -0,0 +1,26 @@
+require File.expand_path(File.dirname(__FILE__) + '/../../../spec_helper')
+
+describe HealthChecks::Checks::IncomingMessageCheck do
+ include HealthChecks::Checks
+
+ it { should be_kind_of(HealthChecks::HealthCheckable) }
+
+ before(:each) do
+ @check = HealthChecks::Checks::IncomingMessageCheck.new
+ end
+
+ describe :check do
+
+ it 'is successful if the last incoming message was created in the last day' do
+ FactoryGirl.create(:incoming_message)
+ expect(@check.check).to be_true
+ end
+
+ it 'fails if the last incoming message was created over a day ago' do
+ FactoryGirl.create(:incoming_message, :created_at => 28.days.ago)
+ expect(@check.check).to be_false
+ end
+
+ end
+
+end \ No newline at end of file
diff --git a/spec/lib/health_checks/checks/outgoing_message_check_spec.rb b/spec/lib/health_checks/checks/outgoing_message_check_spec.rb
new file mode 100644
index 000000000..74c0f30b9
--- /dev/null
+++ b/spec/lib/health_checks/checks/outgoing_message_check_spec.rb
@@ -0,0 +1,32 @@
+require File.expand_path(File.dirname(__FILE__) + '/../../../spec_helper')
+
+describe HealthChecks::Checks::OutgoingMessageCheck do
+ include HealthChecks::Checks
+
+ it { should be_kind_of(HealthChecks::HealthCheckable) }
+
+ before(:each) do
+ @check = HealthChecks::Checks::OutgoingMessageCheck.new
+ end
+
+ describe :check do
+
+ it 'is successful if the last incoming message was created in the last day' do
+ FactoryGirl.create(:info_request)
+ expect(@check.check).to be_true
+ end
+
+ it 'fails if the last incoming message was created over a day ago' do
+ params = { :status => 'ready',
+ :message_type => 'followup',
+ :body => 'I want a review',
+ :what_doing => 'internal_review',
+ :info_request => FactoryGirl.create(:info_request),
+ :created_at => 30.days.ago }
+ FactoryGirl.create(:outgoing_message, params)
+ expect(@check.check).to be_false
+ end
+
+ end
+
+end \ No newline at end of file
diff --git a/spec/lib/health_checks/checks/user_signup_check_spec.rb b/spec/lib/health_checks/checks/user_signup_check_spec.rb
new file mode 100644
index 000000000..b18684454
--- /dev/null
+++ b/spec/lib/health_checks/checks/user_signup_check_spec.rb
@@ -0,0 +1,26 @@
+require File.expand_path(File.dirname(__FILE__) + '/../../../spec_helper')
+
+describe HealthChecks::Checks::UserSignupCheck do
+ include HealthChecks::Checks
+
+ it { should be_kind_of(HealthChecks::HealthCheckable) }
+
+ before(:each) do
+ @check = HealthChecks::Checks::UserSignupCheck.new
+ end
+
+ describe :check do
+
+ it 'is successful if the last user was created in the last day' do
+ FactoryGirl.create(:user)
+ expect(@check.check).to be_true
+ end
+
+ it 'fails if the last user was created over a day ago' do
+ FactoryGirl.create(:user, :created_at => 28.days.ago)
+ expect(@check.check).to be_false
+ end
+
+ end
+
+end \ No newline at end of file