_ = require 'underscore-plus'
React = require "react/addons"
TestUtils = React.addons.TestUtils
{Contact, Message} = require "inbox-exports"
MessageParticipants = require "../lib/message-participants.cjsx"
user_1 =
name: "User One"
email: "user1@inboxapp.com"
user_2 =
name: "User Two"
email: "user2@inboxapp.com"
user_3 =
name: "User Three"
email: "user3@inboxapp.com"
user_4 =
name: "User Four"
email: "user4@inboxapp.com"
user_5 =
name: "User Five"
email: "user5@inboxapp.com"
many_users = (new Contact({name: "User #{i}", email:"#{i}@app.com"}) for i in [0..100])
test_message = (new Message).fromJSON({
"id" : "111",
"from" : [ user_1 ],
"to" : [ user_2 ],
"cc" : [ user_3, user_4 ],
"bcc" : [ user_5 ]
})
big_test_message = (new Message).fromJSON({
"id" : "222",
"from" : [ user_1 ],
"to" : many_users
})
many_thread_users = [user_1].concat(many_users)
thread_participants = [
(new Contact(user_1)),
(new Contact(user_2)),
(new Contact(user_3)),
(new Contact(user_4))
]
thread2_participants = [
(new Contact(user_1)),
(new Contact(user_2)),
(new Contact(user_3)),
(new Contact(user_4)),
(new Contact(user_5))
]
describe "MessageParticipants", ->
it "determines the message is to everyone", ->
p1 = TestUtils.renderIntoDocument(
)
expect(p1._isToEveryone()).toBe true
it "knows when the message isn't to everyone due to participant mismatch", ->
p2 = TestUtils.renderIntoDocument(
)
# this should be false because we don't count bccs
expect(p2._isToEveryone()).toBe false
it "knows when the message isn't to everyone due to participant size", ->
p2 = TestUtils.renderIntoDocument(
)
# this should be false because we don't count bccs
expect(p2._isToEveryone()).toBe false