@ui5/server 3.1.1 → 3.1.3
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/CHANGELOG.md
CHANGED
|
@@ -2,10 +2,22 @@
|
|
|
2
2
|
All notable changes to this project will be documented in this file.
|
|
3
3
|
This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
|
|
4
4
|
|
|
5
|
-
A list of unreleased changes can be found [here](https://github.com/SAP/ui5-server/compare/v3.1.
|
|
5
|
+
A list of unreleased changes can be found [here](https://github.com/SAP/ui5-server/compare/v3.1.3...HEAD).
|
|
6
|
+
|
|
7
|
+
<a name="v3.1.3"></a>
|
|
8
|
+
## [v3.1.3] - 2023-05-23
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
- **middleware/testRunner:** Update resources from OpenUI5 [`f0c7291`](https://github.com/SAP/ui5-server/commit/f0c7291d2dc1d753e04184fdf2127c278810f0c4)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
<a name="v3.1.2"></a>
|
|
14
|
+
## [v3.1.2] - 2023-04-12
|
|
15
|
+
### Bug Fixes
|
|
16
|
+
- Fix JSDoc names of typedefs in MiddlewareUtil. [`dbd6fe1`](https://github.com/SAP/ui5-server/commit/dbd6fe19c229471ba2b8621b97b8f5a9bca56a78)
|
|
17
|
+
|
|
6
18
|
|
|
7
19
|
<a name="v3.1.1"></a>
|
|
8
|
-
## [v3.1.1] - 2023-03-
|
|
20
|
+
## [v3.1.1] - 2023-03-16
|
|
9
21
|
### Bug Fixes
|
|
10
22
|
- Allow serving of propertyfiles of non component project types [`1bc6ec7`](https://github.com/SAP/ui5-server/commit/1bc6ec72a15ae7df558c4938b2670d0e78af710b)
|
|
11
23
|
|
|
@@ -308,6 +320,8 @@ Only Node.js v10 or higher is supported.
|
|
|
308
320
|
|
|
309
321
|
<a name="v0.0.1"></a>
|
|
310
322
|
## v0.0.1 - 2018-06-06
|
|
323
|
+
[v3.1.3]: https://github.com/SAP/ui5-server/compare/v3.1.2...v3.1.3
|
|
324
|
+
[v3.1.2]: https://github.com/SAP/ui5-server/compare/v3.1.1...v3.1.2
|
|
311
325
|
[v3.1.1]: https://github.com/SAP/ui5-server/compare/v3.1.0...v3.1.1
|
|
312
326
|
[v3.1.0]: https://github.com/SAP/ui5-server/compare/v3.0.1...v3.1.0
|
|
313
327
|
[v3.0.1]: https://github.com/SAP/ui5-server/compare/v3.0.0...v3.0.1
|
|
@@ -101,7 +101,7 @@ class MiddlewareUtil {
|
|
|
101
101
|
* For details on individual functions, see [Project]{@link @ui5/project/specifications/Project}
|
|
102
102
|
*
|
|
103
103
|
* @public
|
|
104
|
-
* @typedef {object} @ui5/
|
|
104
|
+
* @typedef {object} @ui5/server/middleware/MiddlewareUtil~ProjectInterface
|
|
105
105
|
* @property {Function} getType Get the project type
|
|
106
106
|
* @property {Function} getName Get the project name
|
|
107
107
|
* @property {Function} getVersion Get the project version
|
|
@@ -127,7 +127,7 @@ class MiddlewareUtil {
|
|
|
127
127
|
* @param {string|@ui5/fs/Resource} [projectNameOrResource]
|
|
128
128
|
* Name of the project to retrieve or a Resource instance to retrieve the associated project for.
|
|
129
129
|
* Defaults to the name of the current root project
|
|
130
|
-
* @returns {@ui5/
|
|
130
|
+
* @returns {@ui5/server/middleware/MiddlewareUtil~ProjectInterface|undefined}
|
|
131
131
|
* Specification Version-dependent interface to the Project instance or <code>undefined</code>
|
|
132
132
|
* if the project name is unknown or the provided resource is not associated with any project.
|
|
133
133
|
* @public
|
|
@@ -170,7 +170,7 @@ class MiddlewareUtil {
|
|
|
170
170
|
* For details on individual functions, see [@ui5/fs/resourceFactory]{@link @ui5/fs/resourceFactory}
|
|
171
171
|
*
|
|
172
172
|
* @public
|
|
173
|
-
* @typedef {object} @ui5/
|
|
173
|
+
* @typedef {object} @ui5/server/middleware/MiddlewareUtil~resourceFactory
|
|
174
174
|
* @property {Function} createResource Creates a [Resource]{@link @ui5/fs/Resource}.
|
|
175
175
|
* Accepts the same parameters as the [Resource]{@link @ui5/fs/Resource} constructor.
|
|
176
176
|
* @property {Function} createReaderCollection Creates a reader collection:
|
|
@@ -192,7 +192,7 @@ class MiddlewareUtil {
|
|
|
192
192
|
* This attribute is only available to custom server middleware extensions defining
|
|
193
193
|
* <b>Specification Version 3.0 and above</b>.
|
|
194
194
|
*
|
|
195
|
-
* @type {@ui5/
|
|
195
|
+
* @type {@ui5/server/middleware/MiddlewareUtil~resourceFactory}
|
|
196
196
|
* @public
|
|
197
197
|
*/
|
|
198
198
|
resourceFactory = {
|
|
@@ -108,13 +108,9 @@
|
|
|
108
108
|
window.sap.ui.qunit.TestRunner = {
|
|
109
109
|
|
|
110
110
|
checkTestPage: function(sTestPage, bSequential) {
|
|
111
|
-
var t0 = Date.now();
|
|
112
111
|
var oPromise =
|
|
113
112
|
this._checkTestPage(sTestPage, bSequential)
|
|
114
113
|
.then(function(aTestPages) {
|
|
115
|
-
var t1 = Date.now();
|
|
116
|
-
window.console.log("[DEBUG] checkTestPage(\"" + sTestPage + "\") found " + aTestPages.length + " pages in " + (t1 - t0) + "msec.");
|
|
117
|
-
window.console.log("[DEBUG] checkTestPage(\"" + sTestPage + "\") currently running IFrames: " + window.frames.length);
|
|
118
114
|
return aTestPages;
|
|
119
115
|
});
|
|
120
116
|
oPromise.done = oPromise.then; // compat for Deferred
|
|
@@ -139,8 +135,8 @@
|
|
|
139
135
|
// check for an existing test page and check for test suite or page
|
|
140
136
|
oXHRQueue.ajax(sTestPage).then(function(sData) {
|
|
141
137
|
if (/(?:window\.suite\s*=|function\s*suite\s*\(\s*\)\s*{)/.test(sData)
|
|
142
|
-
|| (/data-sap-ui-testsuite/.test(sData) && !/sap\/ui\/test\/starter\/runTest/.test(sData))
|
|
143
|
-
|
|
138
|
+
|| (/data-sap-ui-testsuite/.test(sData) && !/sap\/ui\/test\/starter\/runTest/.test(sData))
|
|
139
|
+
|| /sap\/ui\/test\/starter\/createSuite/.test(sData) ) {
|
|
144
140
|
var $frame = jQuery("<iframe>");
|
|
145
141
|
var that = this;
|
|
146
142
|
|
|
@@ -194,11 +190,7 @@
|
|
|
194
190
|
findTestPages: function(oIFrame, bSequential) {
|
|
195
191
|
|
|
196
192
|
return Promise.resolve(oIFrame.contentWindow.suite()).then(function(oSuite) {
|
|
197
|
-
window.console.log("[DEBUG] findTestPages oIFrame source: " + oIFrame.src);
|
|
198
193
|
var aPages = oSuite && oSuite.getTestPages() || [];
|
|
199
|
-
for (var i = 0; i < aPages.length; i++) {
|
|
200
|
-
window.console.log("[DEBUG] findTestPages oIFrame source " + oIFrame.src + ": " + aPages[i]);
|
|
201
|
-
}
|
|
202
194
|
return new Promise(function(resolve, reject) {
|
|
203
195
|
|
|
204
196
|
try {
|
|
@@ -303,12 +295,12 @@
|
|
|
303
295
|
},
|
|
304
296
|
|
|
305
297
|
printTestResultAndRemoveFrame : function (oInst, $frame, $framediv, oContext) {
|
|
306
|
-
var
|
|
298
|
+
var oBlanketCoverage = $frame[0].contentWindow._$blanket;
|
|
307
299
|
|
|
308
300
|
// in case of coverage either merge it or set it on the _$blanket object
|
|
309
|
-
if (
|
|
301
|
+
if (oBlanketCoverage) {
|
|
310
302
|
window._$blanket = window._$blanket || {};
|
|
311
|
-
jQuery.each(
|
|
303
|
+
jQuery.each(oBlanketCoverage, function(sModule, aCoverageInfo) {
|
|
312
304
|
if (!window._$blanket[sModule]) {
|
|
313
305
|
window._$blanket[sModule] = aCoverageInfo;
|
|
314
306
|
} else {
|
|
@@ -387,11 +379,8 @@
|
|
|
387
379
|
|
|
388
380
|
if ($qunitBanner.hasClass("qunit-fail") || $qunitBanner.hasClass("qunit-pass")) {
|
|
389
381
|
|
|
390
|
-
//IE workaround for the lack of document.baseURI property
|
|
391
|
-
var baseURI = doc.location.href;
|
|
392
|
-
|
|
393
382
|
if (sTestName == " ") {
|
|
394
|
-
sTestName = "QUnit page for " + baseURI.substring(baseURI.indexOf("test-resources") + 15, baseURI.length);
|
|
383
|
+
sTestName = "QUnit page for " + doc.baseURI.substring(doc.baseURI.indexOf("test-resources") + 15, doc.baseURI.length);
|
|
395
384
|
}
|
|
396
385
|
oContext = oInst.fnGetTestResults(sTestName, $results);
|
|
397
386
|
this.printTestResultAndRemoveFrame(oInst, $frame, $framediv, oContext);
|
|
@@ -473,7 +462,47 @@
|
|
|
473
462
|
},
|
|
474
463
|
|
|
475
464
|
getCoverage: function() {
|
|
476
|
-
return window._$blanket;
|
|
465
|
+
return window._$blanket || window.top.__coverage__;
|
|
466
|
+
},
|
|
467
|
+
|
|
468
|
+
reportCoverage: function (reportToEl) {
|
|
469
|
+
var oCoverage = this.getCoverage();
|
|
470
|
+
|
|
471
|
+
if (!oCoverage) {
|
|
472
|
+
return;
|
|
473
|
+
}
|
|
474
|
+
|
|
475
|
+
if ( window.blanket && !window.top.__coverage__ ) {
|
|
476
|
+
window.blanket.report({});
|
|
477
|
+
} else {
|
|
478
|
+
jQuery.ajax("/.ui5/coverage/report", {
|
|
479
|
+
method: "POST",
|
|
480
|
+
data: JSON.stringify(window.top.__coverage__),
|
|
481
|
+
headers: {
|
|
482
|
+
"Content-Type": "application/json"
|
|
483
|
+
}
|
|
484
|
+
})
|
|
485
|
+
.then(function (oData) {
|
|
486
|
+
var aReports = oData.availableReports;
|
|
487
|
+
var oHTMLReport = aReports.filter(function (oCurReport) {
|
|
488
|
+
// HTML is the only one that make sense and
|
|
489
|
+
// provides understandable information
|
|
490
|
+
return oCurReport.report === "html";
|
|
491
|
+
})[0];
|
|
492
|
+
|
|
493
|
+
if (!oHTMLReport) { // Do not render reports if HTML or lcov are not provided
|
|
494
|
+
return;
|
|
495
|
+
}
|
|
496
|
+
|
|
497
|
+
var oFrameEl = document.createElement("iframe");
|
|
498
|
+
oFrameEl.src = "/.ui5/coverage/report/" + oHTMLReport.destination;
|
|
499
|
+
oFrameEl.style.border = "none";
|
|
500
|
+
oFrameEl.style.width = "100%";
|
|
501
|
+
oFrameEl.style.height = "100vh";
|
|
502
|
+
oFrameEl.sandbox = "allow-scripts";
|
|
503
|
+
reportToEl.appendChild(oFrameEl);
|
|
504
|
+
});
|
|
505
|
+
}
|
|
477
506
|
},
|
|
478
507
|
|
|
479
508
|
getTestPageUrl: function(sFallbackUrl) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<!DOCTYPE HTML>
|
|
2
2
|
<html>
|
|
3
3
|
<head>
|
|
4
|
-
|
|
4
|
+
<meta charset="utf-8">
|
|
5
5
|
<title>SAPUI5 QUnit TestRunner</title>
|
|
6
6
|
|
|
7
7
|
<script src="../../../../resources/sap/ui/thirdparty/es6-promise.js"></script>
|
|
@@ -147,9 +147,10 @@
|
|
|
147
147
|
sap.ui.qunit.TestRunner.runTests(aTests, nStep).then(function(oResult) {
|
|
148
148
|
$this.val("Run");
|
|
149
149
|
jQuery("#stop").toggle();
|
|
150
|
-
if (sap.ui.qunit.TestRunner.hasCoverage()
|
|
151
|
-
|
|
152
|
-
|
|
150
|
+
if (sap.ui.qunit.TestRunner.hasCoverage()) {
|
|
151
|
+
var $testCoverage = jQuery("div.test-coverage");
|
|
152
|
+
$testCoverage.toggle();
|
|
153
|
+
sap.ui.qunit.TestRunner.reportCoverage( $testCoverage[0] );
|
|
153
154
|
}
|
|
154
155
|
}).then(function() {
|
|
155
156
|
$this.val("Run");
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ui5/server",
|
|
3
|
-
"version": "3.1.
|
|
3
|
+
"version": "3.1.3",
|
|
4
4
|
"description": "UI5 Tooling - Server",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "SAP SE",
|
|
@@ -114,8 +114,8 @@
|
|
|
114
114
|
"url": "git@github.com:SAP/ui5-server.git"
|
|
115
115
|
},
|
|
116
116
|
"dependencies": {
|
|
117
|
-
"@ui5/builder": "^3.0.
|
|
118
|
-
"@ui5/fs": "^3.0.
|
|
117
|
+
"@ui5/builder": "^3.0.5",
|
|
118
|
+
"@ui5/fs": "^3.0.4",
|
|
119
119
|
"@ui5/logger": "^3.0.0",
|
|
120
120
|
"body-parser": "^1.20.2",
|
|
121
121
|
"compression": "^1.7.4",
|
|
@@ -125,7 +125,7 @@
|
|
|
125
125
|
"etag": "^1.8.1",
|
|
126
126
|
"express": "^4.18.2",
|
|
127
127
|
"fresh": "^0.5.2",
|
|
128
|
-
"graceful-fs": "^4.2.
|
|
128
|
+
"graceful-fs": "^4.2.11",
|
|
129
129
|
"mime-types": "^2.1.35",
|
|
130
130
|
"parseurl": "^1.3.3",
|
|
131
131
|
"portscanner": "^2.2.0",
|
|
@@ -136,22 +136,22 @@
|
|
|
136
136
|
},
|
|
137
137
|
"devDependencies": {
|
|
138
138
|
"@istanbuljs/esm-loader-hook": "^0.2.0",
|
|
139
|
-
"@ui5/project": "^3.
|
|
140
|
-
"ava": "^5.
|
|
139
|
+
"@ui5/project": "^3.3.1",
|
|
140
|
+
"ava": "^5.3.0",
|
|
141
141
|
"chokidar-cli": "^3.0.0",
|
|
142
142
|
"cross-env": "^7.0.3",
|
|
143
143
|
"depcheck": "^1.4.3",
|
|
144
144
|
"docdash": "^2.0.1",
|
|
145
|
-
"eslint": "^8.
|
|
145
|
+
"eslint": "^8.42.0",
|
|
146
146
|
"eslint-config-google": "^0.14.0",
|
|
147
147
|
"eslint-plugin-ava": "^14.0.0",
|
|
148
|
-
"eslint-plugin-jsdoc": "^
|
|
149
|
-
"esmock": "^2.1
|
|
148
|
+
"eslint-plugin-jsdoc": "^46.2.2",
|
|
149
|
+
"esmock": "^2.3.1",
|
|
150
150
|
"jsdoc": "^4.0.2",
|
|
151
151
|
"nyc": "^15.1.0",
|
|
152
|
-
"open-cli": "^7.
|
|
153
|
-
"rimraf": "^
|
|
154
|
-
"sinon": "^15.0
|
|
152
|
+
"open-cli": "^7.2.0",
|
|
153
|
+
"rimraf": "^5.0.1",
|
|
154
|
+
"sinon": "^15.1.0",
|
|
155
155
|
"supertest": "^6.3.3",
|
|
156
156
|
"tap-xunit": "^2.4.1"
|
|
157
157
|
}
|