@sap_oss/wdio-qmate-service 2.4.0 → 2.4.2

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.
Files changed (68) hide show
  1. package/docs/doc.md +108 -0
  2. package/lib/reuse/modules/util/file.d.ts +35 -0
  3. package/lib/reuse/modules/util/file.js +94 -0
  4. package/lib/reuse/modules/util/file.js.map +1 -1
  5. package/package.json +5 -6
  6. package/test/core/functional/chaining/test.conf.js +1 -1
  7. package/test/core/functional/locators/test.locator.conf.js +1 -1
  8. package/test/core/functional/nativeBrowser/runInBrowser.test.js +1 -1
  9. package/test/core/functional/nativeBrowser/test.conf.js +1 -1
  10. package/test/core/functional/nonUi5/test.conf.js +1 -1
  11. package/test/core/functional/ui5Properties/getAggregations.test.js +2 -2
  12. package/test/core/functional/ui5Properties/test.conf.js +1 -1
  13. package/test/core/functional/uiveri5/test.conf.js +1 -1
  14. package/test/core/testIntegration/config.js +1 -1
  15. package/test/reuse/common/assertion/test.assertion.conf.js +1 -1
  16. package/test/reuse/common/userInteraction/fillActive.spec.js +4 -4
  17. package/test/reuse/common/userInteraction/fillActiveAndRetry.spec.js +4 -4
  18. package/test/reuse/nonUi5/assertion/expectValueToBe.spec.js +2 -2
  19. package/test/reuse/nonUi5/assertion/test.assertion.conf.js +1 -1
  20. package/test/reuse/nonUi5/assertion/test.assertion.sauceLabs.conf.js +1 -1
  21. package/test/reuse/nonUi5/element/getAttributeValue.spec.js +3 -3
  22. package/test/reuse/nonUi5/element/getByChild.spec.js +3 -3
  23. package/test/reuse/nonUi5/element/getByClass.spec.js +4 -4
  24. package/test/reuse/nonUi5/element/getByParent.spec.js +3 -3
  25. package/test/reuse/nonUi5/element/getByXPath.spec.js +2 -2
  26. package/test/reuse/nonUi5/element/getValue.spec.js +3 -3
  27. package/test/reuse/nonUi5/element/highlight.spec.js +1 -1
  28. package/test/reuse/nonUi5/element/isPresent.spec.js +3 -3
  29. package/test/reuse/nonUi5/element/isPresentByCss.spec.js +2 -2
  30. package/test/reuse/nonUi5/element/setInnerHTML.spec.js +1 -1
  31. package/test/reuse/nonUi5/element/test.element.conf.js +1 -1
  32. package/test/reuse/nonUi5/element/test.element.sauceLabs.conf.js +1 -1
  33. package/test/reuse/nonUi5/userInteraction/scrollToElement.spec.js +1 -1
  34. package/test/reuse/ui5/assertion/test.assertion.conf.js +1 -1
  35. package/test/reuse/ui5/assertion/test.assertion.sauceLab.conf.js +1 -1
  36. package/test/reuse/ui5/confirmationDialog/test.confirmationDialog.conf.js +1 -1
  37. package/test/reuse/ui5/confirmationDialog/test.confirmationDialog.sauceLab.conf.js +1 -1
  38. package/test/reuse/ui5/control/focus.spec.js +1 -1
  39. package/test/reuse/ui5/control/test.control.conf.js +1 -1
  40. package/test/reuse/ui5/control/test.control.sauceLab.conf.js +1 -1
  41. package/test/reuse/ui5/date/fillRange.spec.js +1 -1
  42. package/test/reuse/ui5/date/pick.spec.js +1 -1
  43. package/test/reuse/ui5/date/pickRange.spec.js +1 -1
  44. package/test/reuse/ui5/element/getByText.spec.js +1 -1
  45. package/test/reuse/ui5/element/test.element.conf.js +1 -1
  46. package/test/reuse/ui5/element/test.element.sauceLab.conf.js +1 -1
  47. package/test/reuse/ui5/navigationBar/test.navigationBar.sauceLab.conf.js +1 -1
  48. package/test/reuse/ui5/session/logout.spec.js +1 -1
  49. package/test/reuse/ui5/userInteraction/click.spec.js +1 -1
  50. package/test/reuse/ui5/userInteraction/doubleClick.spec.js +1 -1
  51. package/test/reuse/ui5/userInteraction/fill.spec.js +4 -4
  52. package/test/reuse/ui5/userInteraction/fillAndRetry.spec.js +4 -4
  53. package/test/reuse/ui5/userInteraction/rightClick.spec.js +1 -1
  54. package/test/reuse/ui5/userInteraction/scrollToElement.spec.js +2 -2
  55. package/test/reuse/ui5/userInteraction/test.userInteraction.conf.js +2 -2
  56. package/test/reuse/ui5/userInteraction/test.userInteraction.sauceLab.conf.js +1 -1
  57. package/test/reuse/util/browser/getCurrentWindow.spec.js +2 -2
  58. package/test/reuse/util/browser/switchToWindow.spec.js +2 -2
  59. package/test/reuse/util/file/expectTextDataToContain.spec.js +14 -0
  60. package/test/reuse/util/file/getAttributeValuesFromJson.spec.js +37 -0
  61. package/test/reuse/util/file/getTextData.spec.js +39 -0
  62. package/test/reuse/util/file/getXmlData.spec.js +52 -0
  63. package/test/reuse/util/file/test.file.conf.js +6 -2
  64. package/test/reuse/util/file/testFiles/test1.json +169 -0
  65. package/test/reuse/util/file/testFiles/test1.xml +120 -0
  66. package/test/reuse/util/file/testFiles/test2.xml +122 -0
  67. package/test/reuse/util/file/testFiles/test3.txt +13 -0
  68. /package/test/reuse/util/file/{file.spec.js → upload.spec.js} +0 -0
