Namespace
Methods
- D
- N
- S
- T
Class Public methods
new()
Link
Instance Public methods
debug(str)
Link
setup()
Link
# File activerecord/test/cases/bind_parameter_test.rb, line 22 def setup super @connection = ActiveRecord::Base.connection @subscriber = LogListener.new @pk = Topic.columns_hash[Topic.primary_key] @subscription = ActiveSupport::Notifications.subscribe('sql.active_record', @subscriber) end
test_bind_from_join_in_subquery()
Link
test_binds_are_logged()
Link
# File activerecord/test/cases/bind_parameter_test.rb, line 42 def test_binds_are_logged sub = Arel::Nodes::BindParam.new binds = [Relation::QueryAttribute.new("id", 1, Type::Value.new)] sql = "select * from topics where id = #{sub.to_sql}" @connection.exec_query(sql, 'SQL', binds) message = @subscriber.calls.find { |args| args[4][:sql] == sql } assert_equal binds, message[4][:binds] end
test_find_one_uses_binds()
Link
test_logs_bind_vars_after_type_cast()
Link
# File activerecord/test/cases/bind_parameter_test.rb, line 59 def test_logs_bind_vars_after_type_cast payload = { :name => 'SQL', :sql => 'select * from topics where id = ?', :binds => [Relation::QueryAttribute.new("id", "10", Type::Integer.new)] } event = ActiveSupport::Notifications::Event.new( 'foo', Time.now, Time.now, 123, payload) logger = Class.new(ActiveRecord::LogSubscriber) { attr_reader :debugs def initialize super @debugs = [] end def debug str @debugs << str end }.new logger.sql event assert_match([[@pk.name, 10]].inspect, logger.debugs.first) end