aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--activerecord/test/cases/helper.rb14
1 files changed, 8 insertions, 6 deletions
diff --git a/activerecord/test/cases/helper.rb b/activerecord/test/cases/helper.rb
index c62a172a1c..b750a03fba 100644
--- a/activerecord/test/cases/helper.rb
+++ b/activerecord/test/cases/helper.rb
@@ -65,20 +65,22 @@ module ActiveRecord
# ignored SQL. This ignored SQL is for Oracle.
ignored_sql.concat [/^select .*nextval/i, /^SAVEPOINT/, /^ROLLBACK TO/, /^\s*select .* from all_triggers/im]
- cattr_accessor :ignored_sql_regexp
- self.ignored_sql_regexp = Regexp.union ignored_sql
-
cattr_accessor :log
self.log = []
+ attr_reader :ignore
+
+ def initialize(ignore = Regexp.union(self.class.ignored_sql))
+ @ignore = ignore
+ end
+
def call(name, start, finish, message_id, values)
sql = values[:sql]
# FIXME: this seems bad. we should probably have a better way to indicate
# the query was cached
- unless 'CACHE' == values[:name]
- self.class.log << sql unless self.class.ignored_sql_regexp =~ sql
- end
+ return if 'CACHE' == values[:name] || ignore =~ sql
+ self.class.log << sql
end
end