@@ -0,0 +1,39 @@
1
+ const path = require("path");
2
+ describe("file - getTextData - Retrieve the content from .txt file", function () {
3
+ let value;
4
+
5
+ it("Preperation & Execution", async function () {
6
+ const pathToFile = path.resolve(__dirname, "./testFiles/test.txt");
7
+ value = await util.file.getTextData(pathToFile);
8
+ });
9
+
10
+ it("Verification", async () => {
11
+ common.assertion.expectEqual(typeof value === "string", true);
12
+ });
13
+ });
14
+
15
+ describe("file - getTextData - Assert if search string is included in file", function () {
16
+ let value;
17
+
18
+ it("Preperation & Execution", async function () {
19
+ const pathToFile = path.resolve(__dirname, "./testFiles/test3.txt");
20
+ value = await util.file.getTextData(pathToFile);
21
+ });
22
+
23
+ it("Verification", async () => {
24
+ common.assertion.expectEqual(value.includes("FICA payment formats PF_BE"), true);
25
+ common.assertion.expectEqual(value.includes("C000000000100000"), true);
26
+ });
27
+ });
28
+
29
+ describe("file - getTextData - checkFileEnding - Assert correct file ending", function () {
30
+ let pathToFile = null;
31
+
32
+ it("Preperation", async function () {
33
+ pathToFile = path.resolve(__dirname, "./testFiles/test1.xml");
34
+ });
35
+
36
+ it("Execution & Verification", async () => {
37
+ await expect(util.file.getTextData(pathToFile)).rejects.toThrowError(/Function 'checkFileEnding' failed: Wrong file format 'xml' was passed to function. Expected file format: txt./);
38
+ });
39
+ });
@@ -0,0 +1,52 @@
1
+ const path = require("path");
2
+ describe("file - getXmlData - Retrieve XML file data as JSON", function () {
3
+ let value;
4
+
5
+ it("Preperation & Execution", async function () {
6
+ const pathToFile = path.resolve(__dirname, "./testFiles/test1.xml");
7
+ value = await util.file.getXmlData(pathToFile);
8
+ });
9
+
10
+ it("Verification", async () => {
11
+ common.assertion.expectEqual(typeof value === "object", true);
12
+ });
13
+
14
+ describe("file - getXmlData - Assert if values are included", function () {
15
+ let value;
16
+ it("Preperation & Execution", async function () {
17
+ const pathToFile = path.resolve(__dirname, "./testFiles/test1.xml");
18
+ value = await util.file.getXmlData(pathToFile);
19
+ });
20
+
21
+ it("Verification", async () => {
22
+ const isAuthorIncluded = JSON.stringify(value).includes("Ralls, Kim");
23
+ common.assertion.expectEqual(isAuthorIncluded, true);
24
+ });
25
+ });
26
+
27
+ describe("file - getXmlData - Assert if JSON was trimmed and normalized", function () {
28
+ let value;
29
+ it("Preperation & Execution", async function () {
30
+ const pathToFile = path.resolve(__dirname, "./testFiles/test2.xml");
31
+ value = await util.file.getXmlData(pathToFile);
32
+ });
33
+
34
+ it("Verification", async () => {
35
+ const jsonString = JSON.stringify(value);
36
+ const trimmedJson = JSON.parse(jsonString.trim());
37
+ common.assertion.expectEqual(value, trimmedJson);
38
+ });
39
+ });
40
+ });
41
+
42
+ describe("file - getXmlData - checkFileEnding - Assert correct file ending", function () {
43
+ let pathToFile = null;
44
+
45
+ it("Preperation", async function () {
46
+ pathToFile = path.resolve(__dirname, "./testFiles/test.txt");
47
+ });
48
+
49
+ it("Execution & Verification", async () => {
50
+ await expect(util.file.getXmlData(pathToFile)).rejects.toThrowError(/Function 'checkFileEnding' failed: Wrong file format 'txt' was passed to function. Expected file format: xml./);
51
+ });
52
+ });
@@ -9,9 +9,13 @@ exports.config = merge(profile.config, {
9
9
  baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/#/entity/sap.m.UploadCollection/sample/sap.m.sample.UploadCollection",
10
10
 
11
11
  specs: [
12
- path.resolve(__dirname, "file.spec.js"),
12
+ path.resolve(__dirname, "upload.spec.js"),
13
13
  path.resolve(__dirname, "pdfParser.spec.js"),
14
14
  path.resolve(__dirname, "getExcelData.spec.js"),
15
- path.resolve(__dirname, "findFilePathRecursively.spec.js")
15
+ path.resolve(__dirname, "findFilePathRecursively.spec.js"),
16
+ path.resolve(__dirname, "getXmlData.spec.js"),
17
+ path.resolve(__dirname, "getAttributeValuesFromJson.spec.js"),
18
+ path.resolve(__dirname, "getTextData.spec.js"),
19
+ path.resolve(__dirname, "expectTextDataToContain.spec.js")
16
20
  ]
17
21
  });
