Skip to content

Commit 119e9e0

Browse files
authored
refactor: Apply best practices (#144)
1 parent 80c6681 commit 119e9e0

File tree

38 files changed

+9464
-10243
lines changed

38 files changed

+9464
-10243
lines changed

.github/workflows/test.yml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,3 @@ jobs:
2424
- name: Test the Application
2525
run: npm run test
2626
working-directory: ./demo/RootComponent
27-
- name: Coveralls
28-
uses: coverallsapp/github-action@master
29-
with:
30-
github-token: ${{ secrets.GITHUB_TOKEN }}
31-
path-to-lcov: "./demo/RootComponent/coverage/lcov/lcov.info"
32-
base-path: "./demo/RootComponent"

demo/.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
node_modules/
22
dist/
33
.DS_Store
4-
coverage/
4+
coverage/
5+
.nyc_output/
6+
report/

demo/BaseComponent/package.json

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,8 @@
55
"description": "This is the base component",
66
"scripts": {
77
"start": "ui5 serve",
8-
"test": "rimraf coverage && npm run karma-ci",
9-
"lint": "eslint src",
10-
"karma": "karma start",
11-
"karma-ci": "karma start karma-ci.conf.js"
8+
"test": "npm run lint",
9+
"lint": "eslint src"
1210
},
1311
"repository": {
1412
"type": "git",
@@ -26,10 +24,6 @@
2624
"eslint": "^9.25.0",
2725
"@ui5/cli": "^4.0.14",
2826
"local-web-server": "^5.4.0",
29-
"karma": "^6.4.4",
30-
"karma-coverage": "^2.2.1",
31-
"karma-chrome-launcher": "^3.2.0",
32-
"karma-ui5": "^4.1.0",
3327
"rimraf": "^6.0.1"
3428
},
3529
"engines": {
Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,17 @@
1-
sap.ui.define(() => {
1+
sap.ui.define([
2+
"sap/ui/core/Lib"
3+
], (Library) => {
24

35
"use strict";
46

5-
sap.ui.getCore().initLibrary({
7+
return Library.init({
68
name : "my.lib.sample.base",
9+
apiVersion: 2,
710
// eslint-disable-next-line no-template-curly-in-string
811
version : "${version}",
912
noLibraryCSS: true,
1013
dependencies : [ "sap.ui.core" ],
1114
controls : [ ],
1215
types : [ ]
1316
});
14-
// eslint-disable-next-line no-undef
15-
return my.lib.sample.base;
1617
});

demo/CategoriesComponent/package.json

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,8 @@
77
"start": "ui5 serve",
88
"build": "ui5 build -a --clean-dest",
99
"serve": "ws --compress -d dist",
10-
"test": "rimraf coverage && npm run karma-ci",
11-
"lint": "eslint src",
12-
"karma": "karma start",
13-
"karma-ci": "karma start karma-ci.conf.js"
10+
"test": "npm run lint",
11+
"lint": "eslint src"
1412
},
1513
"repository": {
1614
"type": "git",
@@ -32,10 +30,6 @@
3230
"eslint": "^9.25.0",
3331
"@ui5/cli": "^4.0.14",
3432
"local-web-server": "^5.4.0",
35-
"karma": "^6.4.4",
36-
"karma-coverage": "^2.2.1",
37-
"karma-chrome-launcher": "^3.2.0",
38-
"karma-ui5": "^4.1.0",
3933
"rimraf": "^6.0.1"
4034
},
4135
"engines": {

demo/CategoriesComponent/src/my/lib/sample/categories/localService/mockserver.js

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
sap.ui.define([
22
"sap/ui/core/util/MockServer",
33
"sap/ui/model/json/JSONModel",
4-
"sap/base/Log",
5-
"sap/base/util/UriParameters"
6-
], (MockServer, JSONModel, Log, UriParameters) => {
4+
"sap/base/Log"
5+
], (MockServer, JSONModel, Log) => {
76
"use strict";
87

98

@@ -30,7 +29,7 @@ sap.ui.define([
3029
oManifestModel = new JSONModel(sManifestUrl);
3130

3231
oManifestModel.attachRequestCompleted(() => {
33-
const oUriParameters = new UriParameters(window.location.href),
32+
const oSearchParams = new URLSearchParams(window.location.search),
3433
// Parse manifest for local metadata URI
3534
sJsonFilesUrl = sap.ui.require.toUrl(sJsonFilesPath),
3635
oMainDataSource = oManifestModel.getProperty("/sap.app/dataSources/mainService"),
@@ -50,7 +49,7 @@ sap.ui.define([
5049
// Configure mock server with the given options or a default delay of 0.5s
5150
MockServer.config({
5251
autoRespond : true,
53-
autoRespondAfter : (oOptions.delay || oUriParameters.get("serverDelay") || 500)
52+
autoRespondAfter : (oOptions.delay || oSearchParams.get("serverDelay") || 500)
5453
});
5554

5655
// Simulate all requests using mock data
@@ -69,7 +68,7 @@ sap.ui.define([
6968
};
7069

7170
// Simulate metadata errors
72-
if (oOptions.metadataError || oUriParameters.get("metadataError")) {
71+
if (oOptions.metadataError || oSearchParams.get("metadataError")) {
7372
aRequests.forEach((aEntry) => {
7473
if (aEntry.path.toString().indexOf("$metadata") > -1) {
7574
fnResponse(500, "metadata Error", aEntry);
@@ -78,7 +77,7 @@ sap.ui.define([
7877
}
7978

8079
// Simulate request errors
81-
const sErrorParam = oOptions.errorType || oUriParameters.get("errorType"),
80+
const sErrorParam = oOptions.errorType || oSearchParams.get("errorType"),
8281
iErrorCode = sErrorParam === "badRequest" ? 400 : 500;
8382
if (sErrorParam) {
8483
aRequests.forEach((aEntry) => {

demo/CategoriesComponent/src/my/lib/sample/categories/test/initMockServer.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
sap.ui.define([
2-
"../localService/mockserver"
3-
], (mockserver) => {
2+
"../localService/mockserver",
3+
"sap/ui/core/Lib"
4+
], (mockserver, Library) => {
45
"use strict";
56

67
const aMockservers = [];
@@ -9,7 +10,7 @@ sap.ui.define([
910
aMockservers.push(mockserver.init());
1011

1112
Promise.all(aMockservers).catch(async (oError) => {
12-
await sap.ui.getCore().loadLibrary("sap.m", { async: true });
13+
await Library.load({name: "sap.m"});
1314
sap.ui.require(["sap/m/MessageBox"], (MessageBox) => {
1415
MessageBox.error(oError.message);
1516
});

demo/CategoriesComponent/src/my/lib/sample/categories/test/mockServer.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,11 @@
88
<script id="sap-ui-bootstrap"
99
src="/resources/sap-ui-core.js"
1010
data-sap-ui-theme="sap_horizon"
11-
data-sap-ui-resourceroots='{"my.lib.sample.categories": "../"}'
12-
data-sap-ui-oninit="module:my/lib/sample/categories/test/initMockServer"
13-
data-sap-ui-compatVersion="edge"
11+
data-sap-ui-resource-roots='{"my.lib.sample.categories": "../"}'
12+
data-sap-ui-on-init="module:my/lib/sample/categories/test/initMockServer"
13+
data-sap-ui-compat-version="edge"
1414
data-sap-ui-async="true"
15-
data-sap-ui-frameOptions="trusted">
15+
data-sap-ui-frame-options="trusted">
1616
</script>
1717
</head>
1818

demo/ProductsComponent/package.json

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,8 @@
77
"start": "ui5 serve",
88
"build": "ui5 build -a --clean-dest",
99
"serve": "ws --compress -d dist",
10-
"test": "rimraf coverage && npm run karma-ci",
11-
"lint": "eslint src",
12-
"karma": "karma start",
13-
"karma-ci": "karma start karma-ci.conf.js"
10+
"test": "npm run lint",
11+
"lint": "eslint src"
1412
},
1513
"repository": {
1614
"type": "git",
@@ -31,10 +29,6 @@
3129
"eslint": "^9.25.0",
3230
"@ui5/cli": "^4.0.14",
3331
"local-web-server": "^5.4.0",
34-
"karma": "^6.4.4",
35-
"karma-coverage": "^2.2.1",
36-
"karma-chrome-launcher": "^3.2.0",
37-
"karma-ui5": "^4.1.0",
3832
"rimraf": "^6.0.1"
3933
},
4034
"engines": {

demo/ProductsComponent/src/my/lib/sample/products/localService/mockserver.js

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
sap.ui.define([
22
"sap/ui/core/util/MockServer",
33
"sap/ui/model/json/JSONModel",
4-
"sap/base/Log",
5-
"sap/base/util/UriParameters"
6-
], (MockServer, JSONModel, Log, UriParameters) => {
4+
"sap/base/Log"
5+
], (MockServer, JSONModel, Log) => {
76
"use strict";
87

98

@@ -30,7 +29,7 @@ sap.ui.define([
3029
oManifestModel = new JSONModel(sManifestUrl);
3130

3231
oManifestModel.attachRequestCompleted(() => {
33-
const oUriParameters = new UriParameters(window.location.href),
32+
const oSearchParams = new URLSearchParams(window.location.search),
3433
// Parse manifest for local metadata URI
3534
sJsonFilesUrl = sap.ui.require.toUrl(sJsonFilesPath),
3635
oMainDataSource = oManifestModel.getProperty("/sap.app/dataSources/mainService"),
@@ -50,7 +49,7 @@ sap.ui.define([
5049
// Configure mock server with the given options or a default delay of 0.5s
5150
MockServer.config({
5251
autoRespond : true,
53-
autoRespondAfter : (oOptions.delay || oUriParameters.get("serverDelay") || 500)
52+
autoRespondAfter : (oOptions.delay || oSearchParams.get("serverDelay") || 500)
5453
});
5554

5655
// Simulate all requests using mock data
@@ -69,7 +68,7 @@ sap.ui.define([
6968
};
7069

7170
// Simulate metadata errors
72-
if (oOptions.metadataError || oUriParameters.get("metadataError")) {
71+
if (oOptions.metadataError || oSearchParams.get("metadataError")) {
7372
aRequests.forEach((aEntry) => {
7473
if (aEntry.path.toString().indexOf("$metadata") > -1) {
7574
fnResponse(500, "metadata Error", aEntry);
@@ -78,7 +77,7 @@ sap.ui.define([
7877
}
7978

8079
// Simulate request errors
81-
const sErrorParam = oOptions.errorType || oUriParameters.get("errorType"),
80+
const sErrorParam = oOptions.errorType || oSearchParams.get("errorType"),
8281
iErrorCode = sErrorParam === "badRequest" ? 400 : 500;
8382
if (sErrorParam) {
8483
aRequests.forEach((aEntry) => {

0 commit comments

Comments
 (0)