mirror of
https://github.com/Foundry376/Mailspring.git
synced 2024-09-21 15:56:10 +08:00
fix(account-store): Correctly check alias email inside accountForAlias
- Add spec
This commit is contained in:
parent
12f4142d84
commit
4641fc4938
|
@ -39,6 +39,21 @@ describe "AccountStore", ->
|
|||
(new Account).fromJSON(accounts[1])
|
||||
])
|
||||
|
||||
describe "accountForEmail", ->
|
||||
beforeEach ->
|
||||
@instance = new @constructor
|
||||
@ac1 = new Account emailAddress: 'juan@nylas.com', aliases: []
|
||||
@ac2 = new Account emailAddress: 'juan@gmail.com', aliases: ['Juan <juanchis@gmail.com>']
|
||||
@ac3 = new Account emailAddress: 'jackie@columbia.edu', aliases: ['Jackie Luo <jacqueline.luo@columbia.edu>']
|
||||
@instance._accounts = [@ac1, @ac2, @ac3]
|
||||
|
||||
it 'returns correct account when no alises present', ->
|
||||
expect(@instance.accountForEmail('juan@nylas.com')).toEqual @ac1
|
||||
|
||||
it 'returns correct account when alias is used', ->
|
||||
expect(@instance.accountForEmail('juanchis@gmail.com')).toEqual @ac2
|
||||
expect(@instance.accountForEmail('jacqueline.luo@columbia.edu')).toEqual @ac3
|
||||
|
||||
describe "adding account from json", ->
|
||||
beforeEach ->
|
||||
spyOn(NylasEnv.config, "set")
|
||||
|
|
|
@ -1,11 +1,10 @@
|
|||
_ = require 'underscore'
|
||||
NylasStore = require 'nylas-store'
|
||||
Actions = require '../actions'
|
||||
Account = require '../models/account'
|
||||
Utils = require '../models/utils'
|
||||
DatabaseStore = require './database-store'
|
||||
_ = require 'underscore'
|
||||
|
||||
{Listener, Publisher} = require '../modules/reflux-coffee'
|
||||
CoffeeHelpers = require '../coffee-helpers'
|
||||
|
||||
saveObjectsKey = "nylas.accounts"
|
||||
saveTokensKey = "nylas.accountTokens"
|
||||
|
@ -16,11 +15,7 @@ the database and exposes the currently active Account via {::current}
|
|||
|
||||
Section: Stores
|
||||
###
|
||||
class AccountStore
|
||||
@include: CoffeeHelpers.includeModule
|
||||
|
||||
@include Publisher
|
||||
@include Listener
|
||||
class AccountStore extends NylasStore
|
||||
|
||||
constructor: ->
|
||||
@_load()
|
||||
|
@ -140,7 +135,8 @@ class AccountStore
|
|||
_.find @_accounts, (account) ->
|
||||
return true if Utils.emailIsEquivalent(email, account.emailAddress)
|
||||
for alias in account.aliases
|
||||
return true if Utils.emailIsEquivalent(email, alias)
|
||||
aliasContact = account.meUsingAlias(alias)
|
||||
return true if Utils.emailIsEquivalent(email, aliasContact.email)
|
||||
return false
|
||||
|
||||
# Public: Returns the {Account} for the given account id, or null.
|
||||
|
|
Loading…
Reference in a new issue