Api v3 members port (#7109)

* Ported groups service to user new api v3 and ported dependent controllers

* Remove  and extra remove inviation code. Fixed group service caching and update group service tests

* Fixed test logic and added party cache support

* Updated members service to use api v3

* Removed onlys

* Added invites to group detail

* Removed old user reject invite code
This commit is contained in:
Keith Holliday
2016-04-30 02:54:25 -06:00
committed by Matteo Pagliazzi
parent 570d5c7fd9
commit 415418f30c
7 changed files with 196 additions and 70 deletions
+65 -13
View File
@@ -2,6 +2,7 @@
describe('memberServices', function() {
var $httpBackend, members;
var apiV3Prefix = '/api/v3';
beforeEach(inject(function (_$httpBackend_, Members) {
$httpBackend = _$httpBackend_;
@@ -20,10 +21,51 @@ describe('memberServices', function() {
expect(members.selectedMember).to.be.undefined;
});
it('calls fetch member', function() {
var memberId = 1;
var memberUrl = apiV3Prefix + '/members/' + memberId;
$httpBackend.expectGET(memberUrl).respond({});
members.fetchMember(memberId);
$httpBackend.flush();
});
it('calls get group members', function() {
var groupId = 1;
var memberUrl = apiV3Prefix + '/groups/' + groupId + '/members';
$httpBackend.expectGET(memberUrl).respond({});
members.getGroupMembers(groupId);
$httpBackend.flush();
});
it('calls get group invites', function() {
var groupId = 1;
var memberUrl = apiV3Prefix + '/groups/' + groupId + '/invites';
$httpBackend.expectGET(memberUrl).respond({});
members.getGroupInvites(groupId);
$httpBackend.flush();
});
it('calls get challenge members', function() {
var challengeId = 1;
var memberUrl = apiV3Prefix + '/challenges/' + challengeId + '/members';
$httpBackend.expectGET(memberUrl).respond({});
members.getChallengeMembers(challengeId);
$httpBackend.flush();
});
it('calls get challenge members progress', function() {
var challengeId = 1;
var memberId = 2;
var memberUrl = apiV3Prefix + '/challenges/' + challengeId + '/members/' + memberId;
$httpBackend.expectGET(memberUrl).respond({});
members.getChallengeMemberProgress(challengeId, memberId);
$httpBackend.flush();
});
describe('addToMembersList', function() {
it('adds member to members object', function() {
var member = { _id: 'user_id' };
members.addToMembersList(member);
members.addToMembersList(member, members);
expect(members.members).to.eql({
user_id: { _id: 'user_id' }
});
@@ -31,27 +73,37 @@ describe('memberServices', function() {
});
describe('selectMember', function() {
it('fetches member if not already in cache', function() {
it('fetches member if not already in cache', function(done) {
var uid = 'abc';
$httpBackend.expectGET('/api/v2/members/' + uid).respond({ _id: uid });
members.selectMember(uid, function(){});
var memberResponse = {
data: {_id: uid},
}
$httpBackend.expectGET(apiV3Prefix + '/members/' + uid).respond(memberResponse);
members.selectMember(uid)
.then(function () {
expect(members.selectedMember._id).to.eql(uid);
expect(members.members).to.have.property(uid);
done();
});
$httpBackend.flush();
expect(members.selectedMember._id).to.eql(uid);
expect(members.members).to.have.property(uid);
});
it('fetches member if member data in cache is incomplete', function() {
it('fetches member if member data in cache is incomplete', function(done) {
var uid = 'abc';
members.members = {
abc: { _id: 'abc', items: {} }
}
$httpBackend.expectGET('/api/v2/members/' + uid).respond({ _id: uid });
members.selectMember(uid, function(){});
var memberResponse = {
data: {_id: uid},
}
$httpBackend.expectGET(apiV3Prefix + '/members/' + uid).respond(memberResponse);
members.selectMember(uid)
.then(function () {
expect(members.selectedMember._id).to.eql(uid);
expect(members.members).to.have.property(uid);
done();
});
$httpBackend.flush();
expect(members.selectedMember._id).to.eql(uid);
expect(members.members).to.have.property(uid);
});
it('gets member from cache if member has a weapons object', function() {