jenkins-bot has submitted this change and it was merged.
Change subject: Added $.wikibase.sitelinkview.isEmpty()
......................................................................
Added $.wikibase.sitelinkview.isEmpty()
Change-Id: I5eb7e1a884bc87fa0a43fa842065700d8195a80a
---
M lib/resources/jquery.wikibase/jquery.wikibase.sitelinkview.js
M lib/tests/qunit/jquery.wikibase/jquery.wikibase.sitelinkview.tests.js
2 files changed, 66 insertions(+), 0 deletions(-)
Approvals:
Thiemo Mättig (WMDE): Looks good to me, approved
jenkins-bot: Verified
diff --git a/lib/resources/jquery.wikibase/jquery.wikibase.sitelinkview.js
b/lib/resources/jquery.wikibase/jquery.wikibase.sitelinkview.js
index 12a5959..438ddfa 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.sitelinkview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.sitelinkview.js
@@ -271,6 +271,19 @@
/**
* @return {boolean}
*/
+ isEmpty: function() {
+ if( !this._isInEditMode ) {
+ return !this.options.value;
+ }
+
+ return !this.options.value
+ && $.trim( this.$link.find( 'input' ).val() ) === ''
+ && $.trim( this.$siteId.find( 'input' ).val() ) === '';
+ },
+
+ /**
+ * @return {boolean}
+ */
isValid: function() {
return !!this.value();
},
diff --git
a/lib/tests/qunit/jquery.wikibase/jquery.wikibase.sitelinkview.tests.js
b/lib/tests/qunit/jquery.wikibase/jquery.wikibase.sitelinkview.tests.js
index 1ccd4ee..a1af7cc 100644
--- a/lib/tests/qunit/jquery.wikibase/jquery.wikibase.sitelinkview.tests.js
+++ b/lib/tests/qunit/jquery.wikibase/jquery.wikibase.sitelinkview.tests.js
@@ -214,6 +214,59 @@
);
} );
+ QUnit.test( 'isEmpty()', function( assert ) {
+ var siteLink = new wikibase.datamodel.SiteLink( 'enwiki', 'Main
Page' ),
+ $sitelinkview = createSitelinkview(),
+ sitelinkview = $sitelinkview.data( 'sitelinkview' );
+
+ assert.ok(
+ sitelinkview.isEmpty(),
+ 'isEmpty() returns TRUE when no site link is set and
the widget is not in edit mode.'
+ );
+
+ sitelinkview.startEditing();
+
+ assert.ok(
+ sitelinkview.isEmpty(),
+ 'Verified isEmpty() returning TRUE when no site link is
set, the widget is in edit '
+ + 'and input elements are empty.'
+ );
+
+ $sitelinkview.find( ':wikibase-siteselector' ).val( 'site' );
+
+ assert.ok(
+ !sitelinkview.isEmpty(),
+ 'Widget is not empty when the site selector is filled
with input.'
+ );
+
+ $sitelinkview.find( ':wikibase-siteselector' ).val( '' );
+ $sitelinkview.find( ':wikibase-pagesuggester' ).val( 'page' );
+
+ assert.ok(
+ !sitelinkview.isEmpty(),
+ 'Widget is not empty when the page suggester is filled
with input.'
+ );
+
+ $sitelinkview = createSitelinkview( {
+ value: siteLink
+ } );
+ sitelinkview = $sitelinkview.data( 'sitelinkview' );
+
+ assert.ok(
+ !sitelinkview.isEmpty(),
+ 'isEmpty() returns FALSE when a site link is set
initially.'
+ );
+
+ sitelinkview.startEditing();
+ $sitelinkview.find( ':wikibase-pagesuggester' ).val( '' );
+
+ assert.ok(
+ !sitelinkview.isEmpty(),
+ 'isEmpty() returns FALSE when a site link is set
initially although the page suggester '
+ + ' input is cleared in edit mode.'
+ );
+ } );
+
QUnit.test( 'isValid()', function( assert ) {
var $sitelinkview = createSitelinkview(),
sitelinkview = $sitelinkview.data( 'sitelinkview' );
--
To view, visit https://gerrit.wikimedia.org/r/168081
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I5eb7e1a884bc87fa0a43fa842065700d8195a80a
Gerrit-PatchSet: 3
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Henning Snater <[email protected]>
Gerrit-Reviewer: Thiemo Mättig (WMDE) <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits