Add additional tests for AM::ObserverArray that I had missed yesterday.
This commit is contained in:
parent
fef22157b0
commit
7db7aa5053
|
@ -38,6 +38,16 @@ class ObserverArrayTest < ActiveModel::TestCase
|
|||
assert_observer_notified Budget, AuditTrail
|
||||
end
|
||||
|
||||
test "can enable individual observers using a class constant" do
|
||||
ORM.observers.disable :all
|
||||
ORM.observers.enable AuditTrail
|
||||
|
||||
assert_observer_not_notified Widget, WidgetObserver
|
||||
assert_observer_not_notified Budget, BudgetObserver
|
||||
assert_observer_notified Widget, AuditTrail
|
||||
assert_observer_notified Budget, AuditTrail
|
||||
end
|
||||
|
||||
test "can disable individual observers using a symbol" do
|
||||
ORM.observers.disable :budget_observer
|
||||
|
||||
|
@ -47,6 +57,35 @@ class ObserverArrayTest < ActiveModel::TestCase
|
|||
assert_observer_notified Budget, AuditTrail
|
||||
end
|
||||
|
||||
test "can enable individual observers using a symbol" do
|
||||
ORM.observers.disable :all
|
||||
ORM.observers.enable :audit_trail
|
||||
|
||||
assert_observer_not_notified Widget, WidgetObserver
|
||||
assert_observer_not_notified Budget, BudgetObserver
|
||||
assert_observer_notified Widget, AuditTrail
|
||||
assert_observer_notified Budget, AuditTrail
|
||||
end
|
||||
|
||||
test "can disable multiple observers at a time" do
|
||||
ORM.observers.disable :widget_observer, :budget_observer
|
||||
|
||||
assert_observer_not_notified Widget, WidgetObserver
|
||||
assert_observer_not_notified Budget, BudgetObserver
|
||||
assert_observer_notified Widget, AuditTrail
|
||||
assert_observer_notified Budget, AuditTrail
|
||||
end
|
||||
|
||||
test "can enable multiple observers at a time" do
|
||||
ORM.observers.disable :all
|
||||
ORM.observers.enable :widget_observer, :budget_observer
|
||||
|
||||
assert_observer_notified Widget, WidgetObserver
|
||||
assert_observer_notified Budget, BudgetObserver
|
||||
assert_observer_not_notified Widget, AuditTrail
|
||||
assert_observer_not_notified Budget, AuditTrail
|
||||
end
|
||||
|
||||
test "can disable all observers using :all" do
|
||||
ORM.observers.disable :all
|
||||
|
||||
|
@ -56,7 +95,17 @@ class ObserverArrayTest < ActiveModel::TestCase
|
|||
assert_observer_not_notified Budget, AuditTrail
|
||||
end
|
||||
|
||||
test "can disable observers on individual models without affecting observers on other models" do
|
||||
test "can enable all observers using :all" do
|
||||
ORM.observers.disable :all
|
||||
ORM.observers.enable :all
|
||||
|
||||
assert_observer_notified Widget, WidgetObserver
|
||||
assert_observer_notified Budget, BudgetObserver
|
||||
assert_observer_notified Widget, AuditTrail
|
||||
assert_observer_notified Budget, AuditTrail
|
||||
end
|
||||
|
||||
test "can disable observers on individual models without affecting those observers on other models" do
|
||||
Widget.observers.disable :all
|
||||
|
||||
assert_observer_not_notified Widget, WidgetObserver
|
||||
|
|
Loading…
Reference in New Issue