api_fixtures
fixtures :messages
- EURO = "\xe2\x82\xac" #euro symbol
+ EURO = "\xe2\x82\xac" # euro symbol
# This needs to be updated when new fixtures are added
# or removed.
assert message.errors[:sent_on].any?
assert !message.message_read
end
-
+
def test_validating_msgs
message = messages(:unread_message)
assert message.valid?
- massage = messages(:read_message)
+ message = messages(:read_message)
assert message.valid?
end
-
+
def test_invalid_send_recipient
message = messages(:unread_message)
message.sender = nil
assert_raise(ActiveRecord::RecordNotFound) { User.find(0) }
message.from_user_id = 0
message.to_user_id = 0
- assert_raise(ActiveRecord::RecordInvalid) {message.save!}
+ assert_raise(ActiveRecord::RecordInvalid) { message.save! }
end
def test_utf8_roundtrip
msg = make_message(char, 1)
# if the save throws, thats fine and the test should pass, as we're
# only testing invalid sequences anyway.
- msg.save!
+ msg.save!
- # get the saved message back and check that it is identical - i.e:
+ # get the saved message back and check that it is identical - i.e:
# its OK to accept invalid UTF-8 as long as we return it unmodified.
db_msg = msg.class.find(msg.id)
assert_equal char, db_msg.title, "Database silently truncated message title"
rescue ArgumentError => ex
assert_equal ex.to_s, "invalid byte sequence in UTF-8"
- rescue ActiveRecord::RecordInvalid
- # because we only test invalid sequences it is OK to barf on them
end
end
- end
+ end
def test_from_mail_plain
mail = Mail.new do
assert_equal "text", message.body_format
end
-private
+ private
def make_message(char, count)
message = messages(:unread_message)
message.title = char * count
- return message
+ message
end
def assert_message_ok(char, count)
message = make_message(char, count)
assert message.save!
response = message.class.find(message.id) # stand by for some über-generalisation...
- assert_equal char * count, response.title, "message with #{count} #{char} chars (i.e. #{char.length*count} bytes) fails"
+ assert_equal char * count, response.title, "message with #{count} #{char} chars (i.e. #{char.length * count} bytes) fails"
end
end