]> source.dussan.org Git - nextcloud-server.git/commitdiff
Added unit test
authorRoeland Jago Douma <roeland@famdouma.nl>
Thu, 12 Feb 2015 15:49:31 +0000 (16:49 +0100)
committerRoeland Jago Douma <roeland@famdouma.nl>
Thu, 12 Feb 2015 15:50:14 +0000 (16:50 +0100)
core/js/share.js
core/js/tests/specs/shareSpec.js

index 1e86cddb89d25288aa386509abe11fdd4d6d5a25..e708ed587c66cfc2175a103dbe45154101774512 100644 (file)
@@ -656,7 +656,7 @@ OC.Share={
                        var html = '<li style="clear: both;" data-share-type="'+escapeHTML(shareType)+'" data-share-with="'+escapeHTML(shareWith)+'" title="' + escapeHTML(shareWith) + '">';
                        var showCrudsButton;
                        html += '<a href="#" class="unshare"><img class="svg" alt="'+t('core', 'Unshare')+'" title="'+t('core', 'Unshare')+'" src="'+OC.imagePath('core', 'actions/delete')+'"/></a>';
-                       if (shareType == OC.Share.SHARE_TYPE_USER) {
+                       if (shareType === OC.Share.SHARE_TYPE_USER) {
                                html += '<div id="avatar-' + escapeHTML(shareWith) + '" class="avatar"></div>';
                        } else {
                                html += '<div class="avatar" style="padding-right: 32px"></div>';
@@ -692,7 +692,7 @@ OC.Share={
                        html += '</div>';
                        html += '</li>';
                        html = $(html).appendTo('#shareWithList');
-                       if (shareType == OC.Share.SHARE_TYPE_USER) {
+                       if (shareType === OC.Share.SHARE_TYPE_USER) {
                                $('#avatar-' + escapeHTML(shareWith)).avatar(escapeHTML(shareWith), 32);
                        }
                        // insert cruds button into last label element
index 7eb22261e1034ca44b7ade4a1302a6e174166d4b..21d93d4a4b086ff8d108f0141dd8010293a6d403 100644 (file)
@@ -26,6 +26,7 @@ describe('OC.Share tests', function() {
                var oldAppConfig;
                var loadItemStub;
                var autocompleteStub;
+               var avatarStub;
 
                beforeEach(function() {
                        $('#testArea').append($('<div id="shareContainer"></div>'));
@@ -54,6 +55,8 @@ describe('OC.Share tests', function() {
                                var $el = $('<div></div>').data('ui-autocomplete', {});
                                return $el;
                        });
+
+                       avatarStub = sinon.stub($.fn, 'avatar');
                });
                afterEach(function() {
                        /* jshint camelcase:false */
@@ -61,6 +64,7 @@ describe('OC.Share tests', function() {
                        loadItemStub.restore();
 
                        autocompleteStub.restore();
+                       avatarStub.restore();
                        $('#dropdown').remove();
                });
                it('calls loadItem with the correct arguments', function() {
@@ -405,6 +409,37 @@ describe('OC.Share tests', function() {
                                });
                        });
                });
+               describe('check for avatar', function() {
+                       beforeEach(function() {
+                               loadItemStub.returns({
+                                       reshare: [],
+                                       shares: [{
+                                               id: 100,
+                                               item_source: 123,
+                                               permissions: 31,
+                                               share_type: OC.Share.SHARE_TYPE_USER,
+                                               share_with: 'user1',
+                                               share_with_displayname: 'User One'
+                                       }]
+                               });
+                               OC.Share.showDropDown(
+                                       'file',
+                                       123,
+                                       $container,
+                                       true,
+                                       31,
+                                       'shared_file_name.txt'
+                               );
+                       });
+                       it('test correct function call', function() {
+                               expect(avatarStub.calledOnce).toEqual(true);
+                               var args = avatarStub.getCall(0).args;
+
+                               expect($('#avatar-user1')[0]).toEqual(jasmine.anything());
+                               expect(args.length).toEqual(2);
+                               expect(args[0]).toEqual('user1');
+                       });
+               });
                describe('"sharesChanged" event', function() {
                        var autocompleteOptions;
                        var handler;