mirror of
https://github.com/TracksApp/tracks.git
synced 2025-12-23 02:30:12 +01:00
enhance MessageGateway to save email as attachment
This commit is contained in:
parent
f2c6c2d3af
commit
5cabeca155
2 changed files with 57 additions and 13 deletions
|
|
@ -13,18 +13,18 @@ class MessageGatewayTest < ActiveSupport::TestCase
|
|||
|
||||
def test_sms_with_no_subject
|
||||
todo_count = Todo.count
|
||||
|
||||
|
||||
load_message('sample_sms.txt')
|
||||
# assert some stuff about it being created
|
||||
assert_equal(todo_count+1, Todo.count)
|
||||
|
||||
|
||||
message_todo = Todo.where(:description => "message_content").first
|
||||
assert_not_nil(message_todo)
|
||||
|
||||
|
||||
assert_equal(@inbox, message_todo.context)
|
||||
assert_equal(@user, message_todo.user)
|
||||
end
|
||||
|
||||
|
||||
def test_mms_with_subject
|
||||
todo_count = Todo.count
|
||||
|
||||
|
|
@ -40,7 +40,7 @@ class MessageGatewayTest < ActiveSupport::TestCase
|
|||
assert_equal(@user, message_todo.user)
|
||||
assert_equal("This is the message body", message_todo.notes)
|
||||
end
|
||||
|
||||
|
||||
def test_email_with_winmail_dat
|
||||
todo_count = Todo.count
|
||||
|
||||
|
|
@ -58,7 +58,7 @@ class MessageGatewayTest < ActiveSupport::TestCase
|
|||
# assert some stuff about it being created
|
||||
assert_equal(todo_count+1, Todo.count)
|
||||
end
|
||||
|
||||
|
||||
def test_no_user
|
||||
todo_count = Todo.count
|
||||
badmessage = File.read(File.join(Rails.root, 'test', 'fixtures', 'sample_sms.txt'))
|
||||
|
|
@ -66,21 +66,38 @@ class MessageGatewayTest < ActiveSupport::TestCase
|
|||
MessageGateway.receive(badmessage)
|
||||
assert_equal(todo_count, Todo.count)
|
||||
end
|
||||
|
||||
|
||||
def test_direct_to_context
|
||||
message = File.read(File.join(Rails.root, 'test', 'fixtures', 'sample_sms.txt'))
|
||||
|
||||
|
||||
valid_context_msg = message.gsub('message_content', 'this is a task @ anothercontext')
|
||||
invalid_context_msg = message.gsub('message_content', 'this is also a task @ notacontext')
|
||||
|
||||
|
||||
MessageGateway.receive(valid_context_msg)
|
||||
valid_context_todo = Todo.where(:description => "this is a task").first
|
||||
assert_not_nil(valid_context_todo)
|
||||
assert_equal(contexts(:anothercontext), valid_context_todo.context)
|
||||
|
||||
|
||||
MessageGateway.receive(invalid_context_msg)
|
||||
invalid_context_todo = Todo.where(:description => 'this is also a task').first
|
||||
assert_not_nil(invalid_context_todo)
|
||||
assert_equal(@inbox, invalid_context_todo.context)
|
||||
end
|
||||
|
||||
def test_receiving_email_adds_attachment
|
||||
attachment_count = Attachment.count
|
||||
|
||||
load_message('sample_mms.txt')
|
||||
|
||||
message_todo = Todo.where(:description => "This is the subject").first
|
||||
assert_not_nil(message_todo)
|
||||
|
||||
assert_equal attachment_count+1, Attachment.count
|
||||
assert_equal 1,message_todo.attachments.count
|
||||
|
||||
orig = File.read(File.join(Rails.root, 'test', 'fixtures', 'sample_mms.txt'))
|
||||
attachment = File.read(message_todo.attachments.first.file.path)
|
||||
|
||||
assert_equal orig, attachment
|
||||
end
|
||||
end
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue