aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/test/callbacks_test.rb
Commit message (Collapse)AuthorAgeFilesLines
...
* Fixes skipping object callback filtersBen McRedmond2013-04-041-0/+17
| | | | | | | | | | | | | | | This allows you to skip callbacks that are defined by objects, e.g. for `ActionController`: skip_after_filter MySpecialFilter Previously this didn't work due to a bug in how Rails compared callbacks in `Callback#matches?`. When a callback is compiled, if it's an object filter (i.e. not a method, proc, etc.), `Callback` now defines a method on `@klass` that is derived from the class name rather than `@callback_id`. So, when `skip_callback` tries to find the appropriate callback to remove, `Callback` can regenerate the method name for the filter object and return the correct value for `Callback#matches?`.
* Prevent callback from being set twice.Dmitriy Kiriyenko2012-12-201-5/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When you add one callack in two separate `set_callback` calls - it is only called once. When you do it in one `set_callback` call - it is called twice. This violates the principle of least astonishment for me. Duplicating callback is usually an error. There is a correct and obvious way to do anything without this "feature". If you want to do before_save :clear_balance, :calculate_tax, :clear_balance or whatever, you should better do before_save :carefully_calculate_tax def carefully_calculate_tax clear_balance calculate_tax clear_balance end And this even opens gates for some advanced refactorings, unlike the first approach. My assumptions are: - Principle of least astonishment is violated, when callbacks are either prevented from duplication, or not. - Duplicating callbacks is usually an error. When it is intentional - it's a smell of a bad design and can be approached without abusing this "feature". My suggestion is: do not allow duplicating callbacks in one callback call, like it is not allowed in separate callbacks call.
* Cleanup trailing whitespacesdfens2012-10-121-1/+1
|
* AS::Callbacks#run_callbacks remove key argumentFrancesco Rodriguez2012-05-101-3/+3
|
* AS::Callbacks: deprecate rescuable optionBogdan Gusiev2012-02-221-8/+1
|
* AS::Callbacks: rip out per_key option.Bogdan Gusiev2012-02-041-7/+23
|
* Fix GH #4344. A defined callback in extended module is called too.kennyj2012-01-241-0/+56
|
* removing unnecessary requiresAaron Patterson2012-01-061-1/+0
|
* use AS::TestCase as the base classAaron Patterson2012-01-051-12/+12
|
* Log 'Filter chain halted as CALLBACKNAME rendered or redirected' every time ↵José Valim2011-11-301-1/+11
| | | | a before callback halts.
* Removal require again from tests.Arun Agrawal2011-05-221-1/+0
|
* Add better test scenario for around callback return resultsAaron Pfeifer2011-03-081-0/+10
|
* Allow access to a callback event's return result from around callbacksAaron Pfeifer2011-03-081-0/+24
|
* Use run_callbacks; the generated _run_<name>_callbacks method is not a ↵John Firebaugh2011-01-311-1/+1
| | | | | | public interface. Signed-off-by: Santiago Pastorino <santiago@wyeworks.com>
* while defining callbacks option :rescuable => trueNeeraj Singh2010-12-291-1/+30
| | | | | | | can be passed. There were no tests for this case. This patch adds a test for :rescuable => true option.
* Test for after_create callback order in ActiveSupport [#5703 state:resolved]Neeraj Singh2010-09-271-0/+23
| | | | Signed-off-by: José Valim <jose.valim@gmail.com>
* If certain sections of skip_callback method are commented out thenNeeraj Singh2010-08-311-0/+27
| | | | | | | no test was failing. Tests have been added to ensure that commenting out the code within if loop would cause test failure. Signed-off-by: José Valim <jose.valim@gmail.com>
* Final iteration of use better testing methodsNeeraj Singh2010-05-191-1/+1
| | | | | | [#4652 state:resolved] Signed-off-by: José Valim <jose.valim@gmail.com>
* Added missing requires abstract_unit and activesupport to the loadpath of ↵Santiago Pastorino and Sebastian Martinez2010-03-181-1/+1
| | | | | | ts_isolated [#4215 state:committed] Signed-off-by: wycats <wycats@gmail.com>
* Make sure AS test env doesn't have duplicate libs in load pathJoshua Peek2010-02-151-1/+0
|
* deOMGifying Railties, Active Support, and Action PackMikel Lindsaar2010-01-311-4/+4
|
* Callbacks, DeprecatedCallbacks = NewCallbacks, CallbacksJoshua Peek2009-10-121-146/+486
|
* Remove core ext dependency from testJeremy Kemper2009-03-241-4/+4
|
* Allow multiple conditions for callbacks [#1627 state:resolved]Joshua Peek2008-12-281-1/+41
|
* Simplified and renamed CallbackChain union method to replace_or_append!Joshua Peek2008-08-211-4/+4
|
* Tidy up ActiveSupport::Callbacks::CallbackChain instance API.Joshua Peek2008-04-171-0/+31
|
* Refactor filters to use Active Support callbacks. Closes #11235.Jeremy Kemper2008-03-181-0/+21
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@9055 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Extract ActiveSupport::Callbacks from Active Record, test case setup and ↵Jeremy Kemper2008-01-191-0/+96
teardown, and ActionController::Dispatcher. Closes #10727. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8664 5ecf4fe2-1ee6-0310-87b1-e25e094e27de