jsf.js_next_gen 4.0.0-beta-11 → 4.0.0-beta-13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/window/faces-development.js +165 -49
- package/dist/window/faces-development.js.br +0 -0
- package/dist/window/faces-development.js.gz +0 -0
- package/dist/window/faces-development.js.map +1 -1
- package/dist/window/faces.js +1 -1
- package/dist/window/faces.js.br +0 -0
- package/dist/window/faces.js.gz +0 -0
- package/dist/window/faces.js.map +1 -1
- package/dist/window/jsf-development.js +165 -49
- package/dist/window/jsf-development.js.br +0 -0
- package/dist/window/jsf-development.js.gz +0 -0
- package/dist/window/jsf-development.js.map +1 -1
- package/dist/window/jsf.js +1 -1
- package/dist/window/jsf.js.br +0 -0
- package/dist/window/jsf.js.gz +0 -0
- package/dist/window/jsf.js.map +1 -1
- package/package.json +3 -3
- package/pom.xml +14 -0
- package/src/main/java/com/example/jsfs_js_ts/DecoratedFacesJS.java +80 -0
- package/src/main/java/com/example/jsfs_js_ts/DecoratingResourceHandlerWrapper.java +54 -0
- package/src/main/typescript/impl/util/ExtDomQuery.ts +10 -6
- package/src/main/typescript/test/frameworkBase/_ext/shared/StandardInits.ts +0 -2
- package/target/api/{Jsf.js → jsf.js} +0 -0
- package/target/api/{Jsf.js.map → jsf.js.map} +0 -0
- package/target/impl/util/ExtDomQuery.js +10 -6
- package/target/impl/util/ExtDomQuery.js.map +1 -1
- package/target/test/frameworkBase/_ext/shared/StandardInits.js +0 -2
- package/target/test/frameworkBase/_ext/shared/StandardInits.js.map +1 -1
- package/src/main/java/com/example/jsfs_js_ts/JsfsJsTsApplication.java +0 -12
- package/target/api/_faces.js +0 -251
- package/target/api/_faces.js.map +0 -1
- package/target/classes/com/example/jsfs_js_ts/JsfsJsTsApplication.class +0 -0
- package/target/impl/util/ListenerQueue.js +0 -3
- package/target/impl/util/ListenerQueue.js.map +0 -1
- package/target/main/typescript/api/Jsf.js +0 -258
- package/target/main/typescript/api/Jsf.js.map +0 -1
- package/target/main/typescript/impl/AjaxImpl.js +0 -569
- package/target/main/typescript/impl/AjaxImpl.js.map +0 -1
- package/target/main/typescript/impl/PushImpl.js +0 -215
- package/target/main/typescript/impl/PushImpl.js.map +0 -1
- package/target/main/typescript/impl/core/Const.js +0 -135
- package/target/main/typescript/impl/core/Const.js.map +0 -1
- package/target/main/typescript/impl/core/ImplTypes.js +0 -43
- package/target/main/typescript/impl/core/ImplTypes.js.map +0 -1
- package/target/main/typescript/impl/i18n/Messages.js +0 -114
- package/target/main/typescript/impl/i18n/Messages.js.map +0 -1
- package/target/main/typescript/impl/util/Assertions.js +0 -90
- package/target/main/typescript/impl/util/Assertions.js.map +0 -1
- package/target/main/typescript/impl/util/AsyncQueue.js +0 -104
- package/target/main/typescript/impl/util/AsyncQueue.js.map +0 -1
- package/target/main/typescript/impl/util/AsyncRunnable.js +0 -18
- package/target/main/typescript/impl/util/AsyncRunnable.js.map +0 -1
- package/target/main/typescript/impl/util/ExtDomQuery.js +0 -129
- package/target/main/typescript/impl/util/ExtDomQuery.js.map +0 -1
- package/target/main/typescript/impl/util/Lang.js +0 -215
- package/target/main/typescript/impl/util/Lang.js.map +0 -1
- package/target/main/typescript/impl/util/ListenerQueue.js +0 -3
- package/target/main/typescript/impl/util/ListenerQueue.js.map +0 -1
- package/target/main/typescript/impl/xhrCore/ErrorData.js +0 -89
- package/target/main/typescript/impl/xhrCore/ErrorData.js.map +0 -1
- package/target/main/typescript/impl/xhrCore/EventData.js +0 -30
- package/target/main/typescript/impl/xhrCore/EventData.js.map +0 -1
- package/target/main/typescript/impl/xhrCore/IResponseProcessor.js +0 -3
- package/target/main/typescript/impl/xhrCore/IResponseProcessor.js.map +0 -1
- package/target/main/typescript/impl/xhrCore/RequestDataResolver.js +0 -143
- package/target/main/typescript/impl/xhrCore/RequestDataResolver.js.map +0 -1
- package/target/main/typescript/impl/xhrCore/ResonseDataResolver.js +0 -103
- package/target/main/typescript/impl/xhrCore/ResonseDataResolver.js.map +0 -1
- package/target/main/typescript/impl/xhrCore/Response.js +0 -167
- package/target/main/typescript/impl/xhrCore/Response.js.map +0 -1
- package/target/main/typescript/impl/xhrCore/ResponseProcessor.js +0 -368
- package/target/main/typescript/impl/xhrCore/ResponseProcessor.js.map +0 -1
- package/target/main/typescript/impl/xhrCore/XhrFormData.js +0 -272
- package/target/main/typescript/impl/xhrCore/XhrFormData.js.map +0 -1
- package/target/main/typescript/impl/xhrCore/XhrRequest.js +0 -281
- package/target/main/typescript/impl/xhrCore/XhrRequest.js.map +0 -1
- package/target/test/frameworkBase/_ext/monadish/DomQueryTest.js +0 -293
- package/target/test/frameworkBase/_ext/monadish/DomQueryTest.js.map +0 -1
- package/target/test/frameworkBase/_ext/monadish/LangTest.js +0 -89
- package/target/test/frameworkBase/_ext/monadish/LangTest.js.map +0 -1
- package/target/test/frameworkBase/_ext/monadish/MappingTest.js +0 -39
- package/target/test/frameworkBase/_ext/monadish/MappingTest.js.map +0 -1
- package/target/test/frameworkBase/_ext/monadish/MonadTest.js +0 -155
- package/target/test/frameworkBase/_ext/monadish/MonadTest.js.map +0 -1
- package/target/test/frameworkBase/_ext/monadish/StreamTest.js +0 -176
- package/target/test/frameworkBase/_ext/monadish/StreamTest.js.map +0 -1
- package/target/test/frameworkBase/_ext/monadish/XmlQueryTest.js +0 -1
- package/target/test/frameworkBase/_ext/monadish/XmlQueryTest.js.map +0 -1
- package/target/test/impl/ImplTest_23.spec_.js +0 -165
- package/target/test/impl/ImplTest_23.spec_.js.map +0 -1
- package/target/test/typescript/frameworkBase/LangTest.js +0 -112
- package/target/test/typescript/frameworkBase/LangTest.js.map +0 -1
- package/target/test/typescript/frameworkBase/_ext/monadish/DomQueryTest.js +0 -293
- package/target/test/typescript/frameworkBase/_ext/monadish/DomQueryTest.js.map +0 -1
- package/target/test/typescript/frameworkBase/_ext/monadish/LangTest.js +0 -89
- package/target/test/typescript/frameworkBase/_ext/monadish/LangTest.js.map +0 -1
- package/target/test/typescript/frameworkBase/_ext/monadish/MappingProbes.js +0 -115
- package/target/test/typescript/frameworkBase/_ext/monadish/MappingProbes.js.map +0 -1
- package/target/test/typescript/frameworkBase/_ext/monadish/MappingTest.js +0 -39
- package/target/test/typescript/frameworkBase/_ext/monadish/MappingTest.js.map +0 -1
- package/target/test/typescript/frameworkBase/_ext/monadish/MonadTest.js +0 -155
- package/target/test/typescript/frameworkBase/_ext/monadish/MonadTest.js.map +0 -1
- package/target/test/typescript/frameworkBase/_ext/monadish/StreamTest.js +0 -176
- package/target/test/typescript/frameworkBase/_ext/monadish/StreamTest.js.map +0 -1
- package/target/test/typescript/frameworkBase/_ext/monadish/XmlQueryTest.js +0 -1
- package/target/test/typescript/frameworkBase/_ext/monadish/XmlQueryTest.js.map +0 -1
- package/target/test/typescript/frameworkBase/_ext/shared/StandardInits.js +0 -264
- package/target/test/typescript/frameworkBase/_ext/shared/StandardInits.js.map +0 -1
- package/target/test/typescript/frameworkBase/_ext/shared/XmlResponses.js +0 -23
- package/target/test/typescript/frameworkBase/_ext/shared/XmlResponses.js.map +0 -1
- package/target/test/typescript/impl/ImplTest.js +0 -98
- package/target/test/typescript/impl/ImplTest.js.map +0 -1
- package/target/test/typescript/impl/SeparatorCharsTest.js +0 -72
- package/target/test/typescript/impl/SeparatorCharsTest.js.map +0 -1
- package/target/test/typescript/queue/AsynchronousProbe.js +0 -99
- package/target/test/typescript/queue/AsynchronousProbe.js.map +0 -1
- package/target/test/typescript/queue/AsynchronousQueueTest.js +0 -130
- package/target/test/typescript/queue/AsynchronousQueueTest.js.map +0 -1
- package/target/test/typescript/xhrCore/EventTests.js +0 -155
- package/target/test/typescript/xhrCore/EventTests.js.map +0 -1
- package/target/test/typescript/xhrCore/FakeWebsocket.js +0 -25
- package/target/test/typescript/xhrCore/FakeWebsocket.js.map +0 -1
- package/target/test/typescript/xhrCore/FileUploadTest.js +0 -166
- package/target/test/typescript/xhrCore/FileUploadTest.js.map +0 -1
- package/target/test/typescript/xhrCore/RequestParamsTest.js +0 -151
- package/target/test/typescript/xhrCore/RequestParamsTest.js.map +0 -1
- package/target/test/typescript/xhrCore/RequestTest.js +0 -318
- package/target/test/typescript/xhrCore/RequestTest.js.map +0 -1
- package/target/test/typescript/xhrCore/ResponseTest.js +0 -257
- package/target/test/typescript/xhrCore/ResponseTest.js.map +0 -1
- package/target/test/typescript/xhrCore/ShadowDomTest.js +0 -122
- package/target/test/typescript/xhrCore/ShadowDomTest.js.map +0 -1
- package/target/test/typescript/xhrCore/WebsocketTest.js +0 -182
- package/target/test/typescript/xhrCore/WebsocketTest.js.map +0 -1
- package/target/test/typescript/xhrCore/XhrFormDataTest.js +0 -58
- package/target/test/typescript/xhrCore/XhrFormDataTest.js.map +0 -1
- package/target/test-classes/.gz +0 -0
- package/target/test-classes/com/example/jsfs_js_ts/JsfsJsTsApplicationTests.class +0 -0
- package/target/test-classes/fileuploadtest.html +0 -24
- package/target/test-classes/jsf-development.js +0 -6781
- package/target/test-classes/jsf-development.js.br +0 -0
- package/target/test-classes/jsf-development.js.gz +0 -0
- package/target/test-classes/jsf-development.js.map +0 -1
- package/target/test-classes/jsf.js +0 -3
- package/target/test-classes/jsf.js.br +0 -0
- package/target/test-classes/jsf.js.gz +0 -0
|
@@ -1,257 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
3
|
-
* contributor license agreements. See the NOTICE file distributed with
|
|
4
|
-
* this work for additional information regarding copyright ownership.
|
|
5
|
-
* The ASF licenses this file to you under the Apache License, Version 2.0
|
|
6
|
-
* (the "License"); you may not use this file except in compliance with
|
|
7
|
-
* the License. You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
-
* See the License for the specific language governing permissions and
|
|
15
|
-
* limitations under the License.
|
|
16
|
-
*/
|
|
17
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
18
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
19
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
20
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
21
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
22
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
23
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
24
|
-
});
|
|
25
|
-
};
|
|
26
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
27
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
28
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
29
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
30
|
-
function step(op) {
|
|
31
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
32
|
-
while (_) try {
|
|
33
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
34
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
35
|
-
switch (op[0]) {
|
|
36
|
-
case 0: case 1: t = op; break;
|
|
37
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
38
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
39
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
40
|
-
default:
|
|
41
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
42
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
43
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
44
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
45
|
-
if (t[2]) _.ops.pop();
|
|
46
|
-
_.trys.pop(); continue;
|
|
47
|
-
}
|
|
48
|
-
op = body.call(thisArg, _);
|
|
49
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
50
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
51
|
-
}
|
|
52
|
-
};
|
|
53
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
54
|
-
var mocha_1 = require("mocha");
|
|
55
|
-
var StandardInits_1 = require("../frameworkBase/_ext/shared/StandardInits");
|
|
56
|
-
var sinon = require("sinon");
|
|
57
|
-
var XmlResponses_1 = require("../frameworkBase/_ext/shared/XmlResponses");
|
|
58
|
-
var chai_1 = require("chai");
|
|
59
|
-
var protocolPage = StandardInits_1.StandardInits.protocolPage;
|
|
60
|
-
var mona_dish_1 = require("mona-dish");
|
|
61
|
-
/**
|
|
62
|
-
* response test
|
|
63
|
-
* the idea is simply to pass in a dom
|
|
64
|
-
* the context and a response xml and then check what happens
|
|
65
|
-
* we do not need to to through the entire ajax cyle for that.
|
|
66
|
-
*/
|
|
67
|
-
(0, mocha_1.describe)('Tests of the various aspects of the response protocol functionality', function () {
|
|
68
|
-
beforeEach(function () {
|
|
69
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
70
|
-
var waitForResult;
|
|
71
|
-
var _this = this;
|
|
72
|
-
return __generator(this, function (_a) {
|
|
73
|
-
waitForResult = protocolPage();
|
|
74
|
-
return [2 /*return*/, waitForResult.then(function (close) {
|
|
75
|
-
_this.xhr = sinon.useFakeXMLHttpRequest();
|
|
76
|
-
_this.requests = [];
|
|
77
|
-
_this.respond = function (response) {
|
|
78
|
-
var xhrReq = _this.requests.shift();
|
|
79
|
-
xhrReq.responsetype = "text/xml";
|
|
80
|
-
xhrReq.respond(200, { 'Content-Type': 'text/xml' }, response);
|
|
81
|
-
return xhrReq;
|
|
82
|
-
};
|
|
83
|
-
_this.xhr.onCreate = function (xhr) {
|
|
84
|
-
_this.requests.push(xhr);
|
|
85
|
-
};
|
|
86
|
-
global.XMLHttpRequest = _this.xhr;
|
|
87
|
-
window.XMLHttpRequest = _this.xhr;
|
|
88
|
-
_this.closeIt = function () {
|
|
89
|
-
global.XMLHttpRequest = window.XMLHttpRequest = _this.xhr.restore();
|
|
90
|
-
Implementation.reset();
|
|
91
|
-
close();
|
|
92
|
-
};
|
|
93
|
-
})];
|
|
94
|
-
});
|
|
95
|
-
});
|
|
96
|
-
});
|
|
97
|
-
afterEach(function () {
|
|
98
|
-
this.closeIt();
|
|
99
|
-
});
|
|
100
|
-
it("must have a simple field updated as well as the viewstate", function (done) {
|
|
101
|
-
//DQ.byId("cmd_update_insert").click();
|
|
102
|
-
var issuer = mona_dish_1.DQ.byId("cmd_update_insert").click();
|
|
103
|
-
this.respond(XmlResponses_1.XmlResponses.UPDATE_INSERT_1);
|
|
104
|
-
(0, chai_1.expect)(mona_dish_1.DQ.byId("changesArea")
|
|
105
|
-
.html()
|
|
106
|
-
.orElse("fail")
|
|
107
|
-
.value.indexOf("update succeeded 1") != -1)
|
|
108
|
-
.to.be.true;
|
|
109
|
-
var pos1 = mona_dish_1.DQ.byId(document.body).html()
|
|
110
|
-
.value.indexOf("insert before succeeded should display before test1");
|
|
111
|
-
var pos3 = mona_dish_1.DQ.byId(document.body).html()
|
|
112
|
-
.value.indexOf("insert after succeeded should display after test1");
|
|
113
|
-
var pos2 = mona_dish_1.DQ.byId(document.body).html()
|
|
114
|
-
.value.indexOf("update succeeded 1");
|
|
115
|
-
(0, chai_1.expect)(pos1 != -1).to.be.true;
|
|
116
|
-
(0, chai_1.expect)(pos1 < pos2 && pos2 < pos3).to.be.true;
|
|
117
|
-
var pos4 = mona_dish_1.DQ.byId(document.body).html()
|
|
118
|
-
.value.indexOf("embedded script at update succeed");
|
|
119
|
-
(0, chai_1.expect)(pos4 != -1).to.be.true;
|
|
120
|
-
done();
|
|
121
|
-
});
|
|
122
|
-
it("must have a simple field updated with the second before update rendering path", function (done) {
|
|
123
|
-
//DQ.byId("cmd_update_insert").click();
|
|
124
|
-
var issuer = mona_dish_1.DQ.byId("cmd_update_insert").click();
|
|
125
|
-
this.respond(XmlResponses_1.XmlResponses.UPDATE_INSERT_2);
|
|
126
|
-
(0, chai_1.expect)(mona_dish_1.DQ.byId("changesArea")
|
|
127
|
-
.html()
|
|
128
|
-
.orElse("fail")
|
|
129
|
-
.value.indexOf("update succeeded 2") != -1)
|
|
130
|
-
.to.be.true;
|
|
131
|
-
var pos1 = mona_dish_1.DQ.byId(document.body).html()
|
|
132
|
-
.value.indexOf("insert before succeeded should display before test1");
|
|
133
|
-
var pos3 = mona_dish_1.DQ.byId(document.body).html()
|
|
134
|
-
.value.indexOf("insert after succeeded should display after test1");
|
|
135
|
-
var pos2 = mona_dish_1.DQ.byId(document.body).html()
|
|
136
|
-
.value.indexOf("update succeeded 2");
|
|
137
|
-
(0, chai_1.expect)(pos1 != -1).to.be.true;
|
|
138
|
-
(0, chai_1.expect)(pos1 < pos2 && pos2 < pos3).to.be.true;
|
|
139
|
-
var pos4 = mona_dish_1.DQ.byId(document.body).html()
|
|
140
|
-
.value.indexOf("embedded script at update succeed");
|
|
141
|
-
(0, chai_1.expect)(pos4 != -1).to.be.true;
|
|
142
|
-
done();
|
|
143
|
-
});
|
|
144
|
-
it("must have a full body update", function () {
|
|
145
|
-
mona_dish_1.DQ.byId("cmd_replace").click();
|
|
146
|
-
this.respond(XmlResponses_1.XmlResponses.BODY_REPLACEMENT);
|
|
147
|
-
//basic replacement
|
|
148
|
-
var newBody = mona_dish_1.DQ.byId(document.body);
|
|
149
|
-
var newContent = newBody.html().value;
|
|
150
|
-
//standard replacement successful
|
|
151
|
-
(0, chai_1.expect)(newContent.indexOf("<h3>Body replacement test successful</h3>") != -1, "elements must be updated").to.be.true;
|
|
152
|
-
//script eval
|
|
153
|
-
(0, chai_1.expect)(newContent.indexOf(">hello from embedded script in replacement body<") != -1, "embedded scripts must be executed").to.be.true;
|
|
154
|
-
//body attributes
|
|
155
|
-
(0, chai_1.expect)(newBody.hasClass("tundra"), "attributes must be updated").to.be.true;
|
|
156
|
-
(0, chai_1.expect)(newBody.id.value == "the_id", "id must be updated").to.be.true;
|
|
157
|
-
});
|
|
158
|
-
it("must have a proper workiung head replace", function () {
|
|
159
|
-
mona_dish_1.DQ.byId("cmd_replace").click();
|
|
160
|
-
this.respond(XmlResponses_1.XmlResponses.HEAD_REPLACEMENT);
|
|
161
|
-
//basic replacement
|
|
162
|
-
var newHead = mona_dish_1.DQ.byId(document.head);
|
|
163
|
-
var newBody = mona_dish_1.DQ.byId(document.body);
|
|
164
|
-
var newContent = newBody.html().value;
|
|
165
|
-
//standard replacement successful
|
|
166
|
-
//script eval
|
|
167
|
-
//modern browsers block head replacement but you still can eval
|
|
168
|
-
(0, chai_1.expect)(newContent.indexOf(">hello from embedded script in replacement head") != -1, "embedded scripts must be executed").to.be.true;
|
|
169
|
-
});
|
|
170
|
-
it("must have a proper workiung root replace", function () {
|
|
171
|
-
mona_dish_1.DQ.byId("cmd_replace").click();
|
|
172
|
-
this.respond(XmlResponses_1.XmlResponses.VIEW_ROOT_REPLACEMENT);
|
|
173
|
-
//basic replacement
|
|
174
|
-
var newHead = mona_dish_1.DQ.byId(document.head);
|
|
175
|
-
var newBody = mona_dish_1.DQ.byId(document.body);
|
|
176
|
-
var newContent = newBody.html().value;
|
|
177
|
-
(0, chai_1.expect)(newHead.isPresent(), " head must exist ").to.be.true;
|
|
178
|
-
//standard replacement successful
|
|
179
|
-
(0, chai_1.expect)(newContent.indexOf("<h3>Body replacement test successful</h3>") != -1, "elements must be updated").to.be.true;
|
|
180
|
-
//script eval
|
|
181
|
-
(0, chai_1.expect)(newContent.indexOf(">hello from embedded script in replacement body<") != -1, "embedded scripts must be executed").to.be.true;
|
|
182
|
-
//body attributes
|
|
183
|
-
(0, chai_1.expect)(newBody.hasClass("tundra"), "attributes must be updated").to.be.true;
|
|
184
|
-
(0, chai_1.expect)(newBody.id.value == "the_id", "id must be updated").to.be.true;
|
|
185
|
-
//standard replacement successful
|
|
186
|
-
//script eval
|
|
187
|
-
//modern browsers block head replacement but you still can eval
|
|
188
|
-
(0, chai_1.expect)(newContent.indexOf(">hello from embedded script in replacement head") != -1, "embedded scripts must be executed").to.be.true;
|
|
189
|
-
});
|
|
190
|
-
it("must have a viewstate update to be peformed", function () {
|
|
191
|
-
mona_dish_1.DQ.byId("cmd_viewstate").click();
|
|
192
|
-
this.respond(XmlResponses_1.XmlResponses.VIEWSTATE_1);
|
|
193
|
-
var viewStateElem = mona_dish_1.DQ.byId('javax.faces.ViewState');
|
|
194
|
-
(0, chai_1.expect)(viewStateElem.inputValue.value == "hello world").to.be.true;
|
|
195
|
-
});
|
|
196
|
-
it("must have processed a proper delete", function () {
|
|
197
|
-
mona_dish_1.DQ.byId("cmd_delete").click();
|
|
198
|
-
this.respond(XmlResponses_1.XmlResponses.DELETE_1);
|
|
199
|
-
(0, chai_1.expect)(mona_dish_1.DQ.byId("deletable").isAbsent()).to.be.true;
|
|
200
|
-
});
|
|
201
|
-
it("must have processed a proper eval of a script given in the eval tag", function () {
|
|
202
|
-
var issuer = mona_dish_1.DQ.byId("cmd_eval").click();
|
|
203
|
-
this.respond(XmlResponses_1.XmlResponses.EVAL_1);
|
|
204
|
-
var resultHTML = mona_dish_1.DQ.byId(document.body).html().value;
|
|
205
|
-
(0, chai_1.expect)(resultHTML.indexOf('eval test succeeded') != -1).to.be.true;
|
|
206
|
-
});
|
|
207
|
-
it("must have updated the viewstates properly", function () {
|
|
208
|
-
var issuer = mona_dish_1.DQ.byId("cmd_eval").click();
|
|
209
|
-
/*js full submit form, coming from the integration tests*/
|
|
210
|
-
window.document.body.innerHTML = "<form id=\"j_id__v_0\" name=\"j_id__v_0\" method=\"post\" action=\"/IntegrationJSTest/integrationtestsjasmine/test7-eventtest.jsf\"\n enctype=\"application/x-www-form-urlencoded\"><span id=\"updatePanel\">hello world</span><a href=\"#\"\n onclick=\"return jsf.util.chain(this, event,'return false;', 'return myfaces.ab('j_id_1l','updateTrigger');');\"\n id=\"updateTrigger\"\n name=\"updateTrigger\"\n class=\"updateTrigger\">[Press\n me for Update]</a><input type=\"hidden\" name=\"j_id_1l_SUBMIT\" value=\"1\">\n</form>";
|
|
211
|
-
jsf.ajax.request(window.document.getElementById("updateTrigger"), null, {
|
|
212
|
-
render: "updatePanel",
|
|
213
|
-
execute: "updatePanel updateTrigger"
|
|
214
|
-
});
|
|
215
|
-
// language=XML
|
|
216
|
-
this.respond("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n <partial-response id=\"j_id__v_0\">\n <changes>\n <update id=\"updatePanel\"><![CDATA[<span id=\"updatePanel\">hello world</span>]]></update>\n <update id=\"j_id__v_0:javax.faces.ViewState:1\"><![CDATA[RTUyRDI0NzE4QzAxM0E5RDAwMDAwMDVD]]></update>\n </changes>\n </partial-response>");
|
|
217
|
-
(0, chai_1.expect)(mona_dish_1.DQ.byId("javax.faces.ViewState").isAbsent()).to.be.false;
|
|
218
|
-
(0, chai_1.expect)(document.getElementById("javax.faces.ViewState").value == "RTUyRDI0NzE4QzAxM0E5RDAwMDAwMDVD").to.be.true;
|
|
219
|
-
(0, chai_1.expect)(mona_dish_1.DQ.byId("javax.faces.ViewState").inputValue.value == "RTUyRDI0NzE4QzAxM0E5RDAwMDAwMDVD").to.be.true;
|
|
220
|
-
});
|
|
221
|
-
it("must have updated the viewstates properly with lenient update block", function () {
|
|
222
|
-
var issuer = mona_dish_1.DQ.byId("cmd_eval").click();
|
|
223
|
-
/*js full submit form, coming from the integration tests*/
|
|
224
|
-
window.document.body.innerHTML = "<form id=\"j_id__v_0\" name=\"j_id__v_0\" method=\"post\" action=\"/IntegrationJSTest/integrationtestsjasmine/test7-eventtest.jsf\"\n enctype=\"application/x-www-form-urlencoded\"><span id=\"updatePanel\">hello world</span><a href=\"#\"\n onclick=\"return jsf.util.chain(this, event,'return false;', 'return myfaces.ab('j_id_1l','updateTrigger');');\"\n id=\"updateTrigger\"\n name=\"updateTrigger\"\n class=\"updateTrigger\">[Press\n me for Update]</a><input type=\"hidden\" name=\"j_id_1l_SUBMIT\" value=\"1\">\n</form>";
|
|
225
|
-
jsf.ajax.request(window.document.getElementById("updateTrigger"), null, {
|
|
226
|
-
render: "updatePanel",
|
|
227
|
-
execute: "updatePanel updateTrigger"
|
|
228
|
-
});
|
|
229
|
-
// language=XML
|
|
230
|
-
this.respond("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n <partial-response id=\"j_id__v_0\">\n <changes>\n <update id=\"updatePanel\"><![CDATA[<span id=\"updatePanel\">hello world</span>]]></update>\n <update id=\"j_id__v_0:javax.faces.ViewState:1\"><![CDATA[RTUyRDI0NzE4QzAxM0E5RDAwMDAwMDVD]]><!-- \n Some random junk which is sent by the server\n --></update>\n </changes>\n </partial-response>");
|
|
231
|
-
(0, chai_1.expect)(mona_dish_1.DQ.byId("javax.faces.ViewState").isAbsent()).to.be.false;
|
|
232
|
-
(0, chai_1.expect)(document.getElementById("javax.faces.ViewState").value == "RTUyRDI0NzE4QzAxM0E5RDAwMDAwMDVD").to.be.true;
|
|
233
|
-
(0, chai_1.expect)(mona_dish_1.DQ.byId("javax.faces.ViewState").inputValue.value == "RTUyRDI0NzE4QzAxM0E5RDAwMDAwMDVD").to.be.true;
|
|
234
|
-
});
|
|
235
|
-
/**
|
|
236
|
-
* The body innerHTML is based on a Tobago page. View state and client window id is rendered within a
|
|
237
|
-
* jsf-state-container.
|
|
238
|
-
* Beside the tobago-out tag, the view state and the client window id must be updated properly.
|
|
239
|
-
*/
|
|
240
|
-
it("must have updated the client window tag properly", function () {
|
|
241
|
-
window.document.body.innerHTML = "<tobago-page locale='en' class='container-fluid' id='page'>\n <form action='/IntegrationJSTest/integrationtestsjasmine/tobago-jfwid-test.jsf' id='page::form' method='post' accept-charset='UTF-8' data-tobago-context-path=''>\n <input type='hidden' name='javax.faces.source' id='javax.faces.source' disabled='disabled'>\n <tobago-focus id='page::lastFocusId'>\n <input type='hidden' name='page::lastFocusId' id='page::lastFocusId::field'>\n </tobago-focus>\n <input type='hidden' name='org.apache.myfaces.tobago.webapp.Secret' id='org.apache.myfaces.tobago.webapp.Secret' value='SLrPlxqLEaR/oYFLSu4wgg=='>\n <tobago-in id='page:input' class='tobago-margin-bottom'>\n <input type='text' name='page:input' id='page:input::field' class='tobago-in form-control' value='Alice'>\n <tobago-behavior event='change' client-id='page:input' field-id='page:input::field' execute='page:input' render='page:output'></tobago-behavior>\n </tobago-in>\n <div id='page:output' class='tobago-margin-bottom'>\n <tobago-out class='form-control-plaintext'></tobago-out>\n </div>\n <div class='tobago-page-menuStore'></div>\n <span id='page::jsf-state-container'>\n <input type='hidden' name='javax.faces.ViewState' id='j_id__v_0:javax.faces.ViewState:1' value='RkExQ0Q1NTYzOTNCNzg0RjAwMDAwMDE4' autocomplete='off'>\n <input type='hidden' name='javax.faces.RenderKitId' value='tobago'>\n <input type='hidden' id='j_id__v_0:javax.faces.ClientWindow:1' name='javax.faces.ClientWindow' value='5m10kooxi'>\n </span>\n </form>\n </tobago-page>";
|
|
242
|
-
(0, chai_1.expect)(mona_dish_1.DQ.querySelectorAll("#page\\:output tobago-out").textContent() === "").to.be.true;
|
|
243
|
-
(0, chai_1.expect)(mona_dish_1.DQ.byId("j_id__v_0:javax.faces.ViewState:1").isAbsent()).to.be.false;
|
|
244
|
-
(0, chai_1.expect)(mona_dish_1.DQ.byId("j_id__v_0:javax.faces.ClientWindow:1").isAbsent()).to.be.false;
|
|
245
|
-
jsf.ajax.request(window.document.getElementById("page:input"), "change", {
|
|
246
|
-
"javax.faces.behavior.event": "change",
|
|
247
|
-
execute: "page:input",
|
|
248
|
-
render: "page:output"
|
|
249
|
-
});
|
|
250
|
-
this.respond("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<partial-response id='j_id__v_0'>\n<changes>\n<update id='page:output'><![CDATA[\n<div id='page:output' class='tobago-margin-bottom'>\n<tobago-out class='form-control-plaintext'>Alice</tobago-out>\n</div>]]>\n</update>\n<update id='j_id__v_0:javax.faces.ViewState:1'><![CDATA[MDQwQzkxNkU0MTg0RTQxRjAwMDAwMDE3]]>\n</update>\n<update id='j_id__v_0:javax.faces.ClientWindow:1'><![CDATA[5m10kooxg]]>\n</update>\n</changes>\n</partial-response>");
|
|
251
|
-
(0, chai_1.expect)(mona_dish_1.DQ.querySelectorAll("#page\\:output tobago-out").textContent() === "Alice").to.be.true;
|
|
252
|
-
(0, chai_1.expect)(mona_dish_1.DQ.byId("j_id__v_0:javax.faces.ViewState:1").isAbsent()).to.be.false;
|
|
253
|
-
(0, chai_1.expect)(mona_dish_1.DQ.byId("j_id__v_0:javax.faces.ClientWindow:1").isAbsent()).to.be.false;
|
|
254
|
-
});
|
|
255
|
-
//TODO update head all and redirect
|
|
256
|
-
});
|
|
257
|
-
//# sourceMappingURL=ResponseTest.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ResponseTest.js","sourceRoot":"","sources":["../../../../src/test/typescript/xhrCore/ResponseTest.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,+BAA+B;AAC/B,4EAAyE;AACzE,6BAA+B;AAG/B,0EAAuE;AACvE,6BAA4B;AAC5B,IAAO,YAAY,GAAG,6BAAa,CAAC,YAAY,CAAC;AACjD,uCAA6B;AAM7B;;;;;GAKG;AACH,IAAA,gBAAQ,EAAC,qEAAqE,EAAE;IAE5E,UAAU,CAAC;;;;;gBACH,aAAa,GAAG,YAAY,EAAE,CAAC;gBACnC,sBAAO,aAAa,CAAC,IAAI,CAAC,UAAC,KAAK;wBAE5B,KAAI,CAAC,GAAG,GAAG,KAAK,CAAC,qBAAqB,EAAE,CAAC;wBACzC,KAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;wBAEnB,KAAI,CAAC,OAAO,GAAG,UAAC,QAAgB;4BAC5B,IAAI,MAAM,GAAG,KAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;4BACnC,MAAM,CAAC,YAAY,GAAG,UAAU,CAAC;4BACjC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,EAAC,cAAc,EAAE,UAAU,EAAC,EAAE,QAAQ,CAAC,CAAC;4BAC5D,OAAO,MAAM,CAAC;wBAClB,CAAC,CAAC;wBAEF,KAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,UAAC,GAAG;4BACpB,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBAC5B,CAAC,CAAC;wBACI,MAAO,CAAC,cAAc,GAAG,KAAI,CAAC,GAAG,CAAC;wBAClC,MAAO,CAAC,cAAc,GAAG,KAAI,CAAC,GAAG,CAAC;wBAExC,KAAI,CAAC,OAAO,GAAG;4BACL,MAAO,CAAC,cAAc,GAAS,MAAO,CAAC,cAAc,GAAG,KAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;4BACjF,cAAc,CAAC,KAAK,EAAE,CAAC;4BACvB,KAAK,EAAE,CAAC;wBACZ,CAAC,CAAA;oBACL,CAAC,CAAC,EAAC;;;KACN,CAAC,CAAC;IAEH,SAAS,CAAC;QACN,IAAI,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,UAAU,IAAI;QAC1E,uCAAuC;QACvC,IAAI,MAAM,GAAG,cAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,KAAK,EAAE,CAAC;QAElD,IAAI,CAAC,OAAO,CAAC,2BAAY,CAAC,eAAe,CAAC,CAAC;QAE3C,IAAA,aAAM,EAAC,cAAE,CAAC,IAAI,CAAC,aAAa,CAAC;aACxB,IAAI,EAAE;aACN,MAAM,CAAC,MAAM,CAAC;aACd,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;aAC1C,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAEhB,IAAI,IAAI,GAAY,cAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;aAC5C,KAAM,CAAC,OAAO,CAAC,qDAAqD,CAAC,CAAC;QAC3E,IAAI,IAAI,GAAY,cAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;aAC5C,KAAM,CAAC,OAAO,CAAC,mDAAmD,CAAC,CAAC;QACzE,IAAI,IAAI,GAAY,cAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;aAC5C,KAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAE1C,IAAA,aAAM,EAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAE9B,IAAA,aAAM,EAAC,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAE9C,IAAI,IAAI,GAAY,cAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;aAC5C,KAAM,CAAC,OAAO,CAAC,mCAAmC,CAAC,CAAC;QAEzD,IAAA,aAAM,EAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAE9B,IAAI,EAAE,CAAC;IACX,CAAC,CAAC,CAAC;IAGH,EAAE,CAAC,gFAAgF,EAAE,UAAU,IAAI;QAC/F,uCAAuC;QACvC,IAAI,MAAM,GAAG,cAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,KAAK,EAAE,CAAC;QAElD,IAAI,CAAC,OAAO,CAAC,2BAAY,CAAC,eAAe,CAAC,CAAC;QAE3C,IAAA,aAAM,EAAC,cAAE,CAAC,IAAI,CAAC,aAAa,CAAC;aACxB,IAAI,EAAE;aACN,MAAM,CAAC,MAAM,CAAC;aACd,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;aAC1C,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAEhB,IAAI,IAAI,GAAY,cAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;aAC5C,KAAM,CAAC,OAAO,CAAC,qDAAqD,CAAC,CAAC;QAC3E,IAAI,IAAI,GAAY,cAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;aAC5C,KAAM,CAAC,OAAO,CAAC,mDAAmD,CAAC,CAAC;QACzE,IAAI,IAAI,GAAY,cAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;aAC5C,KAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAE1C,IAAA,aAAM,EAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAE9B,IAAA,aAAM,EAAC,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAE9C,IAAI,IAAI,GAAY,cAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;aAC5C,KAAM,CAAC,OAAO,CAAC,mCAAmC,CAAC,CAAC;QAEzD,IAAA,aAAM,EAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAE9B,IAAI,EAAE,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE;QAC/B,cAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,CAAC;QAC/B,IAAI,CAAC,OAAO,CAAC,2BAAY,CAAC,gBAAgB,CAAC,CAAC;QAE5C,mBAAmB;QACnB,IAAI,OAAO,GAAG,cAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,UAAU,GAAW,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;QAE9C,iCAAiC;QACjC,IAAA,aAAM,EAAC,UAAU,CAAC,OAAO,CAAC,2CAA2C,CAAC,IAAI,CAAC,CAAC,EACxE,0BAA0B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAC3C,aAAa;QACb,IAAA,aAAM,EAAC,UAAU,CAAC,OAAO,CAAC,kDAAkD,CAAC,IAAI,CAAC,CAAC,EAC/E,mCAAmC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAEpD,iBAAiB;QACjB,IAAA,aAAM,EAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAC7B,4BAA4B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAC7C,IAAA,aAAM,EAAC,OAAO,CAAC,EAAE,CAAC,KAAK,IAAI,QAAQ,EAC/B,oBAAoB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzC,CAAC,CAAC,CAAC;IAGH,EAAE,CAAC,0CAA0C,EAAE;QAC3C,cAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,CAAC;QAC/B,IAAI,CAAC,OAAO,CAAC,2BAAY,CAAC,gBAAgB,CAAC,CAAC;QAE5C,mBAAmB;QACnB,IAAI,OAAO,GAAG,cAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,OAAO,GAAG,cAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,UAAU,GAAW,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;QAE9C,iCAAiC;QACjC,aAAa;QACb,+DAA+D;QAC/D,IAAA,aAAM,EAAC,UAAU,CAAC,OAAO,CAAC,iDAAiD,CAAC,IAAI,CAAC,CAAC,EAC9E,mCAAmC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACxD,CAAC,CAAC,CAAC;IAGH,EAAE,CAAC,2CAA2C,EAAE;QAC5C,cAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,CAAC;QAC/B,IAAI,CAAC,OAAO,CAAC,2BAAY,CAAC,qBAAqB,CAAC,CAAC;QAEjD,mBAAmB;QACnB,IAAI,OAAO,GAAG,cAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,OAAO,GAAG,cAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,UAAU,GAAW,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;QAE9C,IAAA,aAAM,EAAC,OAAO,CAAC,SAAS,EAAE,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAE5D,iCAAiC;QACjC,IAAA,aAAM,EAAC,UAAU,CAAC,OAAO,CAAC,2CAA2C,CAAC,IAAI,CAAC,CAAC,EACxE,0BAA0B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAC3C,aAAa;QACb,IAAA,aAAM,EAAC,UAAU,CAAC,OAAO,CAAC,kDAAkD,CAAC,IAAI,CAAC,CAAC,EAC/E,mCAAmC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAEpD,iBAAiB;QACjB,IAAA,aAAM,EAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAC7B,4BAA4B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAC7C,IAAA,aAAM,EAAC,OAAO,CAAC,EAAE,CAAC,KAAK,IAAI,QAAQ,EAC/B,oBAAoB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAErC,iCAAiC;QACjC,aAAa;QACb,+DAA+D;QAC/D,IAAA,aAAM,EAAC,UAAU,CAAC,OAAO,CAAC,iDAAiD,CAAC,IAAI,CAAC,CAAC,EAC9E,mCAAmC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE;QAC9C,cAAE,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,EAAE,CAAC;QAEjC,IAAI,CAAC,OAAO,CAAC,2BAAY,CAAC,WAAW,CAAC,CAAC;QACvC,IAAI,aAAa,GAAG,cAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACrD,IAAA,aAAM,EAAC,aAAa,CAAC,UAAU,CAAC,KAAK,IAAI,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE;QACtC,cAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC;QAE9B,IAAI,CAAC,OAAO,CAAC,2BAAY,CAAC,QAAQ,CAAC,CAAC;QAEpC,IAAA,aAAM,EAAC,cAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAEvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qEAAqE,EAAE;QACtE,IAAI,MAAM,GAAG,cAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC;QAEzC,IAAI,CAAC,OAAO,CAAC,2BAAY,CAAC,MAAM,CAAC,CAAC;QAElC,IAAI,UAAU,GAAmB,cAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;QACrE,IAAA,aAAM,EAAC,UAAU,CAAC,OAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAEvE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE;QAE5C,IAAI,MAAM,GAAG,cAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC;QAEzC,0DAA0D;QAC1D,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,GAAG,u4BAOjC,CAAC;QAGD,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE;YACpE,MAAM,EAAE,aAAa;YACrB,OAAO,EAAE,2BAA2B;SACvC,CAAC,CAAC;QAEH,eAAe;QACf,IAAI,CAAC,OAAO,CAAC,kaAMW,CAAC,CAAC;QAG1B,IAAA,aAAM,EAAC,cAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;QAEhE,IAAA,aAAM,EAAoB,QAAQ,CAAC,cAAc,CAAC,uBAAuB,CAAE,CAAC,KAAK,IAAI,kCAAkC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACpI,IAAA,aAAM,EAAC,cAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,UAAU,CAAC,KAAK,IAAI,kCAAkC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAC/G,CAAC,CAAC,CAAC;IAGH,EAAE,CAAC,qEAAqE,EAAE;QAEtE,IAAI,MAAM,GAAG,cAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC;QAEzC,0DAA0D;QAC1D,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,GAAG,u4BAOjC,CAAC;QAGD,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE;YACpE,MAAM,EAAE,aAAa;YACrB,OAAO,EAAE,2BAA2B;SACvC,CAAC,CAAC;QAEH,eAAe;QACf,IAAI,CAAC,OAAO,CAAC,sgBAQW,CAAC,CAAC;QAG1B,IAAA,aAAM,EAAC,cAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;QAEhE,IAAA,aAAM,EAAoB,QAAQ,CAAC,cAAc,CAAC,uBAAuB,CAAE,CAAC,KAAK,IAAI,kCAAkC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACpI,IAAA,aAAM,EAAC,cAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,UAAU,CAAC,KAAK,IAAI,kCAAkC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAC/G,CAAC,CAAC,CAAC;IAEH;;;;OAIG;IACH,EAAE,CAAC,kDAAkD,EAAE;QACnD,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,GAAG,gjDAqBxB,CAAC;QAEV,IAAA,aAAM,EAAC,cAAE,CAAC,gBAAgB,CAAC,2BAA2B,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACzF,IAAA,aAAM,EAAC,cAAE,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;QAC5E,IAAA,aAAM,EAAC,cAAE,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;QAE/E,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE;YACrE,4BAA4B,EAAE,QAAQ;YACtC,OAAO,EAAE,YAAY;YACrB,MAAM,EAAE,aAAa;SACxB,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,qeAaD,CAAC,CAAC;QAEd,IAAA,aAAM,EAAC,cAAE,CAAC,gBAAgB,CAAC,2BAA2B,CAAC,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAC9F,IAAA,aAAM,EAAC,cAAE,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;QAC5E,IAAA,aAAM,EAAC,cAAE,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IACnF,CAAC,CAAC,CAAC;IAGH,mCAAmC;AACvC,CAAC,CAAC,CAAC"}
|
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
3
|
-
* contributor license agreements. See the NOTICE file distributed with
|
|
4
|
-
* this work for additional information regarding copyright ownership.
|
|
5
|
-
* The ASF licenses this file to you under the Apache License, Version 2.0
|
|
6
|
-
* (the "License"); you may not use this file except in compliance with
|
|
7
|
-
* the License. You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
-
* See the License for the specific language governing permissions and
|
|
15
|
-
* limitations under the License.
|
|
16
|
-
*/
|
|
17
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
18
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
19
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
20
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
21
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
22
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
23
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
24
|
-
});
|
|
25
|
-
};
|
|
26
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
27
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
28
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
29
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
30
|
-
function step(op) {
|
|
31
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
32
|
-
while (_) try {
|
|
33
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
34
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
35
|
-
switch (op[0]) {
|
|
36
|
-
case 0: case 1: t = op; break;
|
|
37
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
38
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
39
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
40
|
-
default:
|
|
41
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
42
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
43
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
44
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
45
|
-
if (t[2]) _.ops.pop();
|
|
46
|
-
_.trys.pop(); continue;
|
|
47
|
-
}
|
|
48
|
-
op = body.call(thisArg, _);
|
|
49
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
50
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
51
|
-
}
|
|
52
|
-
};
|
|
53
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
54
|
-
var mocha_1 = require("mocha");
|
|
55
|
-
var StandardInits_1 = require("../frameworkBase/_ext/shared/StandardInits");
|
|
56
|
-
var sinon = require("sinon");
|
|
57
|
-
var XmlResponses_1 = require("../frameworkBase/_ext/shared/XmlResponses");
|
|
58
|
-
var chai_1 = require("chai");
|
|
59
|
-
var mona_dish_1 = require("mona-dish");
|
|
60
|
-
var shadowDomMyFaces = StandardInits_1.StandardInits.shadowDomMyFaces;
|
|
61
|
-
sinon.reset();
|
|
62
|
-
(0, mocha_1.describe)('shadow dom testsuite', function () {
|
|
63
|
-
beforeEach(function () {
|
|
64
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
65
|
-
var waitForResult;
|
|
66
|
-
var _this = this;
|
|
67
|
-
return __generator(this, function (_a) {
|
|
68
|
-
waitForResult = shadowDomMyFaces();
|
|
69
|
-
return [2 /*return*/, waitForResult.then(function (close) {
|
|
70
|
-
_this.xhr = sinon.useFakeXMLHttpRequest();
|
|
71
|
-
_this.requests = [];
|
|
72
|
-
_this.respond = function (response) {
|
|
73
|
-
var xhrReq = _this.requests.shift();
|
|
74
|
-
xhrReq.responsetype = "text/xml";
|
|
75
|
-
xhrReq.respond(200, { 'Content-Type': 'text/xml' }, response);
|
|
76
|
-
return xhrReq;
|
|
77
|
-
};
|
|
78
|
-
_this.xhr.onCreate = function (xhr) {
|
|
79
|
-
_this.requests.push(xhr);
|
|
80
|
-
};
|
|
81
|
-
global.XMLHttpRequest = _this.xhr;
|
|
82
|
-
window.XMLHttpRequest = _this.xhr;
|
|
83
|
-
_this.closeIt = function () {
|
|
84
|
-
global.XMLHttpRequest = window.XMLHttpRequest = _this.xhr.restore();
|
|
85
|
-
Implementation.reset();
|
|
86
|
-
close();
|
|
87
|
-
};
|
|
88
|
-
})];
|
|
89
|
-
});
|
|
90
|
-
});
|
|
91
|
-
});
|
|
92
|
-
afterEach(function () {
|
|
93
|
-
this.closeIt();
|
|
94
|
-
});
|
|
95
|
-
it("shadow dom behavior tested", function () {
|
|
96
|
-
var Impl = Implementation;
|
|
97
|
-
//const addRequestToQueue = sinon.stub(Impl.queueHandler, "addRequestToQueue");
|
|
98
|
-
(0, chai_1.expect)(mona_dish_1.DomQuery.querySelectorAll("#shadowDomArea").length).to.eq(1);
|
|
99
|
-
(0, chai_1.expect)(mona_dish_1.DomQuery.querySelectorAll("* /shadow/ #shadowContent").length).to.eq(1);
|
|
100
|
-
mona_dish_1.DomQuery.byId("blarg:input_1", true).addEventListener("click", function (event) {
|
|
101
|
-
jsf.ajax.request(event.target, event, { render: 'shadowContent', execute: '@this' });
|
|
102
|
-
}).click();
|
|
103
|
-
this.respond(XmlResponses_1.XmlResponses.SHADOW_DOM_UPDATE);
|
|
104
|
-
//check if element is updated
|
|
105
|
-
(0, chai_1.expect)(mona_dish_1.DomQuery.byId("shadowContent", true).innerHtml).to.eq("after update");
|
|
106
|
-
/*shadow dom in place now lets do an update on the element*/
|
|
107
|
-
});
|
|
108
|
-
it("shadow dom updated triggered from outside", function () {
|
|
109
|
-
var Impl = Implementation;
|
|
110
|
-
//const addRequestToQueue = sinon.stub(Impl.queueHandler, "addRequestToQueue");
|
|
111
|
-
(0, chai_1.expect)(mona_dish_1.DomQuery.querySelectorAll("#shadowDomArea").length).to.eq(1);
|
|
112
|
-
(0, chai_1.expect)(mona_dish_1.DomQuery.querySelectorAll("* /shadow/ #shadowContent").length).to.eq(1);
|
|
113
|
-
mona_dish_1.DomQuery.byId("input_3", true).addEventListener("click", function (event) {
|
|
114
|
-
jsf.ajax.request(event.target, event, { render: 'shadowContent', execute: '@this' });
|
|
115
|
-
}).click();
|
|
116
|
-
this.respond(XmlResponses_1.XmlResponses.SHADOW_DOM_UPDATE);
|
|
117
|
-
//check if element is updated
|
|
118
|
-
(0, chai_1.expect)(mona_dish_1.DomQuery.byId("shadowContent", true).innerHtml).to.eq("after update");
|
|
119
|
-
/*shadow dom in place now lets do an update on the element*/
|
|
120
|
-
});
|
|
121
|
-
});
|
|
122
|
-
//# sourceMappingURL=ShadowDomTest.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ShadowDomTest.js","sourceRoot":"","sources":["../../../../src/test/typescript/xhrCore/ShadowDomTest.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,182 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
-
function step(op) {
|
|
16
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (_) try {
|
|
18
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
-
switch (op[0]) {
|
|
21
|
-
case 0: case 1: t = op; break;
|
|
22
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
-
default:
|
|
26
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
-
if (t[2]) _.ops.pop();
|
|
31
|
-
_.trys.pop(); continue;
|
|
32
|
-
}
|
|
33
|
-
op = body.call(thisArg, _);
|
|
34
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
var mocha_1 = require("mocha");
|
|
40
|
-
var sinon = require("sinon");
|
|
41
|
-
var StandardInits_1 = require("../frameworkBase/_ext/shared/StandardInits");
|
|
42
|
-
var AjaxImpl_1 = require("../../../main/typescript/impl/AjaxImpl");
|
|
43
|
-
var chai_1 = require("chai");
|
|
44
|
-
var defaultMyFaces = StandardInits_1.StandardInits.defaultMyFaces;
|
|
45
|
-
var mona_dish_1 = require("mona-dish");
|
|
46
|
-
var FakeWebsocket_1 = require("./FakeWebsocket");
|
|
47
|
-
var assertType = mona_dish_1.Lang.assertType;
|
|
48
|
-
(0, mocha_1.describe)('Tests the jsf websocket client side api on high level (generic test without any myfaces dependencies', function () {
|
|
49
|
-
beforeEach(function () {
|
|
50
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
51
|
-
var waitForResult;
|
|
52
|
-
var _this = this;
|
|
53
|
-
return __generator(this, function (_a) {
|
|
54
|
-
waitForResult = defaultMyFaces();
|
|
55
|
-
return [2 /*return*/, waitForResult.then(function (close) {
|
|
56
|
-
_this.xhr = sinon.useFakeXMLHttpRequest();
|
|
57
|
-
_this.requests = [];
|
|
58
|
-
_this.xhr.onCreate = function (xhr) {
|
|
59
|
-
_this.requests.push(xhr);
|
|
60
|
-
};
|
|
61
|
-
global.XMLHttpRequest = _this.xhr;
|
|
62
|
-
window.XMLHttpRequest = _this.xhr;
|
|
63
|
-
_this.jsfAjaxResponse = sinon.stub(global.jsf.ajax, "response");
|
|
64
|
-
_this.fakeWebsocket = new FakeWebsocket_1.FakeWebsocket();
|
|
65
|
-
_this.socket = sinon.stub(window, 'WebSocket').returns(_this.fakeWebsocket);
|
|
66
|
-
global.WebSocket = _this.socket;
|
|
67
|
-
_this.pushImpl = global.PushImpl;
|
|
68
|
-
_this.initSpy = sinon.spy(_this.pushImpl, "init");
|
|
69
|
-
_this.closeIt = function () {
|
|
70
|
-
global.XMLHttpRequest = window.XMLHttpRequest = _this.xhr.restore();
|
|
71
|
-
_this.jsfAjaxResponse.restore();
|
|
72
|
-
_this.socket.restore();
|
|
73
|
-
_this.initSpy.restore();
|
|
74
|
-
delete global.WebSocket;
|
|
75
|
-
AjaxImpl_1.Implementation.reset();
|
|
76
|
-
close();
|
|
77
|
-
};
|
|
78
|
-
})];
|
|
79
|
-
});
|
|
80
|
-
});
|
|
81
|
-
});
|
|
82
|
-
afterEach(function () {
|
|
83
|
-
this.closeIt();
|
|
84
|
-
});
|
|
85
|
-
it("must register a channel", function (done) {
|
|
86
|
-
/**
|
|
87
|
-
* export function init(socketClientId: string,
|
|
88
|
-
uri: string,
|
|
89
|
-
channel: string,
|
|
90
|
-
onopen: Function,
|
|
91
|
-
onmessage: Function,
|
|
92
|
-
onclose: Function,
|
|
93
|
-
behaviorScripts: any,
|
|
94
|
-
autoconnect: boolean) {
|
|
95
|
-
PushImpl.init(socketClientId, uri, channel, onopen, onmessage, onclose, behaviorScripts, autoconnect);
|
|
96
|
-
}
|
|
97
|
-
*/
|
|
98
|
-
var _a, _b;
|
|
99
|
-
try {
|
|
100
|
-
jsf.push.init("clientId1", "booga.ws", "mychannel", function () {
|
|
101
|
-
done();
|
|
102
|
-
}, function () {
|
|
103
|
-
}, function () {
|
|
104
|
-
}, "", true);
|
|
105
|
-
(0, chai_1.expect)(this.initSpy.called).to.be.true;
|
|
106
|
-
var calledArgs = (_b = (_a = this.initSpy) === null || _a === void 0 ? void 0 : _a.getCall(0)) === null || _b === void 0 ? void 0 : _b.args;
|
|
107
|
-
(0, chai_1.expect)(calledArgs[0] == "clientId1").to.be.true;
|
|
108
|
-
(0, chai_1.expect)(calledArgs[1] == "booga.ws").to.be.true;
|
|
109
|
-
(0, chai_1.expect)(calledArgs[2] == "mychannel").to.be.true;
|
|
110
|
-
(0, chai_1.expect)(assertType(calledArgs[3], "function")).to.be.true;
|
|
111
|
-
(0, chai_1.expect)(assertType(calledArgs[4], "function")).to.be.true;
|
|
112
|
-
(0, chai_1.expect)(assertType(calledArgs[5], "function")).to.be.true;
|
|
113
|
-
//implementation specific
|
|
114
|
-
(0, chai_1.expect)("clientId1" in this.pushImpl.components, "a component must be registered").to.be.true;
|
|
115
|
-
(0, chai_1.expect)("booga.ws" in this.pushImpl.sockets, "a socket must be registered").to.be.true;
|
|
116
|
-
}
|
|
117
|
-
finally {
|
|
118
|
-
}
|
|
119
|
-
});
|
|
120
|
-
it("callbacks must be called", function (done) {
|
|
121
|
-
var _this = this;
|
|
122
|
-
var openCalled = false;
|
|
123
|
-
var closeCalled = false;
|
|
124
|
-
var messageCalled = false;
|
|
125
|
-
var msg = null;
|
|
126
|
-
var cnl = null;
|
|
127
|
-
new Promise(function (resolve, reject) {
|
|
128
|
-
jsf.push.init("blarg", "booga.ws", "mychannel", function () {
|
|
129
|
-
openCalled = true;
|
|
130
|
-
_this.fakeWebsocket._respond({ data: '"booga"' });
|
|
131
|
-
}, function (message, channel, event) {
|
|
132
|
-
messageCalled = true;
|
|
133
|
-
msg = message;
|
|
134
|
-
cnl = channel;
|
|
135
|
-
resolve(function () { return true; });
|
|
136
|
-
}, function () {
|
|
137
|
-
closeCalled = true;
|
|
138
|
-
}, "", true);
|
|
139
|
-
}).then(function () {
|
|
140
|
-
(0, chai_1.expect)(openCalled, "Open must have been called due to autoConnect").to.be.true;
|
|
141
|
-
(0, chai_1.expect)(messageCalled, "on a server response the message must have been called").to.be.true;
|
|
142
|
-
(0, chai_1.expect)(msg, "proper message must be passed").to.eq("booga");
|
|
143
|
-
(0, chai_1.expect)(cnl, "proper message must be passed").to.eq("mychannel");
|
|
144
|
-
(0, chai_1.expect)(closeCalled, "websocket still open").to.be.false;
|
|
145
|
-
jsf.push.close("blarg");
|
|
146
|
-
(0, chai_1.expect)(closeCalled, "websocket now closed").to.be.true;
|
|
147
|
-
done();
|
|
148
|
-
});
|
|
149
|
-
});
|
|
150
|
-
it("manual open must work", function (done) {
|
|
151
|
-
var _this = this;
|
|
152
|
-
var openCalled = false;
|
|
153
|
-
var closeCalled = false;
|
|
154
|
-
var messageCalled = false;
|
|
155
|
-
var msg = null;
|
|
156
|
-
var cnl = null;
|
|
157
|
-
new Promise(function (resolve, reject) {
|
|
158
|
-
jsf.push.init("blarg", "booga.ws", "mychannel", function () {
|
|
159
|
-
openCalled = true;
|
|
160
|
-
_this.fakeWebsocket._respond({ data: '"booga"' });
|
|
161
|
-
}, function (message, channel, event) {
|
|
162
|
-
messageCalled = true;
|
|
163
|
-
msg = message;
|
|
164
|
-
cnl = channel;
|
|
165
|
-
resolve(function () { return true; });
|
|
166
|
-
}, function () {
|
|
167
|
-
closeCalled = true;
|
|
168
|
-
}, "", false);
|
|
169
|
-
jsf.push.open("blarg");
|
|
170
|
-
}).then(function () {
|
|
171
|
-
(0, chai_1.expect)(openCalled, "Open must have been called due to open").to.be.true;
|
|
172
|
-
(0, chai_1.expect)(messageCalled, "on a server response the message must have been called").to.be.true;
|
|
173
|
-
(0, chai_1.expect)(msg, "proper message must be passed").to.eq("booga");
|
|
174
|
-
(0, chai_1.expect)(cnl, "proper message must be passed").to.eq("mychannel");
|
|
175
|
-
(0, chai_1.expect)(closeCalled, "websocket still open").to.be.false;
|
|
176
|
-
jsf.push.close("blarg");
|
|
177
|
-
(0, chai_1.expect)(closeCalled, "websocket now closed").to.be.true;
|
|
178
|
-
done();
|
|
179
|
-
});
|
|
180
|
-
});
|
|
181
|
-
});
|
|
182
|
-
//# sourceMappingURL=WebsocketTest.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"WebsocketTest.js","sourceRoot":"","sources":["../../../../src/test/typescript/xhrCore/WebsocketTest.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAA+B;AAC/B,6BAA+B;AAC/B,4EAAyE;AACzE,mEAAsE;AAEtE,6BAA4B;AAE5B,IAAO,cAAc,GAAG,6BAAa,CAAC,cAAc,CAAC;AACrD,uCAA+B;AAC/B,iDAA8C;AAC9C,IAAO,UAAU,GAAG,gBAAI,CAAC,UAAU,CAAC;AAIpC,IAAA,gBAAQ,EAAC,sGAAsG,EAAE;IAE7G,UAAU,CAAC;;;;;gBAEH,aAAa,GAAG,cAAc,EAAE,CAAC;gBAErC,sBAAO,aAAa,CAAC,IAAI,CAAC,UAAC,KAAK;wBAE5B,KAAI,CAAC,GAAG,GAAG,KAAK,CAAC,qBAAqB,EAAE,CAAC;wBACzC,KAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;wBACnB,KAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,UAAC,GAAG;4BACpB,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBAC5B,CAAC,CAAC;wBACI,MAAO,CAAC,cAAc,GAAG,KAAI,CAAC,GAAG,CAAC;wBAClC,MAAO,CAAC,cAAc,GAAG,KAAI,CAAC,GAAG,CAAC;wBAExC,KAAI,CAAC,eAAe,GAAG,KAAK,CAAC,IAAI,CAAO,MAAO,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;wBAEtE,KAAI,CAAC,aAAa,GAAG,IAAI,6BAAa,EAAE,CAAC;wBACzC,KAAI,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,KAAI,CAAC,aAAa,CAAC,CAAC;wBACpE,MAAO,CAAC,SAAS,GAAG,KAAI,CAAC,MAAM,CAAC;wBAEtC,KAAI,CAAC,QAAQ,GAAS,MAAO,CAAC,QAAQ,CAAC;wBACvC,KAAI,CAAC,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,KAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;wBAEhD,KAAI,CAAC,OAAO,GAAG;4BACL,MAAO,CAAC,cAAc,GAAS,MAAO,CAAC,cAAc,GAAG,KAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;4BACjF,KAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;4BAC/B,KAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;4BACtB,KAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;4BACvB,OAAa,MAAO,CAAC,SAAS,CAAC;4BAC/B,yBAAc,CAAC,KAAK,EAAE,CAAC;4BACvB,KAAK,EAAE,CAAC;wBACZ,CAAC,CAAA;oBACL,CAAC,CAAC,EAAC;;;KAEN,CAAC,CAAC;IAEH,SAAS,CAAC;QACN,IAAI,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE,UAAU,IAAc;QAClD;;;;;;;;;;;WAWG;;QAGH,IAAI;YAEA,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE;gBAC5C,IAAI,EAAE,CAAC;YACX,CAAC,EACD;YAEA,CAAC,EACD;YACA,CAAC,EACD,EAAE,EACF,IAAI,CACP,CAAC;YAEF,IAAA,aAAM,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;YAEvC,IAAI,UAAU,GAAG,MAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,OAAO,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAC;YAEhD,IAAA,aAAM,EAAC,UAAU,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;YAChD,IAAA,aAAM,EAAC,UAAU,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;YAC/C,IAAA,aAAM,EAAC,UAAU,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;YAEhD,IAAA,aAAM,EAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;YACzD,IAAA,aAAM,EAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;YACzD,IAAA,aAAM,EAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;YAEzD,yBAAyB;YACzB,IAAA,aAAM,EAAC,WAAW,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,gCAAgC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;YAC7F,IAAA,aAAM,EAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,6BAA6B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;SACzF;gBAAS;SACT;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,UAAU,IAAI;QAAd,iBA6C9B;QA1CG,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,IAAI,aAAa,GAAG,KAAK,CAAC;QAE1B,IAAI,GAAG,GAAG,IAAI,CAAC;QACf,IAAI,GAAG,GAAG,IAAI,CAAC;QACf,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;YACxB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE;gBACxC,UAAU,GAAG,IAAI,CAAC;gBAClB,KAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAC,IAAI,EAAE,SAAS,EAAC,CAAC,CAAC;YACnD,CAAC,EAED,UAAC,OAAe,EAAE,OAAe,EAAE,KAAU;gBACzC,aAAa,GAAG,IAAI,CAAC;gBACrB,GAAG,GAAG,OAAO,CAAC;gBACd,GAAG,GAAG,OAAO,CAAC;gBACd,OAAO,CAAC,cAAM,OAAA,IAAI,EAAJ,CAAI,CAAC,CAAC;YACxB,CAAC,EACD;gBACI,WAAW,GAAG,IAAI,CAAC;YACvB,CAAC,EACD,EAAE,EACF,IAAI,CACP,CAAC;QACN,CAAC,CAAC,CAAC,IAAI,CAAC;YACJ,IAAA,aAAM,EAAC,UAAU,EAAE,+CAA+C,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;YAI/E,IAAA,aAAM,EAAC,aAAa,EAAE,wDAAwD,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;YAC3F,IAAA,aAAM,EAAC,GAAG,EAAE,+BAA+B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;YAC5D,IAAA,aAAM,EAAC,GAAG,EAAE,+BAA+B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;YAEhE,IAAA,aAAM,EAAC,WAAW,EAAE,sBAAsB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;YAExD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACxB,IAAA,aAAM,EAAC,WAAW,EAAE,sBAAsB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;YAGvD,IAAI,EAAE,CAAC;QACX,CAAC,CAAC,CAAC;IAEP,CAAC,CAAC,CAAC;IAGH,EAAE,CAAC,uBAAuB,EAAE,UAAU,IAAI;QAAd,iBA4C3B;QAzCG,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,IAAI,aAAa,GAAG,KAAK,CAAC;QAE1B,IAAI,GAAG,GAAG,IAAI,CAAC;QACf,IAAI,GAAG,GAAG,IAAI,CAAC;QACf,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;YACxB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE;gBACxC,UAAU,GAAG,IAAI,CAAC;gBAClB,KAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAC,IAAI,EAAE,SAAS,EAAC,CAAC,CAAC;YACnD,CAAC,EAED,UAAC,OAAe,EAAE,OAAe,EAAE,KAAU;gBACzC,aAAa,GAAG,IAAI,CAAC;gBACrB,GAAG,GAAG,OAAO,CAAC;gBACd,GAAG,GAAG,OAAO,CAAC;gBACd,OAAO,CAAC,cAAM,OAAA,IAAI,EAAJ,CAAI,CAAC,CAAC;YACxB,CAAC,EACD;gBACI,WAAW,GAAG,IAAI,CAAC;YACvB,CAAC,EACD,EAAE,EACF,KAAK,CACR,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC,IAAI,CAAC;YACJ,IAAA,aAAM,EAAC,UAAU,EAAE,wCAAwC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;YAExE,IAAA,aAAM,EAAC,aAAa,EAAE,wDAAwD,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;YAC3F,IAAA,aAAM,EAAC,GAAG,EAAE,+BAA+B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;YAC5D,IAAA,aAAM,EAAC,GAAG,EAAE,+BAA+B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;YAEhE,IAAA,aAAM,EAAC,WAAW,EAAE,sBAAsB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;YAExD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACxB,IAAA,aAAM,EAAC,WAAW,EAAE,sBAAsB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;YAGvD,IAAI,EAAE,CAAC;QACX,CAAC,CAAC,CAAC;IAEP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|