test/unread_test.rb in unread-0.1.1 vs test/unread_test.rb in unread-0.1.2

- old
+ new

@@ -32,14 +32,10 @@ assert_equal [@email1, @email2], Email.unread_by(@reader) assert_equal [@email1, @email2], Email.unread_by(@other_reader) assert_equal 2, Email.unread_by(@reader).count assert_equal 2, Email.unread_by(@other_reader).count - - assert_raise(ArgumentError) { - Email.unread_by(42) - } end def test_with_read_marks_for @email1.mark_as_read! :for => @reader @@ -48,9 +44,20 @@ assert emails[0].read_mark_id.present? assert emails[1].read_mark_id.nil? assert_equal false, emails[0].unread?(@reader) assert_equal true, emails[1].unread?(@reader) + end + + def test_scope_param_check + [ 42, nil, 'foo', :foo, {} ].each do |not_a_reader| + assert_raise(ArgumentError) { Email.unread_by(not_a_reader)} + assert_raise(ArgumentError) { Email.with_read_marks_for(not_a_reader)} + end + + unsaved_reader = Reader.new + assert_raise(ArgumentError) { Email.unread_by(unsaved_reader)} + assert_raise(ArgumentError) { Email.with_read_marks_for(unsaved_reader)} end def test_scope_after_reset @email1.mark_as_read! :for => @reader \ No newline at end of file