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 2015/12/13 01:30:08 UTC

wicket git commit: Fix the Gym test for Ajax Form example

Repository: wicket
Updated Branches:
  refs/heads/master ea6cbc11a -> 4b99316d1


Fix the Gym test for Ajax Form example


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

Branch: refs/heads/master
Commit: 4b99316d160c2a1a1772f88838b4670e017e2329
Parents: ea6cbc1
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Sun Dec 13 01:29:32 2015 +0100
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Sun Dec 13 01:29:32 2015 +0100

----------------------------------------------------------------------
 .../src/main/webapp/js-test/all.html            |  1 +
 .../src/main/webapp/js-test/lib/gym.js          | 16 ++++++++++++-
 .../src/main/webapp/js-test/tests/ajax/form.js  | 25 ++++++++++++++++----
 3 files changed, 36 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/4b99316d/wicket-examples/src/main/webapp/js-test/all.html
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/webapp/js-test/all.html b/wicket-examples/src/main/webapp/js-test/all.html
index 658ec21..7396b8f 100644
--- a/wicket-examples/src/main/webapp/js-test/all.html
+++ b/wicket-examples/src/main/webapp/js-test/all.html
@@ -22,6 +22,7 @@
 	<script type="text/javascript" src="tests/forminput.js"></script>
 
 	<script type="text/javascript" src="tests/ajax/form.js"></script>
+
 	<script type="text/javascript" src="tests/cdi/injection.js"></script>
 	<script type="text/javascript" src="tests/cdi/conversation.js"></script>
 	<script type="text/javascript" src="tests/cdi/auto-conversation.js"></script>

http://git-wip-us.apache.org/repos/asf/wicket/blob/4b99316d/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 34dd842..aee036f 100644
--- a/wicket-examples/src/main/webapp/js-test/lib/gym.js
+++ b/wicket-examples/src/main/webapp/js-test/lib/gym.js
@@ -91,6 +91,19 @@
 		return deferred.promise();
 	}
 
+	var ajaxKeydown = function($el) {
+		var deferred = $.Deferred();
+		var iframeWindow = _getIframe()[0].contentWindow;
+
+		_onAjaxComplete(iframeWindow, function($$) {
+			deferred.resolve($$);
+		});
+
+		$el.keydown();
+
+		return deferred.promise();
+	}
+
 	/**
 	 * Registers a callback when Wicket Ajax call is completed
 	 */
@@ -118,6 +131,7 @@
 	window.gym = {
 		load: load,
 		click: click,
-		ajaxClick: ajaxClick
+		ajaxClick: ajaxClick,
+		ajaxKeydown: ajaxKeydown
 	};
 })($q);

http://git-wip-us.apache.org/repos/asf/wicket/blob/4b99316d/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 8082e7f..2fcd03a 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
@@ -24,16 +24,32 @@ $q(document).ready(function() {
 	module('Ajax');
 
 	asyncTest('successful ajax form submit', function () {
-		expect(3);
+		expect(6);
+
+		var $nameInput, $emailInput;
 
 		gym.load('/ajax/form').then(function($) {
+			$nameInput = $('input[name="p::name"]');
+			$emailInput = $('input[name=email]');
 
 			// enter just the name field
-			var $nameInput = $('input[name="p::name"]');
+			$nameInput.focus();
+			var name = 'Aj';
+			$nameInput.val(name);
+
+			return gym.ajaxKeydown($emailInput);
+		}).then(function($) {
+
+			// an error feedback message that email is mandatory is expected
+			var $feedback = $('li.feedbackPanelERROR > span');
+			equal($feedback.length, 2, 'The error feedback message that name is too short and the email is missing');
+			equal($feedback.eq(0).text(), 'Name must be at least 4 characters', 'The error feedback matches');
+			equal($feedback.eq(1).text(), 'Email is required', 'The error feedback matches');
+
 			var name = 'Ajax form name';
 			$nameInput.val(name);
 
-			return gym.ajaxClick($('input[name=ajax-button]'));
+			return gym.ajaxKeydown($emailInput);
 		}).then(function($) {
 
 			// an error feedback message that email is mandatory is expected
@@ -42,11 +58,10 @@ $q(document).ready(function() {
 			equal($feedback.text(), 'Email is required', 'The error feedback matches');
 
 			// enter the email field too
-			var $emailInput = $('input[name=email]');
 			var email = 'contact@example.com';
 			$emailInput.val(email);
 
-			return gym.ajaxClick($('input[name=ajax-button]'));
+			return gym.ajaxKeydown($nameInput);
 		}).then(function($) {
 
 			// the feedback panel must be empty now