mirror of
https://github.com/github/rails.git
synced 2026-04-26 03:00:59 -04:00
testing sqlbypass destroy. caching connection during destroy
This commit is contained in:
@@ -273,12 +273,13 @@ module ActiveRecord
|
||||
end
|
||||
|
||||
def destroy
|
||||
unless @new_record
|
||||
@@connection.delete <<-end_sql, 'Destroy session'
|
||||
DELETE FROM #{@@table_name}
|
||||
WHERE #{@@connection.quote_column_name(@@session_id_column)}=#{@@connection.quote(session_id)}
|
||||
end_sql
|
||||
end
|
||||
return if @new_record
|
||||
|
||||
connect = connection
|
||||
connect.delete <<-end_sql, 'Destroy session'
|
||||
DELETE FROM #{table_name}
|
||||
WHERE #{connect.quote_column_name(session_id_column)}=#{connect.quote(session_id)}
|
||||
end_sql
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -42,6 +42,15 @@ module ActiveRecord
|
||||
assert_equal s.session_id, t.session_id
|
||||
assert_equal s.data, t.data
|
||||
end
|
||||
|
||||
def test_destroy
|
||||
SqlBypass.create_table! unless Session.table_exists?
|
||||
session_id = 20
|
||||
s = SqlBypass.new :data => 'hello', :session_id => session_id
|
||||
s.save
|
||||
s.destroy
|
||||
assert_nil SqlBypass.find_by_session_id session_id
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user