Fixing versions creation without controller.
Additionally fixing a leakage within the tests
This commit is contained in:
parent
7fc9bb6075
commit
13775e16a4
|
@ -63,8 +63,11 @@ module PaperTrail
|
|||
private
|
||||
|
||||
# Thread-safe hash to hold PaperTrail's data.
|
||||
# Initializing with needed default values.
|
||||
def self.paper_trail_store
|
||||
Thread.current[:paper_trail] ||= {}
|
||||
Thread.current[:paper_trail] ||= {
|
||||
:request_enabled_for_controller => true
|
||||
}
|
||||
end
|
||||
|
||||
# Returns PaperTrail's configuration object.
|
||||
|
|
|
@ -4,4 +4,24 @@ class PaperTrailTest < ActiveSupport::TestCase
|
|||
test 'Sanity test' do
|
||||
assert_kind_of Module, PaperTrail
|
||||
end
|
||||
|
||||
test 'create with plain model class' do
|
||||
widget = Widget.create
|
||||
assert_equal 1, widget.versions.length
|
||||
end
|
||||
|
||||
test 'update with plain model class' do
|
||||
widget = Widget.create
|
||||
assert_equal 1, widget.versions.length
|
||||
widget.update_attributes(:name => 'Bugle')
|
||||
assert_equal 2, widget.versions.length
|
||||
end
|
||||
|
||||
test 'destroy with plain model class' do
|
||||
widget = Widget.create
|
||||
assert_equal 1, widget.versions.length
|
||||
widget.destroy
|
||||
versions_for_widget = Version.with_item_keys('Widget', widget.id)
|
||||
assert_equal 2, versions_for_widget.length
|
||||
end
|
||||
end
|
||||
|
|
|
@ -29,6 +29,12 @@ ActiveRecord::Migrator.migrate File.expand_path("../dummy/db/migrate/", __FILE__
|
|||
# Load support files
|
||||
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
|
||||
|
||||
# global setup block resetting Thread.current
|
||||
class ActiveSupport::TestCase
|
||||
teardown do
|
||||
Thread.current[:paper_trail] = nil
|
||||
end
|
||||
end
|
||||
|
||||
#
|
||||
# Helpers
|
||||
|
|
Loading…
Reference in New Issue