Created
April 23, 2014 03:25
-
-
Save JuanitoFatas/11201897 to your computer and use it in GitHub Desktop.
Active Record no_touching should bypass after_touch callback. rails/rails #14841
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| unless File.exist?('Gemfile') | |
| File.write('Gemfile', <<-GEMFILE) | |
| source 'https://rubygems.org' | |
| gem 'rails', github: 'rails/rails' | |
| gem 'sqlite3' | |
| GEMFILE | |
| system 'bundle' | |
| end | |
| require 'bundler' | |
| Bundler.setup(:default) | |
| require 'active_record' | |
| require 'minitest/autorun' | |
| require 'logger' | |
| # This connection will do for database-independent bug reports. | |
| ActiveRecord::Base.establish_connection(adapter: 'sqlite3', database: ':memory:') | |
| ActiveRecord::Base.logger = Logger.new(STDOUT) | |
| ActiveRecord::Schema.define do | |
| create_table :users do |t| | |
| t.timestamps | |
| end | |
| end | |
| class User < ActiveRecord::Base | |
| after_touch do |user| | |
| puts "You have touched an object" | |
| end | |
| end | |
| class BugTest < Minitest::Test | |
| def test_no_touching_should_bypass_after_touch_callback | |
| user = User.create | |
| User.no_touching do | |
| user.touch | |
| end | |
| end | |
| end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment