diff options
Diffstat (limited to 'web-ui/test')
-rw-r--r-- | web-ui/test/features.js | 6 | ||||
-rw-r--r-- | web-ui/test/spec/page/logout.spec.js | 33 |
2 files changed, 39 insertions, 0 deletions
diff --git a/web-ui/test/features.js b/web-ui/test/features.js index 27c47176..29c6d87d 100644 --- a/web-ui/test/features.js +++ b/web-ui/test/features.js @@ -3,6 +3,12 @@ define([], function() { return { isEnabled: function(featureName) { return true; + }, + isLogoutEnabled: function() { + return true; + }, + getLogoutUrl: function() { + return '/test/logout/url'; } }; }); diff --git a/web-ui/test/spec/page/logout.spec.js b/web-ui/test/spec/page/logout.spec.js new file mode 100644 index 00000000..c614af6d --- /dev/null +++ b/web-ui/test/spec/page/logout.spec.js @@ -0,0 +1,33 @@ +/*global Pixelated */ + +describeComponent('page/logout', function () { + 'use strict'; + + describe('logout link', function () { + var features; + + beforeEach(function() { + features = require('features'); + }); + + it('should provide logout link if logout is enabled', function () { + spyOn(features, 'isLogoutEnabled').andReturn(true); + + setupComponent('<div id="logout"></div>', {}); + + var logout_link = this.component.$node.find('a')[0]; + expect(logout_link).toExist(); + expect(logout_link.href).toMatch('test/logout/url'); + }); + + it('should not provide logout link if disabled', function() { + spyOn(features, 'isLogoutEnabled').andReturn(false); + + setupComponent('<div id="logout"></div>', {}); + + var logout_link = this.component.$node.find('a')[0]; + expect(logout_link).not.toExist(); + }); + }); +}); + |