test/rails_root/test/unit/activity_test.rb in muck-activities-0.1.14 vs test/rails_root/test/unit/activity_test.rb in muck-activities-0.1.15
- old
+ new
@@ -9,16 +9,43 @@
should_belong_to :item
should_belong_to :source
should_have_many :activity_feeds
should_have_many :comments
- should_have_named_scope :since
- should_have_named_scope :before
should_have_named_scope :newest
should_have_named_scope :only_public
- should_have_named_scope :filter_by_template
should_have_named_scope :status_updates
+ end
+
+ context "named scopes" do
+ setup do
+ @old_activity = Factory(:activity, :created_at => 6.weeks.ago)
+ @new_activity = Factory(:activity)
+ @status_activity = Factory(:activity, :template => 'status')
+ @other_activity = Factory(:activity, :template => 'other')
+ end
+ context "before" do
+ should "only find old activity" do
+ activities = Activity.before(1.week.ago)
+ assert activities.include?(@old_activity), "since didn't find older activity"
+ assert !activities.include?(@new_activity), "since found new activity"
+ end
+ end
+ context "since" do
+ should "only find new activity" do
+ activities = Activity.since(1.week.ago)
+ assert !activities.include?(@old_activity), "since found older activity"
+ assert activities.include?(@new_activity), "since didn't find new activity"
+ end
+ end
+ context "filter_by_template" do
+ should "only find status template" do
+ activities = Activity.filter_by_template('status')
+ assert activities.include?(@status_activity), "since didn't find status activity"
+ assert !activities.include?(@other_activity), "since found other activity"
+ end
+ end
end
should "require template or item" do
activity = Factory.build(:activity, :template => nil, :item => nil)
assert !activity.valid?
\ No newline at end of file