Skip to content
  • Robb Kidd's avatar
    Disable observers in specs. Enable only when observer is under test. · a18e4e43dce1
    Robb Kidd authored
    Used the built-in observer enable/disable feature in ActiveModel[1].
    ActiveRecord::Base includes ActiveModel::Observing which provides this
    behavior.
    
    Simple wraps to enable the observer under test were added to the specs
    for: ActivityObserver, IssueObserver, Admin::Users and Issues.
    
    The spec for Project.last_activity was refactored to separate the tests
    for #last_activity and #last_activity_date. Each had doubles added to
    isolate the spec from the hidden dependency on the ActivityObserver
    action to create an Event for the project when an Issue is created. This
    ActivityObserver behavior is already tested by its spec.
    
    [1] http://api.rubyonrails.org/classes/ActiveModel/ObserverArray.html
    a18e4e43dce1