Fixes tests

This commit is contained in:
Clint Ryan
2017-03-23 00:41:28 +11:00
parent 9115be68b2
commit 7a543d07a4
2 changed files with 54 additions and 38 deletions

View File

@@ -1,55 +1,70 @@
'use strict'; 'use strict';
describe.only('User Controller', function() { describe.only('User Controller', function() {
var $rootScope, shared, scope, user, User, ctrl, content, achievement; var $rootScope, $window, User, shared, scope, ctrl, content;
beforeEach(function() { beforeEach(function() {
user = specHelper.newUser({ module(function ($provide) {
balance: 4, var user = specHelper.newUser();
items: { User = {user: user}
gear: { owned: {} }, $provide.value('Guide', sandbox.stub());
eggs: { Cactus: 1 }, $provide.value('User', User);
hatchingPotions: { Base: 1 }, $provide.value('Achievement', sandbox.stub());
food: { Meat: 1 }, $provide.value('Social', sandbox.stub());
pets: {}, $provide.value('Shared', {
mounts: {} achievements: {
}, getAchievementsForProfile: sandbox.stub()
flags: {
armoireEnabled: true
},
preferences: {
suppressModals: {}
},
purchased: {
plan: {
mysteryItems: [],
}, },
}, shops: {
getBackgroundShopSets: sandbox.stub()
}
});
$provide.value('Content', {
loginIncentives: sandbox.stub()
})
}); });
User = { inject(function($rootScope, $controller, User, Content) {
user: user
};
inject(function($rootScope, $controller, Shared, User, Achievement, Guide) {
scope = $rootScope.$new(); scope = $rootScope.$new();
Shared.wrap(user); content = Content;
shared = Shared; $window = {
achievement = Achievement; env: {
User.setUser(user); t: sandbox.stub(),
$controller('RootCtrl', {$scope: scope, User: User, Guide: Guide}); },
ctrl = $controller('UserCtrl', {$scope: scope, User: User, Guide: Guide}); };
$controller('RootCtrl', { $scope: scope, $window: $window, User: User});
ctrl = $controller('UserCtrl', { $scope: scope, User: User, $window: $window});
}); });
}); });
describe.only('getProgressDisplay', function() { describe('getProgressDisplay', function() {
it('should return initial progress', function() { it('should return initial progress', function() {
sinon.stub(content, 'loginIncentives').onFirstCall().returns({ $window.env.t.onFirstCall().returns('');
prevRewardKey: 0, scope.profile.loginIncentives = 0;
nextRewardKey: 1 content.loginIncentives = [{
}); nextRewardAt: 1,
reward: true
}];
var actual = scope.getProgressDisplay(); var actual = scope.getProgressDisplay();
expect(actual).to.eql(''); expect(actual.trim()).to.eql('0/1');
});
it('should return progress between next reward and current reward', function() {
$window.env.t.onFirstCall().returns('');
scope.profile.loginIncentives = 1;
content.loginIncentives = [{
nextRewardAt: 1,
reward: true
}, {
prevRewardAt: 0,
nextRewardAt: 2,
reward: true
}, {
prevRewardAt: 1,
nextRewardAt: 3
}];
var actual = scope.getProgressDisplay();
expect(actual.trim()).to.eql('0/1');
}); });
}); });
}); });

View File

@@ -93,6 +93,7 @@ habitrpg.controller('UserCtrl', ['$rootScope', '$scope', '$location', 'User', '$
$scope.getProgressDisplay = function () { $scope.getProgressDisplay = function () {
var currentLoginDay = Content.loginIncentives[$scope.profile.loginIncentives]; var currentLoginDay = Content.loginIncentives[$scope.profile.loginIncentives];
console.log('CURRENT DAY', currentLoginDay);
if (!currentLoginDay) return env.t('moreIncentivesComingSoon'); if (!currentLoginDay) return env.t('moreIncentivesComingSoon');
var nextRewardAt = currentLoginDay.nextRewardAt; var nextRewardAt = currentLoginDay.nextRewardAt;
if (!nextRewardAt) return env.t('moreIncentivesComingSoon'); if (!nextRewardAt) return env.t('moreIncentivesComingSoon');