summaryrefslogtreecommitdiff
path: root/web-ui/test/spec/user_settings
diff options
context:
space:
mode:
authorJefferson Stachelski <jeffhsta@riseup.net>2015-12-03 20:56:47 -0200
committerPixelated <pixelated@pix-poa-1>2015-12-03 21:16:58 -0200
commit6df57ef709f0a19e467a5a88bc854f4e5f8e00f7 (patch)
tree4bd64040d9d2a159d781d066f397edae74ad04f7 /web-ui/test/spec/user_settings
parent7524cb21facf3d739d29e312ffe85bda7377f261 (diff)
Issue #411 - Fixed the tests [Gil/Jeff]
Diffstat (limited to 'web-ui/test/spec/user_settings')
-rw-r--r--web-ui/test/spec/user_settings/data/user_settings.spec.js28
-rw-r--r--web-ui/test/spec/user_settings/ui/user_settings_box.spec.js24
-rw-r--r--web-ui/test/spec/user_settings/ui/user_settings_icon.spec.js13
3 files changed, 65 insertions, 0 deletions
diff --git a/web-ui/test/spec/user_settings/data/user_settings.spec.js b/web-ui/test/spec/user_settings/data/user_settings.spec.js
new file mode 100644
index 00000000..0fff7fae
--- /dev/null
+++ b/web-ui/test/spec/user_settings/data/user_settings.spec.js
@@ -0,0 +1,28 @@
+describeComponent('user_settings/data/user_settings', function () {
+ 'use strict';
+
+ beforeEach(function () {
+ this.setupComponent();
+ });
+
+ it('gets user info from the server', function() {
+ var data = {account_email: 'user@pixelated.org'};
+ var deferred = $.Deferred();
+
+ spyOn($, 'ajax').and.returnValue(deferred);
+ this.component.getUserSettings();
+ deferred.resolve();
+
+ expect($.ajax.calls.mostRecent().args[0]).toEqual('/user-settings');
+ expect($.ajax.calls.mostRecent().args[1].type).toEqual('GET');
+ });
+
+ it('send user info when event userSettings.getInfo is trigged', function() {
+ var data = {account_email: 'user@pixelated.org'};
+ var eventSpy = spyOnEvent(document, Pixelated.events.userSettings.here);
+
+ this.component.trigger(document, Pixelated.events.userSettings.getInfo);
+
+ expect(eventSpy).toHaveBeenTriggeredOn(document);
+ });
+});
diff --git a/web-ui/test/spec/user_settings/ui/user_settings_box.spec.js b/web-ui/test/spec/user_settings/ui/user_settings_box.spec.js
new file mode 100644
index 00000000..d5919ca7
--- /dev/null
+++ b/web-ui/test/spec/user_settings/ui/user_settings_box.spec.js
@@ -0,0 +1,24 @@
+describeComponent('user_settings/ui/user_settings_box', function () {
+ 'use strict';
+
+ beforeEach(function () {
+ Pixelated.mockBloodhound();
+ this.setupComponent();
+ this.component.render(null, {});
+ });
+
+ it('is extra high when the logout button is present', function() {
+ var features = require('features');
+ spyOn(features, 'isLogoutEnabled').and.returnValue(true);
+
+ expect(this.$node.hasClass('extra-bottom-space')).toBe(true);
+ });
+
+ it('destroy it self when the close button is clicked', function () {
+ var destroyEvent = spyOnEvent(document, Pixelated.events.userSettings.destroyPopup);
+
+ this.$node.find('.fa-close').click();
+
+ expect(destroyEvent).toHaveBeenTriggeredOn(document);
+ });
+});
diff --git a/web-ui/test/spec/user_settings/ui/user_settings_icon.spec.js b/web-ui/test/spec/user_settings/ui/user_settings_icon.spec.js
new file mode 100644
index 00000000..b06cf033
--- /dev/null
+++ b/web-ui/test/spec/user_settings/ui/user_settings_icon.spec.js
@@ -0,0 +1,13 @@
+describeComponent('user_settings/ui/user_settings_icon', function () {
+ 'use strict';
+
+ beforeEach(function () {
+ this.setupComponent();
+ });
+
+ it('toggles the user settings box when clicked', function () {
+ var toggleEvent = spyOnEvent(document, Pixelated.events.ui.userSettingsBox.toggle);
+ this.$node.click();
+ expect(toggleEvent).toHaveBeenTriggeredOn(document);
+ });
+});