integration tests: remove jQuery
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/090-tree/01-select/Tree_Select.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/090-tree/01-select/Tree_Select.test.js
index f2f8c8d..6ae2232 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/090-tree/01-select/Tree_Select.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/090-tree/01-select/Tree_Select.test.js
@@ -33,7 +33,7 @@
});
TTT.waitForResponse();
TTT.asserts(1, function () {
- assert.equal(inputFn(), undefined);
+ assert.equal(inputFn(), null);
});
TTT.action(function () {
selectableSingleFn().checked = true;
@@ -41,7 +41,7 @@
});
TTT.waitForResponse();
TTT.asserts(1, function () {
- assert.notEqual(inputFn(), undefined);
+ assert.notEqual(inputFn(), null);
});
TTT.action(function () {
musicFn().checked = true;
@@ -77,7 +77,7 @@
});
TTT.waitForResponse();
TTT.asserts(1, function () {
- assert.equal(inputFn(), undefined);
+ assert.equal(inputFn(), null);
});
TTT.action(function () {
selectableSingleLeafOnlyFn().checked = true;
@@ -85,7 +85,7 @@
});
TTT.waitForResponse();
TTT.asserts(1, function () {
- assert.notEqual(inputFn(), undefined);
+ assert.notEqual(inputFn(), null);
});
TTT.action(function () {
classicFn().checked = true;
@@ -121,7 +121,7 @@
});
TTT.waitForResponse();
TTT.asserts(1, function () {
- assert.equal(inputFn(), undefined);
+ assert.equal(inputFn(), null);
});
TTT.action(function () {
selectableMultiFn().checked = true;
@@ -129,7 +129,7 @@
});
TTT.waitForResponse();
TTT.asserts(1, function () {
- assert.notEqual(inputFn(), undefined);
+ assert.notEqual(inputFn(), null);
});
TTT.action(function () {
musicFn().checked = true;
@@ -173,7 +173,7 @@
});
TTT.waitForResponse();
TTT.asserts(1, function () {
- assert.equal(inputFn(), undefined);
+ assert.equal(inputFn(), null);
});
TTT.action(function () {
selectableMultiLeafOnlyFn().checked = true;
@@ -181,7 +181,7 @@
});
TTT.waitForResponse();
TTT.asserts(1, function () {
- assert.notEqual(inputFn(), undefined);
+ assert.notEqual(inputFn(), null);
});
TTT.action(function () {
classicFn().checked = true;
@@ -226,7 +226,7 @@
});
TTT.waitForResponse();
TTT.asserts(1, function () {
- assert.equal(inputFn(), undefined);
+ assert.equal(inputFn(), null);
});
TTT.action(function () {
selectableMultiCascadeFn().checked = true;
@@ -234,7 +234,7 @@
});
TTT.waitForResponse();
TTT.asserts(1, function () {
- assert.notEqual(inputFn(), undefined);
+ assert.notEqual(inputFn(), null);
});
TTT.action(function () {
musicFn().checked = true;
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/35-deprecated/15-suggest-method/Suggest_Method.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/35-deprecated/15-suggest-method/Suggest_Method.test.js
index f1dd79d..69baf98 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/35-deprecated/15-suggest-method/Suggest_Method.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/35-deprecated/15-suggest-method/Suggest_Method.test.js
@@ -15,46 +15,48 @@
* limitations under the License.
*/
-import {jQueryFrame, jQueryFrameFn} from "/script/tobago-test.js";
+import {testFrameQuerySelectorAllFn, testFrameQuerySelectorFn} from "/script/tobago-test.js";
import {TobagoTestTool} from "/tobago/test/tobago-test-tool.js";
QUnit.test("Deprecated: 'Ma'", function (assert) {
- var inputString = "Ma";
- var expectedLength = 4;
+ let inputString = "Ma";
+ let expectedLength = 4;
- var inFn = jQueryFrameFn("#page\\:mainForm\\:deprecated\\:\\:field");
- var suggestionsFn = getSuggestions("#page\\:mainForm\\:deprecated");
+ let inFn = testFrameQuerySelectorFn("#page\\:mainForm\\:deprecated\\:\\:field");
+ let suggestionsFn = getSuggestions("#page\\:mainForm\\:deprecated");
- var TTT = new TobagoTestTool(assert);
+ let TTT = new TobagoTestTool(assert);
TTT.action(function () {
- inFn().val(inputString).trigger('input');
+ inFn().value = inputString;
+ inFn().dispatchEvent(new Event('input'));
});
TTT.waitForResponse();
TTT.asserts(expectedLength + 1, function () {
assert.equal(suggestionsFn().length, expectedLength);
for (let i = 0; i < expectedLength; i++) {
- assert.ok(suggestionsFn().eq(i).find("strong").text().toUpperCase().indexOf(inputString.toUpperCase()) >= 0);
+ assert.ok(suggestionsFn().item(i).querySelector("strong").textContent.toUpperCase().indexOf(inputString.toUpperCase()) >= 0);
}
});
TTT.startTest();
});
QUnit.test("Replacement: 'Ma'", function (assert) {
- var inputString = "Ma";
- var expectedLength = 4;
+ let inputString = "Ma";
+ let expectedLength = 4;
- var inFn = jQueryFrameFn("#page\\:mainForm\\:replacement\\:\\:field");
- var suggestionsFn = getSuggestions("#page\\:mainForm\\:replacement");
+ let inFn = testFrameQuerySelectorFn("#page\\:mainForm\\:replacement\\:\\:field");
+ let suggestionsFn = getSuggestions("#page\\:mainForm\\:replacement");
- var TTT = new TobagoTestTool(assert);
+ let TTT = new TobagoTestTool(assert);
TTT.action(function () {
- inFn().val(inputString).trigger('input');
+ inFn().value = inputString;
+ inFn().dispatchEvent(new Event('input'));
});
TTT.waitForResponse();
TTT.asserts(expectedLength + 1, function () {
assert.equal(suggestionsFn().length, expectedLength);
for (let i = 0; i < expectedLength; i++) {
- assert.ok(suggestionsFn().eq(i).find("strong").text().toUpperCase().indexOf(inputString.toUpperCase()) >= 0);
+ assert.ok(suggestionsFn().item(i).querySelector("strong").textContent.toUpperCase().indexOf(inputString.toUpperCase()) >= 0);
}
});
TTT.startTest();
@@ -65,6 +67,6 @@
}
function getSuggestions(id) {
- return jQueryFrameFn(escapeClientId(
- jQueryFrame(id + " tobago-suggest").attr("id") + "::popup") + " .tt-suggestion");
+ return testFrameQuerySelectorAllFn(escapeClientId(
+ testFrameQuerySelectorFn(id + " tobago-suggest")().id + "::popup") + " .tt-suggestion");
}
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4600-gridLayout/90-style-tag/Style_Tag.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4600-gridLayout/90-style-tag/Style_Tag.test.js
index 82580bc..361a35a 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4600-gridLayout/90-style-tag/Style_Tag.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4600-gridLayout/90-style-tag/Style_Tag.test.js
@@ -15,23 +15,23 @@
* limitations under the License.
*/
-import {jQueryFrameFn} from "/script/tobago-test.js";
+import {testFrameQuerySelectorFn} from "/script/tobago-test.js";
import {TobagoTestTool} from "/tobago/test/tobago-test-tool.js";
QUnit.test("Style tag inside grid layout", function (assert) {
- var outputFn = jQueryFrameFn("#page\\:mainForm\\:output .tobago-out");
- var buttonFn = jQueryFrameFn("#page\\:mainForm\\:submitButton");
+ let outputFn = testFrameQuerySelectorFn("#page\\:mainForm\\:output .tobago-out");
+ let buttonFn = testFrameQuerySelectorFn("#page\\:mainForm\\:submitButton");
- var TTT = new TobagoTestTool(assert);
+ let TTT = new TobagoTestTool(assert);
TTT.asserts(1, function () {
- assert.ok(outputFn().hasClass("text-warning"));
+ assert.ok(outputFn().classList.contains("text-warning"));
});
TTT.action(function () {
buttonFn().click();
});
TTT.waitForResponse();
TTT.asserts(1, function () {
- assert.ok(outputFn().hasClass("text-warning"));
+ assert.ok(outputFn().classList.contains("text-warning"));
});
TTT.startTest();
});
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4950-severity/Severity.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4950-severity/Severity.test.js
index 5c295ea..5e9409e 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4950-severity/Severity.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4950-severity/Severity.test.js
@@ -15,35 +15,35 @@
* limitations under the License.
*/
-import {jQueryFrameFn} from "/script/tobago-test.js";
+import {testFrameQuerySelectorFn} from "/script/tobago-test.js";
import {TobagoTestTool} from "/tobago/test/tobago-test-tool.js";
QUnit.test("Check severity CSS classes", function (assert) {
- var submitButtonFn = jQueryFrameFn("#page\\:mainForm\\:submit");
- var fatalInputFieldFn = jQueryFrameFn("#page\\:mainForm\\:fatal\\:\\:field");
- var errorInputFieldFn = jQueryFrameFn("#page\\:mainForm\\:error\\:\\:field");
- var warnInputFieldFn = jQueryFrameFn("#page\\:mainForm\\:warn\\:\\:field");
- var infoInputFieldFn = jQueryFrameFn("#page\\:mainForm\\:info\\:\\:field");
- var fatalButtonFn = jQueryFrameFn("#page\\:mainForm\\:fatal .tobago-messages-button");
- var errorButtonFn = jQueryFrameFn("#page\\:mainForm\\:error .tobago-messages-button");
- var warnButtonFn = jQueryFrameFn("#page\\:mainForm\\:warn .tobago-messages-button");
- var infoButtonFn = jQueryFrameFn("#page\\:mainForm\\:info .tobago-messages-button");
+ let submitButtonFn = testFrameQuerySelectorFn("#page\\:mainForm\\:submit");
+ let fatalInputFieldFn = testFrameQuerySelectorFn("#page\\:mainForm\\:fatal\\:\\:field");
+ let errorInputFieldFn = testFrameQuerySelectorFn("#page\\:mainForm\\:error\\:\\:field");
+ let warnInputFieldFn = testFrameQuerySelectorFn("#page\\:mainForm\\:warn\\:\\:field");
+ let infoInputFieldFn = testFrameQuerySelectorFn("#page\\:mainForm\\:info\\:\\:field");
+ let fatalButtonFn = testFrameQuerySelectorFn("#page\\:mainForm\\:fatal .tobago-messages-button");
+ let errorButtonFn = testFrameQuerySelectorFn("#page\\:mainForm\\:error .tobago-messages-button");
+ let warnButtonFn = testFrameQuerySelectorFn("#page\\:mainForm\\:warn .tobago-messages-button");
+ let infoButtonFn = testFrameQuerySelectorFn("#page\\:mainForm\\:info .tobago-messages-button");
- var TTT = new TobagoTestTool(assert);
+ let TTT = new TobagoTestTool(assert);
TTT.action(function () {
submitButtonFn().click();
});
TTT.waitForResponse();
TTT.asserts(8, function () {
- assert.ok(fatalInputFieldFn().hasClass("border-danger"));
- assert.ok(errorInputFieldFn().hasClass("border-danger"));
- assert.ok(warnInputFieldFn().hasClass("border-warning"));
- assert.ok(infoInputFieldFn().hasClass("border-info"));
+ assert.ok(fatalInputFieldFn().classList.contains("border-danger"));
+ assert.ok(errorInputFieldFn().classList.contains("border-danger"));
+ assert.ok(warnInputFieldFn().classList.contains("border-warning"));
+ assert.ok(infoInputFieldFn().classList.contains("border-info"));
- assert.ok(fatalButtonFn().hasClass("btn-danger"));
- assert.ok(errorButtonFn().hasClass("btn-danger"));
- assert.ok(warnButtonFn().hasClass("btn-warning"));
- assert.ok(infoButtonFn().hasClass("btn-info"));
+ assert.ok(fatalButtonFn().classList.contains("btn-danger"));
+ assert.ok(errorButtonFn().classList.contains("btn-danger"));
+ assert.ok(warnButtonFn().classList.contains("btn-warning"));
+ assert.ok(infoButtonFn().classList.contains("btn-info"));
});
TTT.startTest();
});
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/50000-java/10-rendererBase-getCurrentValue/RendererBase_GetCurrentValue.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/50000-java/10-rendererBase-getCurrentValue/RendererBase_GetCurrentValue.test.js
index a646754..92f38d1 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/50000-java/10-rendererBase-getCurrentValue/RendererBase_GetCurrentValue.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/50000-java/10-rendererBase-getCurrentValue/RendererBase_GetCurrentValue.test.js
@@ -15,11 +15,11 @@
* limitations under the License.
*/
-import {jQueryFrame} from "/script/tobago-test.js";
+import {testFrameQuerySelectorFn} from "/script/tobago-test.js";
function test(assert, idSuffix, expectedText) {
- var $out = jQueryFrame("#page\\:mainForm\\:" + idSuffix);
- assert.equal($out.text().trim(), expectedText);
+ let outFn = testFrameQuerySelectorFn("#page\\:mainForm\\:" + idSuffix);
+ assert.equal(outFn().textContent.trim(), expectedText);
}
QUnit.test("formatted values: out string", function (assert) {
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/6000-event/Event.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/6000-event/Event.test.js
index f282b16..afa7a5c 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/6000-event/Event.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/6000-event/Event.test.js
@@ -15,77 +15,72 @@
* limitations under the License.
*/
-import {jQueryFrame, jQueryFrameFn} from "/script/tobago-test.js";
+import {testFrameQuerySelectorAllFn, testFrameQuerySelectorFn} from "/script/tobago-test.js";
import {TobagoTestTool} from "/tobago/test/tobago-test-tool.js";
QUnit.test("tc:button", function (assert) {
- var eventNames = ["click", "dblclick", "focus", "blur"];
- var eventComponentFn = jQueryFrameFn("#page\\:mainForm\\:buttonevent");
- var ajaxComponentFn = jQueryFrameFn("#page\\:mainForm\\:buttonajax");
+ let eventNames = ["click", "dblclick", "focus", "blur"];
+ let eventComponentFn = testFrameQuerySelectorFn("#page\\:mainForm\\:buttonevent");
+ let ajaxComponentFn = testFrameQuerySelectorFn("#page\\:mainForm\\:buttonajax");
testEvent(assert, "button", eventNames, eventComponentFn, ajaxComponentFn, null);
});
QUnit.test("tc:in", function (assert) {
- var eventNames = ["change", "click", "dblclick", "focus", "blur"];
- var eventComponentFn = jQueryFrameFn("#page\\:mainForm\\:inevent\\:\\:field");
- var ajaxComponentFn = jQueryFrameFn("#page\\:mainForm\\:inajax\\:\\:field");
- var changeValue = function (componentFn) {
- var oldValue = componentFn().val();
- var newValue = "hello";
+ let eventNames = ["change", "click", "dblclick", "focus", "blur"];
+ let eventComponentFn = testFrameQuerySelectorFn("#page\\:mainForm\\:inevent\\:\\:field");
+ let ajaxComponentFn = testFrameQuerySelectorFn("#page\\:mainForm\\:inajax\\:\\:field");
+ let changeValue = function (componentFn) {
+ let oldValue = componentFn().value;
+ let newValue = "hello";
if (oldValue === "hello") {
newValue = "hello there!"
}
- componentFn().val(newValue);
+ componentFn().value = newValue;
};
testEvent(assert, "in", eventNames, eventComponentFn, ajaxComponentFn, changeValue);
});
QUnit.test("tc:row", function (assert) {
- var eventNames = ["click", "dblclick"];
- var eventComponentFn = jQueryFrameFn("#page\\:mainForm\\:sheetevent\\:0\\:selectPlanet");
- var ajaxComponentFn = jQueryFrameFn("#page\\:mainForm\\:sheetajax\\:0\\:selectPlanet");
+ let eventNames = ["click", "dblclick"];
+ let eventComponentFn = testFrameQuerySelectorFn("#page\\:mainForm\\:sheetevent\\:0\\:selectPlanet");
+ let ajaxComponentFn = testFrameQuerySelectorFn("#page\\:mainForm\\:sheetajax\\:0\\:selectPlanet");
testEvent(assert, "row", eventNames, eventComponentFn, ajaxComponentFn, null);
});
QUnit.test("tc:selectBooleanCheckbox", function (assert) {
- var eventNames = ["change", "click", "dblclick", "focus", "blur"];
- var eventComponentFn = jQueryFrameFn("#page\\:mainForm\\:selectBooleanCheckboxevent\\:\\:field");
- var ajaxComponentFn = jQueryFrameFn("#page\\:mainForm\\:selectBooleanCheckboxajax\\:\\:field");
- var changeValue = function (componentFn) {
- var currentEvent = jQueryFrame("#page\\:mainForm\\:outEventName span").text();
- if (currentEvent !== "click") {
- componentFn().prop("checked", !componentFn().prop("checked"));
- }
+ let eventNames = ["change", "click", "dblclick", "focus", "blur"];
+ let eventComponentFn = testFrameQuerySelectorFn("#page\\:mainForm\\:selectBooleanCheckboxevent\\:\\:field");
+ let ajaxComponentFn = testFrameQuerySelectorFn("#page\\:mainForm\\:selectBooleanCheckboxajax\\:\\:field");
+ let changeValue = function (componentFn) {
+ componentFn().checked = !componentFn().checked;
};
testEvent(assert, "selectBooleanCheckbox", eventNames, eventComponentFn, ajaxComponentFn, changeValue);
});
QUnit.test("tc:textarea", function (assert) {
- var eventNames = ["change", "click", "dblclick", "focus", "blur"];
- var eventComponentFn = jQueryFrameFn("#page\\:mainForm\\:textareaevent\\:\\:field");
- var ajaxComponentFn = jQueryFrameFn("#page\\:mainForm\\:textareaajax\\:\\:field");
- var changeValue = function (componentFn) {
- var oldValue = componentFn().val();
- var newValue = "hello";
+ let eventNames = ["change", "click", "dblclick", "focus", "blur"];
+ let eventComponentFn = testFrameQuerySelectorFn("#page\\:mainForm\\:textareaevent\\:\\:field");
+ let ajaxComponentFn = testFrameQuerySelectorFn("#page\\:mainForm\\:textareaajax\\:\\:field");
+ let changeValue = function (componentFn) {
+ let oldValue = componentFn().value;
+ let newValue = "hello";
if (oldValue === "hello") {
newValue = "hello there!"
}
- componentFn().val(newValue);
+ componentFn().value = newValue;
};
testEvent(assert, "textarea", eventNames, eventComponentFn, ajaxComponentFn, changeValue);
});
function testEvent(assert, componentName, eventNames, eventComponentFn, ajaxComponentFn, changeValueFunc) {
- var oldActionCount;
- var oldActionListenerCount;
- var oldAjaxListenerCount;
- var oldValueChangeListenerCount;
- var oldTimestamp;
+ let oldActionCount;
+ let oldActionListenerCount;
+ let oldAjaxListenerCount;
+ let oldValueChangeListenerCount;
+ let oldTimestamp;
- var TTT = new TobagoTestTool(assert);
- for (var i = 0; i < eventNames.length; i++) {
- // need 'let' here, otherwise all tests are executed with last eventName in array
- // also work in IE11
+ let TTT = new TobagoTestTool(assert);
+ for (let i = 0; i < eventNames.length; i++) {
let eventName = eventNames[i];
TTT.action(function () {
@@ -102,7 +97,7 @@
if (changeValueFunc !== null) {
changeValueFunc(eventComponentFn);
}
- eventComponentFn().trigger(eventName);
+ eventComponentFn().dispatchEvent(new Event(eventName));
});
TTT.waitForResponse();
TTT.asserts(5, function () {
@@ -128,7 +123,7 @@
if (changeValueFunc !== null) {
changeValueFunc(ajaxComponentFn);
}
- ajaxComponentFn().trigger(eventName);
+ ajaxComponentFn().dispatchEvent(new Event(eventName));
});
TTT.waitForResponse();
TTT.asserts(5, function () {
@@ -149,12 +144,14 @@
}
function activateComponent(componentName, eventName) {
- jQueryFrame("#page\\:mainForm\\:componentTable .tobago-sheet-row").each(function () {
- if (jQuery(this).find("td").eq(0).find(".tobago-out").text() === componentName) {
- jQuery(this).find("button").each(function () {
- var id = jQuery(this).attr("id");
+ const rows = testFrameQuerySelectorAllFn("#page\\:mainForm\\:componentTable .tobago-sheet-row")();
+ Array.prototype.forEach.call(rows, function (element, i) {
+ if (element.querySelectorAll("td").item(0).querySelector(".tobago-out").textContent === componentName) {
+ const buttons = element.querySelectorAll("button");
+ Array.prototype.forEach.call(buttons, function (element, i) {
+ let id = element.getAttribute("id");
if (id !== undefined && id.indexOf(eventName + "Behavior") >= 0) {
- this.click();
+ element.click();
}
});
}
@@ -162,21 +159,21 @@
}
function getActionCount() {
- return parseInt(jQueryFrame("#page\\:mainForm\\:inAction\\:\\:field").val());
+ return parseInt(testFrameQuerySelectorFn("#page\\:mainForm\\:inAction\\:\\:field")().value);
}
function getActionListenerCount() {
- return parseInt(jQueryFrame("#page\\:mainForm\\:inActionListener\\:\\:field").val());
+ return parseInt(testFrameQuerySelectorFn("#page\\:mainForm\\:inActionListener\\:\\:field")().value);
}
function getAjaxListenerCount() {
- return parseInt(jQueryFrame("#page\\:mainForm\\:inAjaxListener\\:\\:field").val());
+ return parseInt(testFrameQuerySelectorFn("#page\\:mainForm\\:inAjaxListener\\:\\:field")().value);
}
function getValueChangeListenerCount() {
- return parseInt(jQueryFrame("#page\\:mainForm\\:inValueChangeListener\\:\\:field").val());
+ return parseInt(testFrameQuerySelectorFn("#page\\:mainForm\\:inValueChangeListener\\:\\:field")().value);
}
function getTimestamp() {
- return parseInt(jQueryFrame("#page\\:mainForm\\:inTimestamp\\:\\:field").val());
+ return parseInt(testFrameQuerySelectorFn("#page\\:mainForm\\:inTimestamp\\:\\:field")().value);
}