class RSpec::HaveReadonlyQueryMatcher::HaveReadonlyQuery
Public Instance Methods
description()
click to toggle source
# File lib/rspec/have_readonly_query_matcher/have_readonly_query.rb, line 21 def description "have only read queries" end
failure_message()
click to toggle source
# File lib/rspec/have_readonly_query_matcher/have_readonly_query.rb, line 25 def failure_message "expected have only read queries" end
failure_message_when_negated()
click to toggle source
# File lib/rspec/have_readonly_query_matcher/have_readonly_query.rb, line 29 def failure_message_when_negated "expected not have only read queries" end
matches?(given_proc)
click to toggle source
# File lib/rspec/have_readonly_query_matcher/have_readonly_query.rb, line 4 def matches?(given_proc) read_queries = [] callback = lambda { |name, start, finish, id, payload| if payload[:sql] =~ /^(SELECT|SET|SHOW|DESCRIBE)\b/ read_queries << true else read_queries << false end } ActiveSupport::Notifications.subscribed callback, 'sql.active_record' do given_proc.call end read_queries.all? end
supports_block_expectations?()
click to toggle source
# File lib/rspec/have_readonly_query_matcher/have_readonly_query.rb, line 33 def supports_block_expectations? true end