You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2013/06/17 14:59:44 UTC

[7/8] git commit: Namespace gym.js

Namespace gym.js


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/3e48fac0
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/3e48fac0
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/3e48fac0

Branch: refs/heads/wicket-examples-gym-tests
Commit: 3e48fac0d9987b07576561333e34c1744dc1596b
Parents: e88526b
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Mon Jun 17 13:48:31 2013 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Mon Jun 17 13:48:31 2013 +0200

----------------------------------------------------------------------
 .../src/main/webapp/js-test/lib/gym.js          | 184 ++++++++++---------
 .../src/main/webapp/js-test/tests/ajax/form.js  |   6 +-
 .../src/main/webapp/js-test/tests/echo.js       |   6 +-
 .../src/main/webapp/js-test/tests/forminput.js  |   9 +-
 .../src/main/webapp/js-test/tests/helloworld.js |   2 +-
 5 files changed, 111 insertions(+), 96 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/3e48fac0/wicket-examples/src/main/webapp/js-test/lib/gym.js
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/webapp/js-test/lib/gym.js b/wicket-examples/src/main/webapp/js-test/lib/gym.js
index 57aaf3c..51da391 100644
--- a/wicket-examples/src/main/webapp/js-test/lib/gym.js
+++ b/wicket-examples/src/main/webapp/js-test/lib/gym.js
@@ -1,106 +1,120 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 
-var load = function(url) {
-    var deferred = $q.Deferred();
-    onPageLoad(function(iframe, $) {
-        deferred.resolve(iframe, $);
-    });
-    getIframe().attr('src', url);
+;(function ($) {
 
-    return deferred;
-}
+	'use strict';
 
-var click = function($btn) {
-    var deferred = $q.Deferred();
-    onPageLoad(function(iframe, $$) {
-        deferred.resolve(iframe, $$);
-    });
+	var load = function(url) {
+	    var deferred = $.Deferred();
+	    _onPageLoad(function(iframe, $$) {
+	        deferred.resolve(iframe, $$);
+	    });
+	    _getIframe().attr('src', url);
 
-	$btn.click();
+	    return deferred;
+	}
 
-    return deferred;
-}
+	var click = function($btn) {
+	    var deferred = $.Deferred();
+	    _onPageLoad(function(iframe, $$) {
+	        deferred.resolve(iframe, $$);
+	    });
 
-// private
-var getIframe = function() {
-	return $q('#applicationFrame');
-}
+		$btn.click();
 
-// private
-var onPageLoad = function(toExecute) {
+	    return deferred;
+	}
 
-	getIframe()
-		.off('load')
-		.on('load', function() {
-			$q(this).off('load');
+	// private
+	var _getIframe = function() {
+		return $('#applicationFrame');
+	}
 
-			var newIframe, $;
+	// private
+	var _onPageLoad = function(toExecute) {
 
-			newIframe = window.frames[0];
-			$ = newIframe.jQuery || jQueryWithContext;
+		_getIframe()
+			.off('load')
+			.on('load', function() {
+				$(this).off('load');
 
-			//debug(newIframe);
+				var newIframe, $$;
 
-			toExecute.call(newIframe, $);
-		});
-};
+				newIframe = window.frames[0];
+				$$ = newIframe.jQuery || _jQueryWithContext;
 
-/**
- * Non-Ajax pages do not have jQuery so we use
- * $q with context to simulate it
- */
-// private
-var jQueryWithContext = function(selector) {
-	return $q(selector, $q(getIframe()).contents());
-};
+				//debug(newIframe);
 
-var ajaxClick = function($btn) {
-	var deferred = $q.Deferred();
-	var iframeWindow = getIframe()[0].contentWindow;
+				toExecute.call(newIframe, $$);
+			});
+	};
 
-	onAjaxComplete(iframeWindow, function($$) {
-		deferred.resolve($$);
-	});
+	/**
+	 * Non-Ajax pages do not have jQuery so we use
+	 * $ with context to simulate it
+	 */
+	// private
+	var _jQueryWithContext = function(selector) {
+		return $(selector, _getIframe().contents());
+	};
 
-	$btn.click();
+	var ajaxClick = function($btn) {
+		var deferred = $.Deferred();
+		var iframeWindow = _getIframe()[0].contentWindow;
 
-	return deferred;
-}
+		_onAjaxComplete(iframeWindow, function($$) {
+			deferred.resolve($$);
+		});
 
-/**
- * Registers a callback when Wicket Ajax call is completed
- */
-// private
-var onAjaxComplete = function(iframe, toExecute) {
-
-	// unregister any leaked subscriber
-	iframe.jQuery(iframe.document).off('/ajax/call/complete');
-	
-	// register the requested subscriber
-	iframe.Wicket.Event.subscribe('/ajax/call/complete', function(jqEvent, attributes, jqXHR, textStatus) {
-		// immediately unregister this subscriber
-		iframe.jQuery(iframe.document).off('/ajax/call/complete');
-		
-		// call back
-		var $$ = iframe.jQuery || jQueryWithContext;
-		toExecute($$);
-	});
-};
-
-// unused
-var followHref = function(iframe, $, $link) {
-	var loc = iframe.document.location;
-//	console.log('Current url', loc.href);
-//	console.log('Link', $link.selector);
-
-	if ($link.length) {
-		var newUrl = $link.attr('href');
-//		console.log('Following href: ', newUrl);
-		loc.replace(newUrl);
+		$btn.click();
+
+		return deferred;
 	}
-}
 
-var debug = function(iframe) {
-	"use strict";
+	/**
+	 * Registers a callback when Wicket Ajax call is completed
+	 */
+	// private
+	var _onAjaxComplete = function(iframe, toExecute) {
+
+		// unregister any leaked subscriber
+		iframe.jQuery(iframe.document).off('/ajax/call/complete');
+
+		// register the requested subscriber
+		iframe.Wicket.Event.subscribe('/ajax/call/complete', function(jqEvent, attributes, jqXHR, textStatus) {
+			// immediately unregister this subscriber
+			iframe.jQuery(iframe.document).off('/ajax/call/complete');
+
+			// call back
+			var $$ = iframe.jQuery || _jQueryWithContext;
+			toExecute($$);
+		});
+	};
+
+	var debug = function(iframe) {
+		"use strict";
+
+		console.log('Current url: ', iframe.window.location.href);
+	};
 
-	console.log('Current url: ', iframe.window.location.href);
-}
+	window.gym = {
+		load: load,
+		click: click,
+		ajaxClick: ajaxClick
+	};
+})($q);
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/wicket/blob/3e48fac0/wicket-examples/src/main/webapp/js-test/tests/ajax/form.js
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/webapp/js-test/tests/ajax/form.js b/wicket-examples/src/main/webapp/js-test/tests/ajax/form.js
index e659556..e8ee1be 100644
--- a/wicket-examples/src/main/webapp/js-test/tests/ajax/form.js
+++ b/wicket-examples/src/main/webapp/js-test/tests/ajax/form.js
@@ -6,14 +6,14 @@ $q(document).ready(function() {
 	asyncTest('successful ajax form submit', function () {
 		expect(3);
 
-		load('/ajax/form').then(function($) {
+		gym.load('/ajax/form').then(function($) {
 
 			// enter just the name field
 			var $nameInput = $('input[name=name]');
 			var name = 'Ajax form name';
 			$nameInput.val(name);
 
-			ajaxClick($('input[name=ajax-button]')).then(function($$) {
+			gym.ajaxClick($('input[name=ajax-button]')).then(function($$) {
 
 				// an error feedback message that email is mandatory is expected
 				var $feedback = $$('li.feedbackPanelERROR > span');
@@ -25,7 +25,7 @@ $q(document).ready(function() {
 				var email = 'contact@example.com';
 				$emailInput.val(email);
 
-				ajaxClick($$('input[name=ajax-button]')).then(function($$$) {
+				gym.ajaxClick($$('input[name=ajax-button]')).then(function($$$) {
 
 					// the feedback panel must be empty now
 					var $feedback = $$$('li.feedbackPanelERROR > span');

http://git-wip-us.apache.org/repos/asf/wicket/blob/3e48fac0/wicket-examples/src/main/webapp/js-test/tests/echo.js
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/webapp/js-test/tests/echo.js b/wicket-examples/src/main/webapp/js-test/tests/echo.js
index 82017e3..b4a6c63 100644
--- a/wicket-examples/src/main/webapp/js-test/tests/echo.js
+++ b/wicket-examples/src/main/webapp/js-test/tests/echo.js
@@ -6,13 +6,13 @@ $q(document).ready(function() {
 	asyncTest('echo', function () {
 		expect(2);
 
-		load('/echo').then(function($) {
+		gym.load('/echo').then(function($) {
 
 			var $messageInput = $('input[name=msgInput]');
 			var message = 'Hello Functional QUnit';
 			$messageInput.val(message);
-		
-			click($('input[type=submit]')).then(function($$) {
+
+			gym.click($('input[type=submit]')).then(function($$) {
 
 				var $msg = $$('#msg');
 				equal($msg.length, 1, 'The entered message is here');

http://git-wip-us.apache.org/repos/asf/wicket/blob/3e48fac0/wicket-examples/src/main/webapp/js-test/tests/forminput.js
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/webapp/js-test/tests/forminput.js b/wicket-examples/src/main/webapp/js-test/tests/forminput.js
index 284bf85..289ac83 100644
--- a/wicket-examples/src/main/webapp/js-test/tests/forminput.js
+++ b/wicket-examples/src/main/webapp/js-test/tests/forminput.js
@@ -6,13 +6,13 @@ $q(document).ready(function() {
 	asyncTest('Change StringProperty', function () {
 		expect(2);
 
-		load('/forminput').then(function($) {
+		gym.load('/forminput').then(function($) {
 
 			var $stringPropertyInput = $('#stringProperty');
 			var text = 'qunit test value';
 			$stringPropertyInput.val(text);
 
-			click($('input[value=save]')).then(function($$) {
+			gym.click($('input[value=save]')).then(function($$) {
 
 				var $feedback = $$('li.feedbackPanelINFO > span');
 				equal($feedback.length, 1, 'The feedback is here');
@@ -26,13 +26,14 @@ $q(document).ready(function() {
 	asyncTest('Change the locale', function () {
 		expect(2);
 
-		load('/forminput').then(function($) {
+		gym.load('/forminput').then(function($) {
 
 			var $select = $('select[name=localeSelect]');
 			var locale = '2'; // German
 
 			$select.val(locale);
-			click($('input[value=save]')).then(function($$) {
+
+			gym.click($('input[value=save]')).then(function($$) {
 
 				var $integerInRangeProperty = $$('label[for=integerInRangeProperty]');
 				equal($integerInRangeProperty.length, 1, 'The label for integerInRangeProperty is here');

http://git-wip-us.apache.org/repos/asf/wicket/blob/3e48fac0/wicket-examples/src/main/webapp/js-test/tests/helloworld.js
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/webapp/js-test/tests/helloworld.js b/wicket-examples/src/main/webapp/js-test/tests/helloworld.js
index 10b96cb..e8b13c2 100644
--- a/wicket-examples/src/main/webapp/js-test/tests/helloworld.js
+++ b/wicket-examples/src/main/webapp/js-test/tests/helloworld.js
@@ -6,7 +6,7 @@ $q(document).ready(function() {
 	asyncTest('hello world', function () {
 		expect(2);
 
-		load('/helloworld').then(function($) {
+		gym.load('/helloworld').then(function($) {
 
 			var $message = $('#message');
 			equal($message.length, 1, "The greeting is there");