115 lines
2.7 KiB
CoffeeScript
115 lines
2.7 KiB
CoffeeScript
# pending new resouercees
|
|
|
|
describe.skip "UserService", ->
|
|
userService = null
|
|
$q = null
|
|
provide = null
|
|
$rootScope = null
|
|
mocks = {}
|
|
|
|
_mockResources = () ->
|
|
mocks.resources = {}
|
|
mocks.resources.projects = {
|
|
listByMember: sinon.stub()
|
|
}
|
|
|
|
mocks.resources.users = {
|
|
contacts: sinon.stub()
|
|
}
|
|
|
|
provide.value "$tgResources", mocks.resources
|
|
|
|
_mocks = () ->
|
|
module ($provide) ->
|
|
provide = $provide
|
|
_mockResources()
|
|
|
|
return null
|
|
|
|
_inject = (callback) ->
|
|
inject (_tgUserService_, _$q_, _$rootScope_) ->
|
|
userService = _tgUserService_
|
|
$q = _$q_
|
|
$rootScope = _$rootScope_
|
|
|
|
beforeEach ->
|
|
module "taigaCommon"
|
|
_mocks()
|
|
_inject()
|
|
|
|
it "get user projects", (done) ->
|
|
userId = 2
|
|
|
|
projects = [
|
|
{id: 1},
|
|
{id: 2},
|
|
{id: 3}
|
|
]
|
|
|
|
mocks.resources.projects.listByMember = (userId) ->
|
|
expect(userId).to.be.equal(userId)
|
|
|
|
return $q (resolve, reject) ->
|
|
resolve(projects)
|
|
|
|
userService.getProjects(userId).then (_projects_) ->
|
|
expect(_projects_.toJS()).to.be.eql(projects)
|
|
done()
|
|
|
|
$rootScope.$apply()
|
|
|
|
it "attach user contacts to projects", (done) ->
|
|
userId = 2
|
|
|
|
class Project
|
|
constructor: (@id, @members) ->
|
|
|
|
projects = Immutable.fromJS([
|
|
new Project(1, [1, 2, 3]),
|
|
new Project(1, [2, 3]),
|
|
new Project(1, [1])
|
|
])
|
|
|
|
contacts = Immutable.fromJS([
|
|
{id: 1, name: "fake1"},
|
|
{id: 2, name: "fake2"},
|
|
{id: 3, name: "fake3"}
|
|
])
|
|
|
|
mocks.resources.users.contacts = (userId) ->
|
|
expect(userId).to.be.equal(userId)
|
|
|
|
return $q (resolve, reject) ->
|
|
resolve(contacts)
|
|
|
|
userService.attachUserContactsToProjects(userId, projects).then (_projects_) ->
|
|
contacts = _projects_.get(0).contacts
|
|
|
|
console.log _projects_.get(0)
|
|
|
|
expect(contacts[0]).to.be.equal('fake1')
|
|
done()
|
|
|
|
$rootScope.$apply()
|
|
|
|
it "get user contacts", (done) ->
|
|
userId = 2
|
|
|
|
contacts = [
|
|
{id: 1},
|
|
{id: 2},
|
|
{id: 3}
|
|
]
|
|
|
|
mocks.resources.user.contacts = (userId) ->
|
|
expect(userId).to.be.equal(userId)
|
|
|
|
return $q (resolve, reject) ->
|
|
resolve(contacts)
|
|
|
|
userService.getUserContacts(userId).then (_contacts_) ->
|
|
expect(_contacts_.toJS()).to.be.eql(contacts)
|
|
done()
|
|
|
|
$rootScope.$apply()
|