From 810b711436cd5069f5a167ee860208c312b0071c Mon Sep 17 00:00:00 2001 From: Luke Baker Date: Tue, 8 Oct 2013 10:21:20 -0400 Subject: [PATCH] update test to count invalid appearances --- app/models/appearance.rb | 6 ++++++ lib/tasks/test_api.rake | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/app/models/appearance.rb b/app/models/appearance.rb index a20989d..cea6cc9 100644 --- a/app/models/appearance.rb +++ b/app/models/appearance.rb @@ -9,4 +9,10 @@ class Appearance < ActiveRecord::Base def answered? !self.answerable_id.nil? end + + def self.count_with_exclusive_scope(*args) + with_exclusive_scope() do + count(*args) + end + end end diff --git a/lib/tasks/test_api.rake b/lib/tasks/test_api.rake index 8e2e0fc..5c56d80 100644 --- a/lib/tasks/test_api.rake +++ b/lib/tasks/test_api.rake @@ -381,7 +381,7 @@ namespace :test_api do question.expire_prompt_cache_tracking_keys(yesterday) - yesterday_appearances = question.appearances.count(:conditions => ['created_at >= ? AND created_at < ?', Time.now.utc.yesterday.midnight, Time.now.utc.midnight]) + yesterday_appearances = Appearance.count_with_exclusive_scope(:conditions => ['created_at >= ? AND created_at < ? AND question_id = ?', Time.now.utc.yesterday.midnight, Time.now.utc.midnight, question.id]) if misses + hits != yesterday_appearances error_message += "Error! Question #{question.id} isn't tracking prompt cache hits and misses accurately! Expected #{yesterday_appearances}, Actual: #{misses+hits}, Hits: #{hits}, Misses: #{misses}\n" -- libgit2 0.21.2