mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-19 15:48:04 +01:00
56 lines
1.7 KiB
JavaScript
56 lines
1.7 KiB
JavaScript
'use strict';
|
|
|
|
describe('achievementServices', function() {
|
|
var achievementService, rootScope;
|
|
|
|
beforeEach(function() {
|
|
rootScope = { 'openModal': sandbox.stub() };
|
|
module(function($provide) {
|
|
$provide.value('$rootScope', rootScope);
|
|
});
|
|
|
|
inject(function(Achievement) {
|
|
achievementService = Achievement;
|
|
});
|
|
});
|
|
|
|
describe('#displayAchievement', function() {
|
|
it('passes given achievement name to openModal', function() {
|
|
achievementService.displayAchievement('beastMaster');
|
|
|
|
expect(rootScope.openModal).to.be.calledOnce;
|
|
expect(rootScope.openModal).to.be.calledWith('achievements/beastMaster');
|
|
});
|
|
|
|
it('calls openModal with UserCtrl and small modal size if no other size is given', function() {
|
|
achievementService.displayAchievement('test');
|
|
|
|
expect(rootScope.openModal).to.be.calledOnce;
|
|
expect(rootScope.openModal).to.be.calledWith(
|
|
'achievements/test',
|
|
{ controller: 'UserCtrl', size: 'sm' }
|
|
);
|
|
});
|
|
|
|
it('calls openModal with UserCtrl and specified modal size if one is given', function() {
|
|
achievementService.displayAchievement('test', {size: 'md'});
|
|
|
|
expect(rootScope.openModal).to.be.calledOnce;
|
|
expect(rootScope.openModal).to.be.calledWith(
|
|
'achievements/test',
|
|
{ controller: 'UserCtrl', size: 'md' }
|
|
);
|
|
});
|
|
|
|
it('calls openModal with UserCtrl and default \'sm\' size if invalid size is given', function() {
|
|
achievementService.displayAchievement('test', {size: 'INVALID_SIZE'});
|
|
|
|
expect(rootScope.openModal).to.be.calledOnce;
|
|
expect(rootScope.openModal).to.be.calledWith(
|
|
'achievements/test',
|
|
{ controller: 'UserCtrl', size: 'sm' }
|
|
);
|
|
});
|
|
});
|
|
});
|