@@ -0,0 +1,169 @@
1
+ {
2
+ "Document": {
3
+ "$": {
4
+ "xmlns": "urn:iso:std:iso:20022:tech:xsd:pain.001.001.03",
5
+ "xmlns:xsi": "http://www.w3.org/2001/XMLSchema-instance",
6
+ "xsi:schemaLocation": "urn:iso:std:iso:20022:tech:xsd:pain.001.001.03 ISO.pain.001.001.03.austrian.004.Korrigendum.xsd"
7
+ },
8
+ "CstmrCdtTrfInitn": [
9
+ {
10
+ "GrpHdr": [
11
+ {
12
+ "MsgId": [
13
+ "0000020305"
14
+ ],
15
+ "CreDtTm": [
16
+ "2023-06-26T14:50:21"
17
+ ],
18
+ "NbOfTxs": [
19
+ "1"
20
+ ],
21
+ "CtrlSum": [
22
+ "1000.00"
23
+ ],
24
+ "InitgPty": [
25
+ {
26
+ "Nm": [
27
+ "COMPANY CODE 3910 - ADDRESS NAME 1"
28
+ ]
29
+ }
30
+ ]
31
+ }
32
+ ],
33
+ "PmtInf": [
34
+ {
35
+ "PmtInfId": [
36
+ "0000020305-000001"
37
+ ],
38
+ "PmtMtd": [
39
+ "TRF"
40
+ ],
41
+ "BtchBookg": [
42
+ "true"
43
+ ],
44
+ "NbOfTxs": [
45
+ "1"
46
+ ],
47
+ "CtrlSum": [
48
+ "1000.00"
49
+ ],
50
+ "PmtTpInf": [
51
+ {
52
+ "SvcLvl": [
53
+ {
54
+ "Cd": [
55
+ "SEPA"
56
+ ]
57
+ }
58
+ ]
59
+ }
60
+ ],
61
+ "ReqdExctnDt": [
62
+ "2023-06-26"
63
+ ],
64
+ "Dbtr": [
65
+ {
66
+ "Nm": [
67
+ "Company Code 3910 - Address Name 1"
68
+ ],
69
+ "PstlAdr": [
70
+ {
71
+ "Ctry": [
72
+ "AT"
73
+ ],
74
+ "AdrLine": [
75
+ "Lassallestrasse 1",
76
+ "1234 Wien"
77
+ ]
78
+ }
79
+ ]
80
+ }
81
+ ],
82
+ "DbtrAcct": [
83
+ {
84
+ "Id": [
85
+ {
86
+ "IBAN": [
87
+ "AT925500011700006258"
88
+ ]
89
+ }
90
+ ],
91
+ "Ccy": [
92
+ "EUR"
93
+ ]
94
+ }
95
+ ],
96
+ "DbtrAgt": [
97
+ {
98
+ "FinInstnId": [
99
+ {
100
+ "BIC": [
101
+ "SLHYAT2SXXX"
102
+ ]
103
+ }
104
+ ]
105
+ }
106
+ ],
107
+ "ChrgBr": [
108
+ "SLEV"
109
+ ],
110
+ "CdtTrfTxInf": [
111
+ {
112
+ "PmtId": [
113
+ {
114
+ "InstrId": [
115
+ "02-940000002993"
116
+ ],
117
+ "EndToEndId": [
118
+ "02-940000002993"
119
+ ]
120
+ }
121
+ ],
122
+ "Amt": [
123
+ {
124
+ "InstdAmt": [
125
+ {
126
+ "_": "1000.00",
127
+ "$": {
128
+ "Ccy": "EUR"
129
+ }
130
+ }
131
+ ]
132
+ }
133
+ ],
134
+ "ChrgBr": [
135
+ "SLEV"
136
+ ],
137
+ "Cdtr": [
138
+ {
139
+ "Nm": [
140
+ "FICA payment formats PFAT"
141
+ ]
142
+ }
143
+ ],
144
+ "CdtrAcct": [
145
+ {
146
+ "Id": [
147
+ {
148
+ "IBAN": [
149
+ "AT816000000007654321"
150
+ ]
151
+ }
152
+ ]
153
+ }
154
+ ],
155
+ "RmtInf": [
156
+ {
157
+ "Ustrd": [
158
+ "940000002993XBLNR/26.6.2023"
159
+ ]
160
+ }
161
+ ]
162
+ }
163
+ ]
164
+ }
165
+ ]
166
+ }
167
+ ]
168
+ }
169
+ }
@@ -0,0 +1,120 @@
1
+ <?xml version="1.0"?>
2
+ <catalog>
3
+ <book id="bk101">
4
+ <author>Gambardella, Matthew</author>
5
+ <title>XML Developer's Guide</title>
6
+ <genre>Computer</genre>
7
+ <price>44.95</price>
8
+ <publish_date>2000-10-01</publish_date>
9
+ <description>An in-depth look at creating applications
10
+ with XML.</description>
11
+ </book>
12
+ <book id="bk102">
13
+ <author>Ralls, Kim</author>
14
+ <title>Midnight Rain</title>
15
+ <genre>Fantasy</genre>
16
+ <price>5.95</price>
17
+ <publish_date>2000-12-16</publish_date>
18
+ <description>A former architect battles corporate zombies,
19
+ an evil sorceress, and her own childhood to become queen
20
+ of the world.</description>
21
+ </book>
22
+ <book id="bk103">
23
+ <author>Corets, Eva</author>
24
+ <title>Maeve Ascendant</title>
25
+ <genre>Fantasy</genre>
26
+ <price>5.95</price>
27
+ <publish_date>2000-11-17</publish_date>
28
+ <description>After the collapse of a nanotechnology
29
+ society in England, the young survivors lay the
30
+ foundation for a new society.</description>
31
+ </book>
32
+ <book id="bk104">
33
+ <author>Corets, Eva</author>
34
+ <title>Oberon's Legacy</title>
35
+ <genre>Fantasy</genre>
36
+ <price>5.95</price>
37
+ <publish_date>2001-03-10</publish_date>
38
+ <description>In post-apocalypse England, the mysterious
39
+ agent known only as Oberon helps to create a new life
40
+ for the inhabitants of London. Sequel to Maeve
41
+ Ascendant.</description>
42
+ </book>
43
+ <book id="bk105">
44
+ <author>Corets, Eva</author>
45
+ <title>The Sundered Grail</title>
46
+ <genre>Fantasy</genre>
47
+ <price>5.95</price>
48
+ <publish_date>2001-09-10</publish_date>
49
+ <description>The two daughters of Maeve, half-sisters,
50
+ battle one another for control of England. Sequel to
51
+ Oberon's Legacy.</description>
52
+ </book>
53
+ <book id="bk106">
54
+ <author>Randall, Cynthia</author>
55
+ <title>Lover Birds</title>
56
+ <genre>Romance</genre>
57
+ <price>4.95</price>
58
+ <publish_date>2000-09-02</publish_date>
59
+ <description>When Carla meets Paul at an ornithology
60
+ conference, tempers fly as feathers get ruffled.</description>
61
+ </book>
62
+ <book id="bk107">
63
+ <author>Thurman, Paula</author>
64
+ <title>Splish Splash</title>
65
+ <genre>Romance</genre>
66
+ <price>4.95</price>
67
+ <publish_date>2000-11-02</publish_date>
68
+ <description>A deep sea diver finds true love twenty
69
+ thousand leagues beneath the sea.</description>
70
+ </book>
71
+ <book id="bk108">
72
+ <author>Knorr, Stefan</author>
73
+ <title>Creepy Crawlies</title>
74
+ <genre>Horror</genre>
75
+ <price>4.95</price>
76
+ <publish_date>2000-12-06</publish_date>
77
+ <description>An anthology of horror stories about roaches,
78
+ centipedes, scorpions and other insects.</description>
79
+ </book>
80
+ <book id="bk109">
81
+ <author>Kress, Peter</author>
82
+ <title>Paradox Lost</title>
83
+ <genre>Science Fiction</genre>
84
+ <price>6.95</price>
85
+ <publish_date>2000-11-02</publish_date>
86
+ <description>After an inadvertant trip through a Heisenberg
87
+ Uncertainty Device, James Salway discovers the problems
88
+ of being quantum.</description>
89
+ </book>
90
+ <book id="bk110">
91
+ <author>O'Brien, Tim</author>
92
+ <title>Microsoft .NET: The Programming Bible</title>
93
+ <genre>Computer</genre>
94
+ <price>36.95</price>
95
+ <publish_date>2000-12-09</publish_date>
96
+ <description>Microsoft's .NET initiative is explored in
97
+ detail in this deep programmer's reference.</description>
98
+ </book>
99
+ <book id="bk111">
100
+ <author>O'Brien, Tim</author>
101
+ <title>MSXML3: A Comprehensive Guide</title>
102
+ <genre>Computer</genre>
103
+ <price>36.95</price>
104
+ <publish_date>2000-12-01</publish_date>
105
+ <description>The Microsoft MSXML3 parser is covered in
106
+ detail, with attention to XML DOM interfaces, XSLT processing,
107
+ SAX and more.</description>
108
+ </book>
109
+ <book id="bk112">
110
+ <author>Galos, Mike</author>
111
+ <title>Visual Studio 7: A Comprehensive Guide</title>
112
+ <genre>Computer</genre>
113
+ <price>49.95</price>
114
+ <publish_date>2001-04-16</publish_date>
115
+ <description>Microsoft Visual Studio 7 is explored in depth,
116
+ looking at how Visual Basic, Visual C++, C#, and ASP+ are
117
+ integrated into a comprehensive development
118
+ environment.</description>
119
+ </book>
120
+ </catalog>
@@ -0,0 +1,122 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.001.001.03" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:iso:std:iso:20022:tech:xsd:pain.001.001.03 ISO.pain.001.001.03.austrian.004.Korrigendum.xsd">
3
+ <CstmrCdtTrfInitn>
4
+ <GrpHdr>
5
+ <MsgId>
6
+ 0000020305
7
+ </MsgId>
8
+ <CreDtTm>
9
+ 2023-06-26T14:50:21
10
+ </CreDtTm>
11
+ <NbOfTxs>
12
+ 1
13
+ </NbOfTxs>
14
+ <CtrlSum>
15
+ 1000.00
16
+ </CtrlSum>
17
+ <InitgPty>
18
+ <Nm>
19
+ COMPANY CODE 3910 - ADDRESS NAME 1
20
+ </Nm>
21
+ </InitgPty>
22
+ </GrpHdr>
23
+ <PmtInf>
24
+ <PmtInfId>
25
+ 0000020305-000001
26
+ </PmtInfId>
27
+ <PmtMtd>
28
+ TRF
29
+ </PmtMtd>
30
+ <BtchBookg>
31
+ true
32
+ </BtchBookg>
33
+ <NbOfTxs>
34
+ 1
35
+ </NbOfTxs>
36
+ <CtrlSum>
37
+ 1000.00
38
+ </CtrlSum>
39
+ <PmtTpInf>
40
+ <SvcLvl>
41
+ <Cd>
42
+ SEPA
43
+ </Cd>
44
+ </SvcLvl>
45
+ </PmtTpInf>
46
+ <ReqdExctnDt>
47
+ 2023-06-26
48
+ </ReqdExctnDt>
49
+ <Dbtr>
50
+ <Nm>
51
+ Company Code 3910 - Address Name 1
52
+ </Nm>
53
+ <PstlAdr>
54
+ <Ctry>
55
+ AT
56
+ </Ctry>
57
+ <AdrLine>
58
+ Lassallestrasse 1
59
+ </AdrLine>
60
+ <AdrLine>
61
+ 1234 Wien
62
+ </AdrLine>
63
+ </PstlAdr>
64
+ </Dbtr>
65
+ <DbtrAcct>
66
+ <Id>
67
+ <IBAN>
68
+ AT925500011700006258
69
+ </IBAN>
70
+ </Id>
71
+ <Ccy>
72
+ EUR
73
+ </Ccy>
74
+ </DbtrAcct>
75
+ <DbtrAgt>
76
+ <FinInstnId>
77
+ <BIC>
78
+ SLHYAT2SXXX
79
+ </BIC>
80
+ </FinInstnId>
81
+ </DbtrAgt>
82
+ <ChrgBr>
83
+ SLEV
84
+ </ChrgBr>
85
+ <CdtTrfTxInf>
86
+ <PmtId>
87
+ <InstrId>
88
+ 02-940000002993
89
+ </InstrId>
90
+ <EndToEndId>
91
+ 02-940000002993
92
+ </EndToEndId>
93
+ </PmtId>
94
+ <Amt>
95
+ <InstdAmt Ccy="EUR">
96
+ 1000.00
97
+ </InstdAmt>
98
+ </Amt>
99
+ <ChrgBr>
100
+ SLEV
101
+ </ChrgBr>
102
+ <Cdtr>
103
+ <Nm>
104
+ FICA payment formats PFAT
105
+ </Nm>
106
+ </Cdtr>
107
+ <CdtrAcct>
108
+ <Id>
109
+ <IBAN>
110
+ AT816000000007654321
111
+ </IBAN>
112
+ </Id>
113
+ </CdtrAcct>
114
+ <RmtInf>
115
+ <Ustrd>
116
+ 940000002993XBLNR/26.6.2023
117
+ </Ustrd>
118
+ </RmtInf>
119
+ </CdtTrfTxInf>
120
+ </PmtInf>
121
+ </CstmrCdtTrfInitn>
122
+ </Document>
@@ -0,0 +1,13 @@
1
+ 0260623 0025100000204060044179798000441797980 3 0 1
2
+ 1000101260623930000003000 EUR C000000000100000 EUR 435411161155
3
+ 1000102COMPANY CODE 2510 - ADDRESS NAME 1 OLYMPIADENLAAN 2
4
+ 1000103*BE 1140 BRUSSEL
5
+ 1000104 KREDBEBB 1
6
+ 1000105 BANK STREET BANK CITY BE
7
+ 1000106BE30432401004211 FICA payment formats PF_BE FICA PAYMENT FORMATS 1BE
8
+ 10001079QV4PU6C0G STREET 602 BP CITY BE XBLNR
9
+ 100010802-930000003000 XBLNR/26.6.2023
10
+ 1000109
11
+ 1000110 EUR 000000000000 BE
12
+ 9000010000001000000000100000
13
+