@appium/base-driver 8.3.0 → 8.4.1

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 (202) hide show
  1. package/build/lib/basedriver/capabilities.d.ts +80 -0
  2. package/build/lib/basedriver/capabilities.d.ts.map +1 -0
  3. package/build/lib/basedriver/capabilities.js +12 -13
  4. package/build/lib/basedriver/commands/event.d.ts +9 -0
  5. package/build/lib/basedriver/commands/event.d.ts.map +1 -0
  6. package/build/lib/basedriver/commands/event.js +21 -23
  7. package/build/lib/basedriver/commands/find.d.ts +11 -0
  8. package/build/lib/basedriver/commands/find.d.ts.map +1 -0
  9. package/build/lib/basedriver/commands/find.js +42 -37
  10. package/build/lib/basedriver/commands/index.d.ts +8 -0
  11. package/build/lib/basedriver/commands/index.d.ts.map +1 -0
  12. package/build/lib/basedriver/commands/index.js +17 -16
  13. package/build/lib/basedriver/commands/log.d.ts +12 -0
  14. package/build/lib/basedriver/commands/log.d.ts.map +1 -0
  15. package/build/lib/basedriver/commands/log.js +23 -27
  16. package/build/lib/basedriver/commands/session.d.ts +11 -0
  17. package/build/lib/basedriver/commands/session.d.ts.map +1 -0
  18. package/build/lib/basedriver/commands/session.js +21 -149
  19. package/build/lib/basedriver/commands/settings.d.ts +10 -0
  20. package/build/lib/basedriver/commands/settings.d.ts.map +1 -0
  21. package/build/lib/basedriver/commands/settings.js +19 -19
  22. package/build/lib/basedriver/commands/timeout.d.ts +8 -0
  23. package/build/lib/basedriver/commands/timeout.d.ts.map +1 -0
  24. package/build/lib/basedriver/commands/timeout.js +118 -139
  25. package/build/lib/basedriver/core.d.ts +235 -0
  26. package/build/lib/basedriver/core.d.ts.map +1 -0
  27. package/build/lib/basedriver/core.js +283 -0
  28. package/build/lib/basedriver/desired-caps.d.ts +5 -0
  29. package/build/lib/basedriver/desired-caps.d.ts.map +1 -0
  30. package/build/lib/basedriver/desired-caps.js +2 -4
  31. package/build/lib/basedriver/device-settings.d.ts +32 -0
  32. package/build/lib/basedriver/device-settings.d.ts.map +1 -0
  33. package/build/lib/basedriver/device-settings.js +20 -14
  34. package/build/lib/basedriver/driver.d.ts +83 -0
  35. package/build/lib/basedriver/driver.d.ts.map +1 -0
  36. package/build/lib/basedriver/driver.js +101 -256
  37. package/build/lib/basedriver/helpers.d.ts +132 -0
  38. package/build/lib/basedriver/helpers.d.ts.map +1 -0
  39. package/build/lib/basedriver/helpers.js +16 -2
  40. package/build/lib/basedriver/logger.d.ts +3 -0
  41. package/build/lib/basedriver/logger.d.ts.map +1 -0
  42. package/build/lib/basedriver/logger.js +2 -4
  43. package/build/lib/constants.d.ts +9 -0
  44. package/build/lib/constants.d.ts.map +1 -0
  45. package/build/lib/constants.js +2 -4
  46. package/build/lib/express/crash.d.ts +3 -0
  47. package/build/lib/express/crash.d.ts.map +1 -0
  48. package/build/lib/express/crash.js +2 -4
  49. package/build/lib/express/express-logging.d.ts +3 -0
  50. package/build/lib/express/express-logging.d.ts.map +1 -0
  51. package/build/lib/express/express-logging.js +2 -4
  52. package/build/lib/express/idempotency.d.ts +2 -0
  53. package/build/lib/express/idempotency.d.ts.map +1 -0
  54. package/build/lib/express/idempotency.js +2 -4
  55. package/build/lib/express/logger.d.ts +3 -0
  56. package/build/lib/express/logger.d.ts.map +1 -0
  57. package/build/lib/express/logger.js +2 -4
  58. package/build/lib/express/middleware.d.ts +9 -0
  59. package/build/lib/express/middleware.d.ts.map +1 -0
  60. package/build/lib/express/middleware.js +2 -4
  61. package/build/lib/express/server.d.ts +10 -0
  62. package/build/lib/express/server.d.ts.map +1 -0
  63. package/build/lib/express/server.js +2 -4
  64. package/build/lib/express/static.d.ts +6 -0
  65. package/build/lib/express/static.d.ts.map +1 -0
  66. package/build/lib/express/static.js +2 -4
  67. package/build/lib/express/websocket.d.ts +64 -0
  68. package/build/lib/express/websocket.d.ts.map +1 -0
  69. package/build/lib/express/websocket.js +40 -41
  70. package/build/lib/helpers/capabilities.d.ts +13 -0
  71. package/build/lib/helpers/capabilities.d.ts.map +1 -0
  72. package/build/lib/helpers/capabilities.js +40 -2
  73. package/build/lib/index.d.ts +183 -0
  74. package/build/lib/index.d.ts.map +1 -0
  75. package/build/lib/index.js +41 -23
  76. package/build/lib/jsonwp-proxy/protocol-converter.d.ts +48 -0
  77. package/build/lib/jsonwp-proxy/protocol-converter.d.ts.map +1 -0
  78. package/build/lib/jsonwp-proxy/protocol-converter.js +2 -4
  79. package/build/lib/jsonwp-proxy/proxy.d.ts +41 -0
  80. package/build/lib/jsonwp-proxy/proxy.d.ts.map +1 -0
  81. package/build/lib/jsonwp-proxy/proxy.js +25 -9
  82. package/build/lib/jsonwp-status/status.d.ts +159 -0
  83. package/build/lib/jsonwp-status/status.d.ts.map +1 -0
  84. package/build/lib/jsonwp-status/status.js +2 -4
  85. package/build/lib/protocol/errors.d.ts +310 -0
  86. package/build/lib/protocol/errors.d.ts.map +1 -0
  87. package/build/lib/protocol/errors.js +82 -5
  88. package/build/lib/protocol/helpers.d.ts +22 -0
  89. package/build/lib/protocol/helpers.d.ts.map +1 -0
  90. package/build/lib/protocol/helpers.js +2 -4
  91. package/build/lib/protocol/index.d.ts +16 -0
  92. package/build/lib/protocol/index.d.ts.map +1 -0
  93. package/build/lib/protocol/index.js +8 -10
  94. package/build/lib/protocol/protocol.d.ts +11 -0
  95. package/build/lib/protocol/protocol.d.ts.map +1 -0
  96. package/build/lib/protocol/protocol.js +3 -9
  97. package/build/lib/protocol/routes.d.ts +6 -0
  98. package/build/lib/protocol/routes.d.ts.map +1 -0
  99. package/build/lib/protocol/routes.js +18 -4
  100. package/build/lib/protocol/validators.d.ts +8 -0
  101. package/build/lib/protocol/validators.d.ts.map +1 -0
  102. package/build/lib/protocol/validators.js +2 -4
  103. package/build/test/basedriver/README.md +5 -0
  104. package/build/test/basedriver/driver-e2e-tests.js +2 -4
  105. package/build/test/basedriver/driver-tests.js +31 -6
  106. package/build/test/basedriver/index.js +2 -4
  107. package/build/test/e2e/basedriver/driver.e2e.spec.js +15 -0
  108. package/build/test/e2e/basedriver/helpers.e2e.spec.js +192 -0
  109. package/build/test/e2e/basedriver/websockets.e2e.spec.js +87 -0
  110. package/build/test/e2e/express/server.e2e.spec.js +159 -0
  111. package/build/test/e2e/jsonwp-proxy/proxy.e2e.spec.js +59 -0
  112. package/build/test/e2e/protocol/fake-driver.js +163 -0
  113. package/build/test/e2e/protocol/helpers.js +25 -0
  114. package/build/test/e2e/protocol/protocol.e2e.spec.js +1186 -0
  115. package/build/test/helpers.js +2 -4
  116. package/build/test/unit/basedriver/capabilities.spec.js +672 -0
  117. package/build/test/unit/basedriver/capability.spec.js +353 -0
  118. package/build/test/unit/basedriver/commands/event.spec.js +110 -0
  119. package/build/test/unit/basedriver/commands/log.spec.js +92 -0
  120. package/build/test/unit/basedriver/driver.spec.js +15 -0
  121. package/build/test/unit/basedriver/helpers.spec.js +151 -0
  122. package/build/test/unit/basedriver/timeout.spec.js +135 -0
  123. package/build/test/unit/express/server.spec.js +155 -0
  124. package/build/test/unit/express/static.spec.js +26 -0
  125. package/build/test/unit/jsonwp-proxy/mock-request.js +91 -0
  126. package/build/test/unit/jsonwp-proxy/protocol-converter.spec.js +171 -0
  127. package/build/test/unit/jsonwp-proxy/proxy.spec.js +292 -0
  128. package/build/test/unit/jsonwp-proxy/url.spec.js +165 -0
  129. package/build/test/unit/jsonwp-status/status.spec.js +34 -0
  130. package/build/test/unit/protocol/errors.spec.js +390 -0
  131. package/build/test/unit/protocol/routes.spec.js +80 -0
  132. package/build/test/unit/protocol/validator.spec.js +149 -0
  133. package/build/tsconfig.tsbuildinfo +1 -0
  134. package/lib/basedriver/capabilities.js +49 -10
  135. package/lib/basedriver/commands/event.js +49 -31
  136. package/lib/basedriver/commands/find.js +108 -43
  137. package/lib/basedriver/commands/index.js +25 -19
  138. package/lib/basedriver/commands/log.js +60 -33
  139. package/lib/basedriver/commands/session.js +39 -141
  140. package/lib/basedriver/commands/settings.js +33 -13
  141. package/lib/basedriver/commands/timeout.js +153 -153
  142. package/lib/basedriver/core.js +497 -0
  143. package/lib/basedriver/desired-caps.js +1 -1
  144. package/lib/basedriver/device-settings.js +47 -12
  145. package/lib/basedriver/driver.js +272 -383
  146. package/lib/basedriver/helpers.js +18 -2
  147. package/lib/express/websocket.js +35 -32
  148. package/lib/helpers/capabilities.js +60 -1
  149. package/lib/index.js +16 -12
  150. package/lib/jsonwp-proxy/proxy.js +26 -6
  151. package/lib/protocol/errors.js +42 -42
  152. package/lib/protocol/index.js +4 -4
  153. package/lib/protocol/protocol.js +1 -3
  154. package/lib/protocol/routes.js +9 -0
  155. package/package.json +22 -14
  156. package/test/basedriver/README.md +5 -0
  157. package/test/basedriver/driver-e2e-tests.js +1 -1
  158. package/test/basedriver/driver-tests.js +31 -2
  159. package/build/test/basedriver/capabilities-specs.js +0 -674
  160. package/build/test/basedriver/capability-specs.js +0 -355
  161. package/build/test/basedriver/commands/event-specs.js +0 -112
  162. package/build/test/basedriver/commands/log-specs.js +0 -87
  163. package/build/test/basedriver/driver-e2e-specs.js +0 -17
  164. package/build/test/basedriver/driver-specs.js +0 -17
  165. package/build/test/basedriver/helpers-e2e-specs.js +0 -194
  166. package/build/test/basedriver/helpers-specs.js +0 -153
  167. package/build/test/basedriver/timeout-specs.js +0 -137
  168. package/build/test/basedriver/websockets-e2e-specs.js +0 -84
  169. package/build/test/express/server-e2e-specs.js +0 -161
  170. package/build/test/express/server-specs.js +0 -157
  171. package/build/test/express/static-specs.js +0 -28
  172. package/build/test/jsonwp-proxy/mock-request.js +0 -93
  173. package/build/test/jsonwp-proxy/protocol-converter-specs.js +0 -173
  174. package/build/test/jsonwp-proxy/proxy-e2e-specs.js +0 -61
  175. package/build/test/jsonwp-proxy/proxy-specs.js +0 -294
  176. package/build/test/jsonwp-proxy/url-specs.js +0 -167
  177. package/build/test/jsonwp-status/status-specs.js +0 -36
  178. package/build/test/protocol/errors-specs.js +0 -388
  179. package/build/test/protocol/fake-driver.js +0 -165
  180. package/build/test/protocol/helpers.js +0 -27
  181. package/build/test/protocol/protocol-e2e-specs.js +0 -1188
  182. package/build/test/protocol/routes-specs.js +0 -82
  183. package/build/test/protocol/validator-specs.js +0 -151
  184. package/index.d.ts +0 -386
  185. package/test/basedriver/capabilities-specs.js +0 -537
  186. package/test/basedriver/capability-specs.js +0 -383
  187. package/test/basedriver/commands/event-specs.js +0 -74
  188. package/test/basedriver/commands/log-specs.js +0 -79
  189. package/test/basedriver/driver-e2e-specs.js +0 -8
  190. package/test/basedriver/driver-specs.js +0 -8
  191. package/test/basedriver/fixtures/BadZippedApp.zip +0 -1
  192. package/test/basedriver/fixtures/FakeAndroidApp.apk +0 -1
  193. package/test/basedriver/fixtures/FakeAndroidApp.asd +0 -0
  194. package/test/basedriver/fixtures/FakeIOSApp.app +0 -1
  195. package/test/basedriver/fixtures/FakeIOSApp.app.zip +0 -0
  196. package/test/basedriver/fixtures/FakeIOSApp.ipa +0 -0
  197. package/test/basedriver/fixtures/custom-element-finder-bad.js +0 -5
  198. package/test/basedriver/fixtures/custom-element-finder.js +0 -29
  199. package/test/basedriver/helpers-e2e-specs.js +0 -187
  200. package/test/basedriver/helpers-specs.js +0 -137
  201. package/test/basedriver/timeout-specs.js +0 -128
  202. package/test/basedriver/websockets-e2e-specs.js +0 -75
@@ -1,355 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- require("source-map-support/register");
6
-
7
- var _bluebird = _interopRequireDefault(require("bluebird"));
8
-
9
- var _lib = _interopRequireWildcard(require("../../lib"));
10
-
11
- var _logger = _interopRequireDefault(require("../../lib/basedriver/logger"));
12
-
13
- var _sinon = require("sinon");
14
-
15
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
16
-
17
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
18
-
19
- describe('Desired Capabilities', function () {
20
- let d;
21
- let sandbox;
22
- beforeEach(function () {
23
- d = new _lib.default();
24
- sandbox = (0, _sinon.createSandbox)();
25
- sandbox.spy(d.log, 'warn');
26
- sandbox.spy(_logger.default, 'warn');
27
- });
28
- afterEach(function () {
29
- sandbox.restore();
30
- });
31
- it('should require platformName and deviceName', async function () {
32
- await d.createSession({
33
- firstMatch: [{}]
34
- }).should.eventually.be.rejectedWith(_lib.errors.SessionNotCreatedError, /platformName/);
35
- });
36
- it('should require platformName', async function () {
37
- await d.createSession({
38
- alwaysMatch: {
39
- 'appium:deviceName': 'Delorean'
40
- }
41
- }).should.eventually.be.rejectedWith(_lib.errors.SessionNotCreatedError, /platformName/);
42
- });
43
- it('should not care about cap order', async function () {
44
- await d.createSession(null, null, {
45
- alwaysMatch: {
46
- 'appium:deviceName': 'Delorean',
47
- platformName: 'iOS'
48
- }
49
- }).should.eventually.be.fulfilled;
50
- });
51
- it('should check required caps which are added to driver', async function () {
52
- d.desiredCapConstraints = {
53
- necessary: {
54
- presence: true
55
- },
56
- proper: {
57
- presence: true,
58
- isString: true,
59
- inclusion: ['Delorean', 'Reventon']
60
- }
61
- };
62
- await d.createSession(null, null, {
63
- alwaysMatch: {
64
- 'platformName': 'iOS',
65
- 'appium:deviceName': 'Delorean'
66
- }
67
- }).should.eventually.be.rejectedWith(_lib.errors.SessionNotCreatedError, /necessary.*proper/);
68
- });
69
- it('should check added required caps in addition to base', async function () {
70
- d.desiredCapConstraints = {
71
- necessary: {
72
- presence: true
73
- },
74
- proper: {
75
- presence: true,
76
- isString: true,
77
- inclusion: ['Delorean', 'Reventon']
78
- }
79
- };
80
- await d.createSession(null, null, {
81
- alwaysMatch: {
82
- 'appium:necessary': 'yup'
83
- }
84
- }).should.eventually.be.rejectedWith(_lib.errors.SessionNotCreatedError, /platformName/);
85
- });
86
- it('should accept extra capabilities', async function () {
87
- await d.createSession(null, null, {
88
- alwaysMatch: {
89
- 'platformName': 'iOS',
90
- 'appium:deviceName': 'Delorean',
91
- 'appium:extra': 'cheese',
92
- 'appium:hold the': 'sauce'
93
- }
94
- }).should.eventually.be.fulfilled;
95
- });
96
- it('should log the use of extra caps', async function () {
97
- this.timeout(500);
98
- await d.createSession(null, null, {
99
- alwaysMatch: {
100
- 'platformName': 'iOS',
101
- 'appium:deviceName': 'Delorean',
102
- 'appium:extra': 'cheese',
103
- 'appium:hold the': 'sauce'
104
- }
105
- });
106
- d.log.warn.should.have.been.called;
107
- });
108
- it('should be sensitive to the case of caps', async function () {
109
- await d.createSession(null, null, {
110
- alwaysMatch: {
111
- 'platformname': 'iOS',
112
- 'appium:deviceName': 'Delorean'
113
- }
114
- }).should.eventually.be.rejectedWith(_lib.errors.SessionNotCreatedError, /platformName/);
115
- });
116
- describe('boolean capabilities', function () {
117
- it('should allow a string "false"', async function () {
118
- await d.createSession(null, null, {
119
- alwaysMatch: {
120
- 'platformName': 'iOS',
121
- 'appium:deviceName': 'Delorean',
122
- 'appium:noReset': 'false'
123
- }
124
- });
125
- d.log.warn.should.have.been.called;
126
- let sessions = await d.getSessions();
127
- sessions[0].capabilities.noReset.should.eql(false);
128
- });
129
- it('should allow a string "true"', async function () {
130
- await d.createSession(null, null, {
131
- alwaysMatch: {
132
- 'platformName': 'iOS',
133
- 'appium:deviceName': 'Delorean',
134
- 'appium:noReset': 'true'
135
- }
136
- });
137
- d.log.warn.should.have.been.called;
138
- let sessions = await d.getSessions();
139
- sessions[0].capabilities.noReset.should.eql(true);
140
- });
141
- it('should allow a string "true" in string capabilities', async function () {
142
- await d.createSession(null, null, {
143
- alwaysMatch: {
144
- 'platformName': 'iOS',
145
- 'appium:deviceName': 'Delorean',
146
- 'appium:language': 'true'
147
- }
148
- });
149
- d.log.warn.should.not.have.been.called;
150
- let sessions = await d.getSessions();
151
- sessions[0].capabilities.language.should.eql('true');
152
- });
153
- });
154
- describe('number capabilities', function () {
155
- it('should allow a string "1"', async function () {
156
- await d.createSession(null, null, {
157
- alwaysMatch: {
158
- 'platformName': 'iOS',
159
- 'appium:deviceName': 'Delorean',
160
- 'appium:newCommandTimeout': '1'
161
- }
162
- });
163
- d.log.warn.should.have.been.called;
164
- let sessions = await d.getSessions();
165
- sessions[0].capabilities.newCommandTimeout.should.eql(1);
166
- });
167
- it('should allow a string "1.1"', async function () {
168
- await d.createSession(null, null, {
169
- alwaysMatch: {
170
- 'platformName': 'iOS',
171
- 'appium:deviceName': 'Delorean',
172
- 'appium:newCommandTimeout': '1.1'
173
- }
174
- });
175
- d.log.warn.should.have.been.called;
176
- let sessions = await d.getSessions();
177
- sessions[0].capabilities.newCommandTimeout.should.eql(1.1);
178
- });
179
- it('should allow a string "1" in string capabilities', async function () {
180
- await d.createSession(null, null, {
181
- alwaysMatch: {
182
- 'platformName': 'iOS',
183
- 'appium:deviceName': 'Delorean',
184
- 'appium:language': '1'
185
- }
186
- });
187
- d.log.warn.should.not.have.been.called;
188
- let sessions = await d.getSessions();
189
- sessions[0].capabilities.language.should.eql('1');
190
- });
191
- });
192
- it('should error if objects in caps', async function () {
193
- await d.createSession(null, null, {
194
- alwaysMatch: {
195
- 'platformName': {
196
- a: 'iOS'
197
- },
198
- 'appium:deviceName': 'Delorean'
199
- }
200
- }).should.eventually.be.rejectedWith(_lib.errors.SessionNotCreatedError, /platformName/i);
201
- });
202
- it('should check for deprecated caps', async function () {
203
- this.timeout(500);
204
- d.desiredCapConstraints = {
205
- 'lynx-version': {
206
- deprecated: true
207
- }
208
- };
209
- await d.createSession(null, null, {
210
- alwaysMatch: {
211
- 'platformName': 'iOS',
212
- 'appium:deviceName': 'Delorean',
213
- 'appium:lynx-version': 5
214
- }
215
- });
216
- _logger.default.warn.should.have.been.called;
217
- });
218
- it('should not warn if deprecated=false', async function () {
219
- this.timeout(500);
220
- d.desiredCapConstraints = {
221
- 'lynx-version': {
222
- deprecated: false
223
- }
224
- };
225
- await d.createSession(null, null, {
226
- alwaysMatch: {
227
- 'platformName': 'iOS',
228
- 'appium:deviceName': 'Delorean',
229
- 'appium:lynx-version': 5
230
- }
231
- });
232
- d.log.warn.should.not.have.been.called;
233
- });
234
- it('should not validate against null/undefined caps', async function () {
235
- d.desiredCapConstraints = {
236
- 'foo': {
237
- isString: true
238
- }
239
- };
240
-
241
- try {
242
- await d.createSession(null, null, {
243
- alwaysMatch: {
244
- platformName: 'iOS',
245
- 'appium:deviceName': 'Dumb',
246
- 'appium:foo': null
247
- }
248
- });
249
- } finally {
250
- await d.deleteSession();
251
- }
252
-
253
- await d.createSession(null, null, {
254
- alwaysMatch: {
255
- platformName: 'iOS',
256
- 'appium:deviceName': 'Dumb',
257
- 'appium:foo': 1
258
- }
259
- }).should.eventually.be.rejectedWith(/'foo' must be of type string/);
260
-
261
- try {
262
- await d.createSession(null, null, {
263
- alwaysMatch: {
264
- platformName: 'iOS',
265
- 'appium:deviceName': 'Dumb',
266
- 'appium:foo': undefined
267
- }
268
- });
269
- } finally {
270
- await d.deleteSession();
271
- }
272
-
273
- try {
274
- await d.createSession(null, null, {
275
- alwaysMatch: {
276
- platformName: 'iOS',
277
- 'appium:deviceName': 'Dumb',
278
- 'appium:foo': ''
279
- }
280
- });
281
- } finally {
282
- await d.deleteSession();
283
- }
284
- });
285
- it('should still validate null/undefined/empty caps whose presence is required', async function () {
286
- d.desiredCapConstraints = {
287
- foo: {
288
- presence: true
289
- }
290
- };
291
- await d.createSession(null, null, {
292
- alwaysMatch: {
293
- platformName: 'iOS',
294
- 'appium:deviceName': 'Dumb',
295
- 'appium:foo': null
296
- }
297
- }).should.eventually.be.rejectedWith(/blank/);
298
- await d.createSession(null, {
299
- alwaysMatch: {
300
- platformName: 'iOS',
301
- 'appium:deviceName': 'Dumb',
302
- 'appium:foo': ''
303
- }
304
- }).should.eventually.be.rejectedWith(/blank/);
305
- await d.createSession({
306
- firstMatch: [{
307
- platformName: 'iOS',
308
- 'appium:deviceName': 'Dumb',
309
- 'appium:foo': {}
310
- }]
311
- }).should.eventually.be.rejectedWith(/blank/);
312
- await d.createSession({
313
- alwaysMatch: {
314
- platformName: 'iOS',
315
- 'appium:deviceName': 'Dumb',
316
- 'appium:foo': []
317
- }
318
- }).should.eventually.be.rejectedWith(/blank/);
319
- await d.createSession({
320
- alwaysMatch: {
321
- platformName: 'iOS',
322
- 'appium:deviceName': 'Dumb',
323
- 'appium:foo': ' '
324
- }
325
- }).should.eventually.be.rejectedWith(/blank/);
326
- });
327
- describe('w3c', function () {
328
- it('should accept w3c capabilities', async function () {
329
- const [sessionId, caps] = await d.createSession(null, null, {
330
- alwaysMatch: {
331
- platformName: 'iOS',
332
- 'appium:deviceName': 'Delorean'
333
- },
334
- firstMatch: [{}]
335
- });
336
-
337
- try {
338
- sessionId.should.exist;
339
- caps.should.eql({
340
- platformName: 'iOS',
341
- deviceName: 'Delorean'
342
- });
343
- } finally {
344
- await d.deleteSession();
345
- }
346
- });
347
- it('should raise an error if w3c capabilities is not a plain JSON object', async function () {
348
- const testValues = [true, 'string', [], 100];
349
- await _bluebird.default.map(testValues, val => d.createSession(null, null, val).should.eventually.be.rejectedWith(_lib.errors.SessionNotCreatedError));
350
- });
351
- });
352
- });require('source-map-support').install();
353
-
354
-
355
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QvYmFzZWRyaXZlci9jYXBhYmlsaXR5LXNwZWNzLmpzIl0sIm5hbWVzIjpbImRlc2NyaWJlIiwiZCIsInNhbmRib3giLCJiZWZvcmVFYWNoIiwiQmFzZURyaXZlciIsInNweSIsImxvZyIsImxvZ2dlciIsImFmdGVyRWFjaCIsInJlc3RvcmUiLCJpdCIsImNyZWF0ZVNlc3Npb24iLCJmaXJzdE1hdGNoIiwic2hvdWxkIiwiZXZlbnR1YWxseSIsImJlIiwicmVqZWN0ZWRXaXRoIiwiZXJyb3JzIiwiU2Vzc2lvbk5vdENyZWF0ZWRFcnJvciIsImFsd2F5c01hdGNoIiwicGxhdGZvcm1OYW1lIiwiZnVsZmlsbGVkIiwiZGVzaXJlZENhcENvbnN0cmFpbnRzIiwibmVjZXNzYXJ5IiwicHJlc2VuY2UiLCJwcm9wZXIiLCJpc1N0cmluZyIsImluY2x1c2lvbiIsInRpbWVvdXQiLCJ3YXJuIiwiaGF2ZSIsImJlZW4iLCJjYWxsZWQiLCJzZXNzaW9ucyIsImdldFNlc3Npb25zIiwiY2FwYWJpbGl0aWVzIiwibm9SZXNldCIsImVxbCIsIm5vdCIsImxhbmd1YWdlIiwibmV3Q29tbWFuZFRpbWVvdXQiLCJhIiwiZGVwcmVjYXRlZCIsImRlbGV0ZVNlc3Npb24iLCJ1bmRlZmluZWQiLCJmb28iLCJzZXNzaW9uSWQiLCJjYXBzIiwiZXhpc3QiLCJkZXZpY2VOYW1lIiwidGVzdFZhbHVlcyIsIkIiLCJtYXAiLCJ2YWwiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUVBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7QUFFQUEsUUFBUSxDQUFDLHNCQUFELEVBQXlCLFlBQVk7QUFDM0MsTUFBSUMsQ0FBSjtBQUNBLE1BQUlDLE9BQUo7QUFFQUMsRUFBQUEsVUFBVSxDQUFDLFlBQVk7QUFDckJGLElBQUFBLENBQUMsR0FBRyxJQUFJRyxZQUFKLEVBQUo7QUFDQUYsSUFBQUEsT0FBTyxHQUFHLDJCQUFWO0FBQ0FBLElBQUFBLE9BQU8sQ0FBQ0csR0FBUixDQUFZSixDQUFDLENBQUNL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QUFBLFdBQVcsRUFBRTtBQUNYQyxVQUFBQSxZQUFZLEVBQUUsS0FESDtBQUVYLCtCQUFxQjtBQUZWLFNBRDZDO0FBSXZEUixRQUFBQSxVQUFVLEVBQUUsQ0FBQyxFQUFEO0FBSjJDLE9BQTVCLENBQWhDOztBQU1BLFVBQUk7QUFDRmtDLFFBQUFBLFNBQVMsQ0FBQ2pDLE1BQVYsQ0FBaUJtQyxLQUFqQjtBQUNBRCxRQUFBQSxJQUFJLENBQUNsQyxNQUFMLENBQVl3QixHQUFaLENBQWdCO0FBQ2RqQixVQUFBQSxZQUFZLEVBQUUsS0FEQTtBQUVkNkIsVUFBQUEsVUFBVSxFQUFFO0FBRkUsU0FBaEI7QUFJRCxPQU5ELFNBTVU7QUFDUixjQUFNaEQsQ0FBQyxDQUFDMEMsYUFBRixFQUFOO0FBQ0Q7QUFDRixLQWhCQyxDQUFGO0FBa0JBakMsSUFBQUEsRUFBRSxDQUFDLHNFQUFELEVBQXlFLGtCQUFrQjtBQUMzRixZQUFNd0MsVUFBVSxHQUFHLENBQUMsSUFBRCxFQUFPLFFBQVAsRUFBaUIsRUFBakIsRUFBcUIsR0FBckIsQ0FBbkI7QUFFQSxZQUFNQyxrQkFBRUMsR0FBRixDQUFNRixVQUFOLEVBQW1CRyxHQUFELElBQVNwRCxDQUFDLENBQUNVLGFBQUYsQ0FBZ0IsSUFBaEIsRUFBc0IsSUFBdEIsRUFBNEIwQyxHQUE1QixFQUFpQ3hDLE1BQWpDLENBQXdDQyxVQUF4QyxDQUFtREMsRUFBbkQsQ0FBc0RDLFlBQXRELENBQW1FQyxZQUFPQyxzQkFBMUUsQ0FBM0IsQ0FBTjtBQUNELEtBSkMsQ0FBRjtBQUtELEdBeEJPLENBQVI7QUF5QkQsQ0F2WE8sQ0FBUiIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1jaGVja1xuXG5pbXBvcnQgQiBmcm9tICdibHVlYmlyZCc7XG5pbXBvcnQgeyBkZWZhdWx0IGFzIEJhc2VEcml2ZXIsIGVycm9ycyB9IGZyb20gJy4uLy4uL2xpYic7XG5pbXBvcnQgbG9nZ2VyIGZyb20gJy4uLy4uL2xpYi9iYXNlZHJpdmVyL2xvZ2dlcic7XG5pbXBvcnQgeyBjcmVhdGVTYW5kYm94IH0gZnJvbSAnc2lub24nO1xuXG5kZXNjcmliZSgnRGVzaXJlZCBDYXBhYmlsaXRpZXMnLCBmdW5jdGlvbiAoKSB7XG4gIGxldCBkO1xuICBsZXQgc2FuZGJveDtcblxuICBiZWZvcmVFYWNoKGZ1bmN0aW9uICgpIHtcbiAgICBkID0gbmV3IEJhc2VEcml2ZXIoKTtcbiAgICBzYW5kYm94ID0gY3JlYXRlU2FuZGJveCgpO1xuICAgIHNhbmRib3guc3B5KGQubG9nLCAnd2FybicpO1xuICAgIHNhbmRib3guc3B5KGxvZ2dlciwgJ3dhcm4nKTtcbiAgfSk7XG5cbiAgYWZ0ZXJFYWNoKGZ1bmN0aW9uICgpIHtcbiAgICBzYW5kYm94LnJlc3RvcmUoKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCByZXF1aXJlIHBsYXRmb3JtTmFtZSBhbmQgZGV2aWNlTmFtZScsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBhd2FpdCBkLmNyZWF0ZVNlc3Npb24oe1xuICAgICAgZmlyc3RNYXRjaDogW3t9XVxuICAgIH0pLnNob3VsZC5ldmVudHVhbGx5LmJlLnJlamVjdGVkV2l0aChlcnJvcnMuU2Vzc2lvbk5vdENyZWF0ZWRFcnJvciwgL3BsYXRmb3JtTmFtZS8pO1xuICB9KTtcblxuXG4gIGl0KCdzaG91bGQgcmVxdWlyZSBwbGF0Zm9ybU5hbWUnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgYXdhaXQgZC5jcmVhdGVTZXNzaW9uKHtcbiAgICAgIGFsd2F5c01hdGNoOiB7XG4gICAgICAgICdhcHBpdW06ZGV2aWNlTmFtZSc6ICdEZWxvcmVhbidcbiAgICAgIH1cbiAgICB9KS5zaG91bGQuZXZlbnR1YWxseS5iZS5yZWplY3RlZFdpdGgoZXJyb3JzLlNlc3Npb25Ob3RDcmVhdGVkRXJyb3IsIC9wbGF0Zm9ybU5hbWUvKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBub3QgY2FyZSBhYm91dCBjYXAgb3JkZXInLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgYXdhaXQgZC5jcmVhdGVTZXNzaW9uKG51bGwsIG51bGwsIHtcbiAgICAgIGFsd2F5c01hdGNoOiB7XG4gICAgICAgICdhcHBpdW06ZGV2aWNlTmFtZSc6ICdEZWxvcmVhbicsXG4gICAgICAgIHBsYXRmb3JtTmFtZTogJ2lPUydcbiAgICAgIH1cbiAgICB9KS5zaG91bGQuZXZlbnR1YWxseS5iZS5mdWxmaWxsZWQ7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgY2hlY2sgcmVxdWlyZWQgY2FwcyB3aGljaCBhcmUgYWRkZWQgdG8gZHJpdmVyJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIGQuZGVzaXJlZENhcENvbnN0cmFpbnRzID0ge1xuICAgICAgbmVjZXNzYXJ5OiB7XG4gICAgICAgIHByZXNlbmNlOiB0cnVlXG4gICAgICB9LFxuICAgICAgcHJvcGVyOiB7XG4gICAgICAgIHByZXNlbmNlOiB0cnVlLFxuICAgICAgICBpc1N0cmluZzogdHJ1ZSxcbiAgICAgICAgaW5jbHVzaW9uOiBbJ0RlbG9yZWFuJywgJ1JldmVudG9uJ11cbiAgICAgIH1cbiAgICB9O1xuXG4gICAgYXdhaXQgZC5jcmVhdGVTZXNzaW9uKG51bGwsIG51bGwsIHtcbiAgICAgIGFsd2F5c01hdGNoOiB7XG4gICAgICAgICdwbGF0Zm9ybU5hbWUnOiAnaU9TJyxcbiAgICAgICAgJ2FwcGl1bTpkZXZpY2VOYW1lJzogJ0RlbG9yZWFuJ1xuICAgICAgfVxuICAgIH0pLnNob3VsZC5ldmVudHVhbGx5LmJlLnJlamVjdGVkV2l0aChlcnJvcnMuU2Vzc2lvbk5vdENyZWF0ZWRFcnJvciwgL25lY2Vzc2FyeS4qcHJvcGVyLyk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgY2hlY2sgYWRkZWQgcmVxdWlyZWQgY2FwcyBpbiBhZGRpdGlvbiB0byBiYXNlJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIGQuZGVzaXJlZENhcENvbnN0cmFpbnRzID0ge1xuICAgICAgbmVjZXNzYXJ5OiB7XG4gICAgICAgIHByZXNlbmNlOiB0cnVlXG4gICAgICB9LFxuICAgICAgcHJvcGVyOiB7XG4gICAgICAgIHByZXNlbmNlOiB0cnVlLFxuICAgICAgICBpc1N0cmluZzogdHJ1ZSxcbiAgICAgICAgaW5jbHVzaW9uOiBbJ0RlbG9yZWFuJywgJ1JldmVudG9uJ11cbiAgICAgIH1cbiAgICB9O1xuXG4gICAgYXdhaXQgZC5jcmVhdGVTZXNzaW9uKG51bGwsIG51bGwsIHtcbiAgICAgIGFsd2F5c01hdGNoOiB7XG4gICAgICAgICdhcHBpdW06bmVjZXNzYXJ5JzogJ3l1cCdcbiAgICAgIH1cbiAgICB9KS5zaG91bGQuZXZlbnR1YWxseS5iZS5yZWplY3RlZFdpdGgoZXJyb3JzLlNlc3Npb25Ob3RDcmVhdGVkRXJyb3IsIC9wbGF0Zm9ybU5hbWUvKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBhY2NlcHQgZXh0cmEgY2FwYWJpbGl0aWVzJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIGF3YWl0IGQuY3JlYXRlU2Vzc2lvbihudWxsLCBudWxsLCB7XG4gICAgICBhbHdheXNNYXRjaDoge1xuICAgICAgICAncGxhdGZvcm1OYW1lJzogJ2lPUycsXG4gICAgICAgICdhcHBpdW06ZGV2aWNlTmFtZSc6ICdEZWxvcmVhbicsXG4gICAgICAgICdhcHBpdW06ZXh0cmEnOiAnY2hlZXNlJyxcbiAgICAgICAgJ2FwcGl1bTpob2xkIHRoZSc6ICdzYXVjZSdcbiAgICAgIH1cbiAgICB9KS5zaG91bGQuZXZlbnR1YWxseS5iZS5mdWxmaWxsZWQ7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgbG9nIHRoZSB1c2Ugb2YgZXh0cmEgY2FwcycsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICB0aGlzLnRpbWVvdXQoNTAwKTtcblxuICAgIGF3YWl0IGQuY3JlYXRlU2Vzc2lvbihudWxsLCBudWxsLCB7XG4gICAgICBhbHdheXNNYXRjaDoge1xuICAgICAgICAncGxhdGZvcm1OYW1lJzogJ2lPUycsXG4gICAgICAgICdhcHBpdW06ZGV2aWNlTmFtZSc6ICdEZWxvcmVhbicsXG4gICAgICAgICdhcHBpdW06ZXh0cmEnOiAnY2hlZXNlJyxcbiAgICAgICAgJ2FwcGl1bTpob2xkIHRoZSc6ICdzYXVjZSdcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGQubG9nLndhcm4uc2hvdWxkLmhhdmUuYmVlbi5jYWxsZWQ7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgYmUgc2Vuc2l0aXZlIHRvIHRoZSBjYXNlIG9mIGNhcHMnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgYXdhaXQgZC5jcmVhdGVTZXNzaW9uKG51bGwsIG51bGwsIHtcbiAgICAgIGFsd2F5c01hdGNoOiB7XG4gICAgICAgICdwbGF0Zm9ybW5hbWUnOiAnaU9TJyxcbiAgICAgICAgJ2FwcGl1bTpkZXZpY2VOYW1lJzogJ0RlbG9yZWFuJ1xuICAgICAgfVxuICAgIH0pLnNob3VsZC5ldmVudHVhbGx5LmJlLnJlamVjdGVkV2l0aChlcnJvcnMuU2Vzc2lvbk5vdENyZWF0ZWRFcnJvciwgL3BsYXRmb3JtTmFtZS8pO1xuICB9KTtcblxuICBkZXNjcmliZSgnYm9vbGVhbiBjYXBhYmlsaXRpZXMnLCBmdW5jdGlvbiAoKSB7XG4gICAgaXQoJ3Nob3VsZCBhbGxvdyBhIHN0cmluZyBcImZhbHNlXCInLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBhd2FpdCBkLmNyZWF0ZVNlc3Npb24obnVsbCwgbnVsbCwge1xuICAgICAgICBhbHdheXNNYXRjaDoge1xuICAgICAgICAgICdwbGF0Zm9ybU5hbWUnOiAnaU9TJyxcbiAgICAgICAgICAnYXBwaXVtOmRldmljZU5hbWUnOiAnRGVsb3JlYW4nLFxuICAgICAgICAgICdhcHBpdW06bm9SZXNldCc6ICdmYWxzZSdcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICBkLmxvZy53YXJuLnNob3VsZC5oYXZlLmJlZW4uY2FsbGVkO1xuXG4gICAgICBsZXQgc2Vzc2lvbnMgPSBhd2FpdCBkLmdldFNlc3Npb25zKCk7XG4gICAgICBzZXNzaW9uc1swXS5jYXBhYmlsaXRpZXMubm9SZXNldC5zaG91bGQuZXFsKGZhbHNlKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgYWxsb3cgYSBzdHJpbmcgXCJ0cnVlXCInLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBhd2FpdCBkLmNyZWF0ZVNlc3Npb24obnVsbCwgbnVsbCwge1xuICAgICAgICBhbHdheXNNYXRjaDoge1xuICAgICAgICAgICdwbGF0Zm9ybU5hbWUnOiAnaU9TJyxcbiAgICAgICAgICAnYXBwaXVtOmRldmljZU5hbWUnOiAnRGVsb3JlYW4nLFxuICAgICAgICAgICdhcHBpdW06bm9SZXNldCc6ICd0cnVlJ1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIGQubG9nLndhcm4uc2hvdWxkLmhhdmUuYmVlbi5jYWxsZWQ7XG5cbiAgICAgIGxldCBzZXNzaW9ucyA9IGF3YWl0IGQuZ2V0U2Vzc2lvbnMoKTtcbiAgICAgIHNlc3Npb25zWzBdLmNhcGFiaWxpdGllcy5ub1Jlc2V0LnNob3VsZC5lcWwodHJ1ZSk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGFsbG93IGEgc3RyaW5nIFwidHJ1ZVwiIGluIHN0cmluZyBjYXBhYmlsaXRpZXMnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBhd2FpdCBkLmNyZWF0ZVNlc3Npb24obnVsbCwgbnVsbCwge1xuICAgICAgICBhbHdheXNNYXRjaDoge1xuICAgICAgICAgICdwbGF0Zm9ybU5hbWUnOiAnaU9TJyxcbiAgICAgICAgICAnYXBwaXVtOmRldmljZU5hbWUnOiAnRGVsb3JlYW4nLFxuICAgICAgICAgICdhcHBpdW06bGFuZ3VhZ2UnOiAndHJ1ZSdcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICBkLmxvZy53YXJuLnNob3VsZC5ub3QuaGF2ZS5iZWVuLmNhbGxlZDtcblxuICAgICAgbGV0IHNlc3Npb25zID0gYXdhaXQgZC5nZXRTZXNzaW9ucygpO1xuICAgICAgc2Vzc2lvbnNbMF0uY2FwYWJpbGl0aWVzLmxhbmd1YWdlLnNob3VsZC5lcWwoJ3RydWUnKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ251bWJlciBjYXBhYmlsaXRpZXMnLCBmdW5jdGlvbiAoKSB7XG4gICAgaXQoJ3Nob3VsZCBhbGxvdyBhIHN0cmluZyBcIjFcIicsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGF3YWl0IGQuY3JlYXRlU2Vzc2lvbihudWxsLCBudWxsLCB7XG4gICAgICAgIGFsd2F5c01hdGNoOiB7XG4gICAgICAgICAgJ3BsYXRmb3JtTmFtZSc6ICdpT1MnLFxuICAgICAgICAgICdhcHBpdW06ZGV2aWNlTmFtZSc6ICdEZWxvcmVhbicsXG4gICAgICAgICAgJ2FwcGl1bTpuZXdDb21tYW5kVGltZW91dCc6ICcxJ1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIGQubG9nLndhcm4uc2hvdWxkLmhhdmUuYmVlbi5jYWxsZWQ7XG5cbiAgICAgIGxldCBzZXNzaW9ucyA9IGF3YWl0IGQuZ2V0U2Vzc2lvbnMoKTtcbiAgICAgIHNlc3Npb25zWzBdLmNhcGFiaWxpdGllcy5uZXdDb21tYW5kVGltZW91dC5zaG91bGQuZXFsKDEpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBhbGxvdyBhIHN0cmluZyBcIjEuMVwiJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgYXdhaXQgZC5jcmVhdGVTZXNzaW9uKG51bGwsIG51bGwsIHtcbiAgICAgICAgYWx3YXlzTWF0Y2g6IHtcbiAgICAgICAgICAncGxhdGZvcm1OYW1lJzogJ2lPUycsXG4gICAgICAgICAgJ2FwcGl1bTpkZXZpY2VOYW1lJzogJ0RlbG9yZWFuJyxcbiAgICAgICAgICAnYXBwaXVtOm5ld0NvbW1hbmRUaW1lb3V0JzogJzEuMSdcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICBkLmxvZy53YXJuLnNob3VsZC5oYXZlLmJlZW4uY2FsbGVkO1xuXG4gICAgICBsZXQgc2Vzc2lvbnMgPSBhd2FpdCBkLmdldFNlc3Npb25zKCk7XG4gICAgICBzZXNzaW9uc1swXS5jYXBhYmlsaXRpZXMubmV3Q29tbWFuZFRpbWVvdXQuc2hvdWxkLmVxbCgxLjEpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBhbGxvdyBhIHN0cmluZyBcIjFcIiBpbiBzdHJpbmcgY2FwYWJpbGl0aWVzJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgYXdhaXQgZC5jcmVhdGVTZXNzaW9uKG51bGwsIG51bGwsIHtcbiAgICAgICAgYWx3YXlzTWF0Y2g6IHtcbiAgICAgICAgICAncGxhdGZvcm1OYW1lJzogJ2lPUycsXG4gICAgICAgICAgJ2FwcGl1bTpkZXZpY2VOYW1lJzogJ0RlbG9yZWFuJyxcbiAgICAgICAgICAnYXBwaXVtOmxhbmd1YWdlJzogJzEnXG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgZC5sb2cud2Fybi5zaG91bGQubm90LmhhdmUuYmVlbi5jYWxsZWQ7XG5cbiAgICAgIGxldCBzZXNzaW9ucyA9IGF3YWl0IGQuZ2V0U2Vzc2lvbnMoKTtcbiAgICAgIHNlc3Npb25zWzBdLmNhcGFiaWxpdGllcy5sYW5ndWFnZS5zaG91bGQuZXFsKCcxJyk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGl0ICgnc2hvdWxkIGVycm9yIGlmIG9iamVjdHMgaW4gY2FwcycsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBhd2FpdCBkLmNyZWF0ZVNlc3Npb24obnVsbCwgbnVsbCwge1xuICAgICAgYWx3YXlzTWF0Y2g6IHtcbiAgICAgICAgJ3BsYXRmb3JtTmFtZSc6IHthOiAnaU9TJ30sXG4gICAgICAgICdhcHBpdW06ZGV2aWNlTmFtZSc6ICdEZWxvcmVhbidcbiAgICAgIH1cbiAgICB9KS5zaG91bGQuZXZlbnR1YWxseS5iZS5yZWplY3RlZFdpdGgoZXJyb3JzLlNlc3Npb25Ob3RDcmVhdGVkRXJyb3IsIC9wbGF0Zm9ybU5hbWUvaSk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgY2hlY2sgZm9yIGRlcHJlY2F0ZWQgY2FwcycsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICB0aGlzLnRpbWVvdXQoNTAwKTtcblxuICAgIGQuZGVzaXJlZENhcENvbnN0cmFpbnRzID0ge1xuICAgICAgJ2x5bngtdmVyc2lvbic6IHtcbiAgICAgICAgZGVwcmVjYXRlZDogdHJ1ZVxuICAgICAgfVxuICAgIH07XG5cbiAgICBhd2FpdCBkLmNyZWF0ZVNlc3Npb24obnVsbCwgbnVsbCwge1xuICAgICAgYWx3YXlzTWF0Y2g6IHtcbiAgICAgICAgJ3BsYXRmb3JtTmFtZSc6ICdpT1MnLFxuICAgICAgICAnYXBwaXVtOmRldmljZU5hbWUnOiAnRGVsb3JlYW4nLFxuICAgICAgICAnYXBwaXVtOmx5bngtdmVyc2lvbic6IDVcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGxvZ2dlci53YXJuLnNob3VsZC5oYXZlLmJlZW4uY2FsbGVkO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIG5vdCB3YXJuIGlmIGRlcHJlY2F0ZWQ9ZmFsc2UnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgdGhpcy50aW1lb3V0KDUwMCk7XG5cbiAgICBkLmRlc2lyZWRDYXBDb25zdHJhaW50cyA9IHtcbiAgICAgICdseW54LXZlcnNpb24nOiB7XG4gICAgICAgIGRlcHJlY2F0ZWQ6IGZhbHNlXG4gICAgICB9XG4gICAgfTtcblxuICAgIGF3YWl0IGQuY3JlYXRlU2Vzc2lvbihudWxsLCBudWxsLCB7XG4gICAgICBhbHdheXNNYXRjaDoge1xuICAgICAgICAncGxhdGZvcm1OYW1lJzogJ2lPUycsXG4gICAgICAgICdhcHBpdW06ZGV2aWNlTmFtZSc6ICdEZWxvcmVhbicsXG4gICAgICAgICdhcHBpdW06bHlueC12ZXJzaW9uJzogNVxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgZC5sb2cud2Fybi5zaG91bGQubm90LmhhdmUuYmVlbi5jYWxsZWQ7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgbm90IHZhbGlkYXRlIGFnYWluc3QgbnVsbC91bmRlZmluZWQgY2FwcycsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBkLmRlc2lyZWRDYXBDb25zdHJhaW50cyA9IHtcbiAgICAgICdmb28nOiB7XG4gICAgICAgIGlzU3RyaW5nOiB0cnVlXG4gICAgICB9XG4gICAgfTtcblxuICAgIHRyeSB7XG4gICAgICBhd2FpdCBkLmNyZWF0ZVNlc3Npb24obnVsbCwgbnVsbCwge1xuICAgICAgICBhbHdheXNNYXRjaDoge1xuICAgICAgICAgIHBsYXRmb3JtTmFtZTogJ2lPUycsXG4gICAgICAgICAgJ2FwcGl1bTpkZXZpY2VOYW1lJzogJ0R1bWInLFxuICAgICAgICAgICdhcHBpdW06Zm9vJzogbnVsbFxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgYXdhaXQgZC5kZWxldGVTZXNzaW9uKCk7XG4gICAgfVxuXG4gICAgYXdhaXQgZC5jcmVhdGVTZXNzaW9uKG51bGwsIG51bGwsIHtcbiAgICAgIGFsd2F5c01hdGNoOiB7XG4gICAgICAgIHBsYXRmb3JtTmFtZTogJ2lPUycsXG4gICAgICAgICdhcHBpdW06ZGV2aWNlTmFtZSc6ICdEdW1iJyxcbiAgICAgICAgJ2FwcGl1bTpmb28nOiAxXG4gICAgICB9XG4gICAgfSkuc2hvdWxkLmV2ZW50dWFsbHkuYmUucmVqZWN0ZWRXaXRoKC8nZm9vJyBtdXN0IGJlIG9mIHR5cGUgc3RyaW5nLyk7XG5cbiAgICB0cnkge1xuICAgICAgYXdhaXQgZC5jcmVhdGVTZXNzaW9uKG51bGwsIG51bGwsIHtcbiAgICAgICAgYWx3YXlzTWF0Y2g6IHtcbiAgICAgICAgICBwbGF0Zm9ybU5hbWU6ICdpT1MnLFxuICAgICAgICAgICdhcHBpdW06ZGV2aWNlTmFtZSc6ICdEdW1iJyxcbiAgICAgICAgICAnYXBwaXVtOmZvbyc6IHVuZGVmaW5lZFxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgYXdhaXQgZC5kZWxldGVTZXNzaW9uKCk7XG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGQuY3JlYXRlU2Vzc2lvbihudWxsLCBudWxsLCB7XG4gICAgICAgIGFsd2F5c01hdGNoOiB7XG4gICAgICAgICAgcGxhdGZvcm1OYW1lOiAnaU9TJyxcbiAgICAgICAgICAnYXBwaXVtOmRldmljZU5hbWUnOiAnRHVtYicsXG4gICAgICAgICAgJ2FwcGl1bTpmb28nOiAnJ1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgYXdhaXQgZC5kZWxldGVTZXNzaW9uKCk7XG4gICAgfVxuICB9KTtcblxuICBpdCgnc2hvdWxkIHN0aWxsIHZhbGlkYXRlIG51bGwvdW5kZWZpbmVkL2VtcHR5IGNhcHMgd2hvc2UgcHJlc2VuY2UgaXMgcmVxdWlyZWQnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgZC5kZXNpcmVkQ2FwQ29uc3RyYWludHMgPSB7XG4gICAgICBmb286IHtcbiAgICAgICAgcHJlc2VuY2U6IHRydWVcbiAgICAgIH0sXG4gICAgfTtcblxuICAgIGF3YWl0IGQuY3JlYXRlU2Vzc2lvbihudWxsLCBudWxsLCB7XG4gICAgICBhbHdheXNNYXRjaDoge1xuICAgICAgICBwbGF0Zm9ybU5hbWU6ICdpT1MnLFxuICAgICAgICAnYXBwaXVtOmRldmljZU5hbWUnOiAnRHVtYicsXG4gICAgICAgICdhcHBpdW06Zm9vJzogbnVsbFxuICAgICAgfVxuICAgIH0pLnNob3VsZC5ldmVudHVhbGx5LmJlLnJlamVjdGVkV2l0aCgvYmxhbmsvKTtcblxuICAgIGF3YWl0IGQuY3JlYXRlU2Vzc2lvbihudWxsLCB7XG4gICAgICBhbHdheXNNYXRjaDoge1xuICAgICAgICBwbGF0Zm9ybU5hbWU6ICdpT1MnLFxuICAgICAgICAnYXBwaXVtOmRldmljZU5hbWUnOiAnRHVtYicsXG4gICAgICAgICdhcHBpdW06Zm9vJzogJydcbiAgICAgIH1cbiAgICB9KS5zaG91bGQuZXZlbnR1YWxseS5iZS5yZWplY3RlZFdpdGgoL2JsYW5rLyk7XG5cbiAgICBhd2FpdCBkLmNyZWF0ZVNlc3Npb24oe1xuICAgICAgZmlyc3RNYXRjaDogW3tcbiAgICAgICAgcGxhdGZvcm1OYW1lOiAnaU9TJyxcbiAgICAgICAgJ2FwcGl1bTpkZXZpY2VOYW1lJzogJ0R1bWInLFxuICAgICAgICAnYXBwaXVtOmZvbyc6IHt9XG4gICAgICB9XVxuICAgIH0pLnNob3VsZC5ldmVudHVhbGx5LmJlLnJlamVjdGVkV2l0aCgvYmxhbmsvKTtcblxuICAgIGF3YWl0IGQuY3JlYXRlU2Vzc2lvbih7XG4gICAgICBhbHdheXNNYXRjaDoge1xuICAgICAgICBwbGF0Zm9ybU5hbWU6ICdpT1MnLFxuICAgICAgICAnYXBwaXVtOmRldmljZU5hbWUnOiAnRHVtYicsXG4gICAgICAgICdhcHBpdW06Zm9vJzogW11cbiAgICAgIH1cbiAgICB9KS5zaG91bGQuZXZlbnR1YWxseS5iZS5yZWplY3RlZFdpdGgoL2JsYW5rLyk7XG5cbiAgICBhd2FpdCBkLmNyZWF0ZVNlc3Npb24oe1xuICAgICAgYWx3YXlzTWF0Y2g6IHtcbiAgICAgICAgcGxhdGZvcm1OYW1lOiAnaU9TJyxcbiAgICAgICAgJ2FwcGl1bTpkZXZpY2VOYW1lJzogJ0R1bWInLFxuICAgICAgICAnYXBwaXVtOmZvbyc6ICcgICdcbiAgICAgIH1cbiAgICB9KS5zaG91bGQuZXZlbnR1YWxseS5iZS5yZWplY3RlZFdpdGgoL2JsYW5rLyk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCd3M2MnLCBmdW5jdGlvbiAoKSB7XG4gICAgaXQoJ3Nob3VsZCBhY2NlcHQgdzNjIGNhcGFiaWxpdGllcycsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IFtzZXNzaW9uSWQsIGNhcHNdID0gYXdhaXQgZC5jcmVhdGVTZXNzaW9uKG51bGwsIG51bGwsIHtcbiAgICAgICAgYWx3YXlzTWF0Y2g6IHtcbiAgICAgICAgICBwbGF0Zm9ybU5hbWU6ICdpT1MnLFxuICAgICAgICAgICdhcHBpdW06ZGV2aWNlTmFtZSc6ICdEZWxvcmVhbidcbiAgICAgICAgfSwgZmlyc3RNYXRjaDogW3t9XSxcbiAgICAgIH0pO1xuICAgICAgdHJ5IHtcbiAgICAgICAgc2Vzc2lvbklkLnNob3VsZC5leGlzdDtcbiAgICAgICAgY2Fwcy5zaG91bGQuZXFsKHtcbiAgICAgICAgICBwbGF0Zm9ybU5hbWU6ICdpT1MnLFxuICAgICAgICAgIGRldmljZU5hbWU6ICdEZWxvcmVhbicsXG4gICAgICAgIH0pO1xuICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgYXdhaXQgZC5kZWxldGVTZXNzaW9uKCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHJhaXNlIGFuIGVycm9yIGlmIHczYyBjYXBhYmlsaXRpZXMgaXMgbm90IGEgcGxhaW4gSlNPTiBvYmplY3QnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCB0ZXN0VmFsdWVzID0gW3RydWUsICdzdHJpbmcnLCBbXSwgMTAwXTtcbiAgICAgIC8vIHRoaXMgbG9vcCBydW5zIGluIHBhcmFsbGVsLCBhbmQgZG9lcyBub3QgZ3VhcmFudGVlIGFsbCBhc3NlcnRpb25zIHdpbGwgYmUgbWFkZVxuICAgICAgYXdhaXQgQi5tYXAodGVzdFZhbHVlcywgKHZhbCkgPT4gZC5jcmVhdGVTZXNzaW9uKG51bGwsIG51bGwsIHZhbCkuc2hvdWxkLmV2ZW50dWFsbHkuYmUucmVqZWN0ZWRXaXRoKGVycm9ycy5TZXNzaW9uTm90Q3JlYXRlZEVycm9yKSk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXSwiZmlsZSI6InRlc3QvYmFzZWRyaXZlci9jYXBhYmlsaXR5LXNwZWNzLmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uIn0=
@@ -1,112 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- require("source-map-support/register");
6
-
7
- var _lodash = _interopRequireDefault(require("lodash"));
8
-
9
- var _lib = require("../../../lib");
10
-
11
- describe('logging custom events', function () {
12
- it('should allow logging of events', async function () {
13
- const d = new _lib.BaseDriver();
14
-
15
- d._eventHistory.should.eql({
16
- commands: []
17
- });
18
-
19
- await d.logCustomEvent('myorg', 'myevent');
20
-
21
- _lodash.default.keys(d._eventHistory).should.eql(['commands', 'myorg:myevent']);
22
- });
23
- it('should get all events including custom ones', async function () {
24
- const d = new _lib.BaseDriver();
25
-
26
- d._eventHistory.should.eql({
27
- commands: []
28
- });
29
-
30
- d.logEvent('appiumEvent');
31
- await d.logCustomEvent('myorg', 'myevent');
32
- const events = await d.getLogEvents();
33
-
34
- _lodash.default.keys(events).should.eql(['commands', 'appiumEvent', 'myorg:myevent']);
35
- });
36
- });
37
- describe('#getLogEvents', function () {
38
- it('should allow to get all events', async function () {
39
- const d = new _lib.BaseDriver();
40
-
41
- d._eventHistory.should.eql({
42
- commands: []
43
- });
44
-
45
- d._eventHistory.testCommand = ['1', '2', '3'];
46
- await d.getLogEvents().should.eql({
47
- commands: [],
48
- testCommand: ['1', '2', '3']
49
- });
50
- });
51
- it('should filter with testCommand', async function () {
52
- const d = new _lib.BaseDriver();
53
-
54
- d._eventHistory.should.eql({
55
- commands: []
56
- });
57
-
58
- d._eventHistory.testCommand = ['1', '2', '3'];
59
- await d.getLogEvents('testCommand').should.eql({
60
- testCommand: ['1', '2', '3']
61
- });
62
- });
63
- it('should not filter with wrong but can be a part of the event name', async function () {
64
- const d = new _lib.BaseDriver();
65
-
66
- d._eventHistory.should.eql({
67
- commands: []
68
- });
69
-
70
- d._eventHistory.testCommand = ['1', '2', '3'];
71
- await d.getLogEvents('testCommandDummy').should.eql({});
72
- });
73
- it('should filter with multiple event keys', async function () {
74
- const d = new _lib.BaseDriver();
75
-
76
- d._eventHistory.should.eql({
77
- commands: []
78
- });
79
-
80
- d._eventHistory.testCommand = ['1', '2', '3'];
81
- d._eventHistory.testCommand2 = ['4', '5'];
82
- await d.getLogEvents(['testCommand', 'testCommand2']).should.eql({
83
- testCommand: ['1', '2', '3'],
84
- testCommand2: ['4', '5']
85
- });
86
- });
87
- it('should filter with custom events', async function () {
88
- const d = new _lib.BaseDriver();
89
-
90
- d._eventHistory.should.eql({
91
- commands: []
92
- });
93
-
94
- d._eventHistory['custom:appiumEvent'] = ['1', '2', '3'];
95
- await d.getLogEvents(['custom:appiumEvent']).should.eql({
96
- 'custom:appiumEvent': ['1', '2', '3']
97
- });
98
- });
99
- it('should not filter with no existed event name', async function () {
100
- const d = new _lib.BaseDriver();
101
-
102
- d._eventHistory.should.eql({
103
- commands: []
104
- });
105
-
106
- d._eventHistory.testCommand = ['1', '2', '3'];
107
- await d.getLogEvents(['noEventName']).should.eql({});
108
- });
109
- });require('source-map-support').install();
110
-
111
-
112
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QvYmFzZWRyaXZlci9jb21tYW5kcy9ldmVudC1zcGVjcy5qcyJdLCJuYW1lcyI6WyJkZXNjcmliZSIsIml0IiwiZCIsIkJhc2VEcml2ZXIiLCJfZXZlbnRIaXN0b3J5Iiwic2hvdWxkIiwiZXFsIiwiY29tbWFuZHMiLCJsb2dDdXN0b21FdmVudCIsIl8iLCJrZXlzIiwibG9nRXZlbnQiLCJldmVudHMiLCJnZXRMb2dFdmVudHMiLCJ0ZXN0Q29tbWFuZCIsInRlc3RDb21tYW5kMiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7O0FBQ0E7O0FBSUFBLFFBQVEsQ0FBQyx1QkFBRCxFQUEwQixZQUFZO0FBQzVDQyxFQUFBQSxFQUFFLENBQUMsZ0NBQUQsRUFBbUMsa0JBQWtCO0FBQ3JELFVBQU1DLENBQUMsR0FBRyxJQUFJQyxlQUFKLEVBQVY7O0FBQ0FELElBQUFBLENBQUMsQ0FBQ0UsYUFBRixDQUFnQkMsTUFBaEIsQ0FBdUJDLEdBQXZCLENBQTJCO0FBQUNDLE1BQUFBLFFBQVEsRUFBRTtBQUFYLEtBQTNCOztBQUNBLFVBQU1MLENBQUMsQ0FBQ00sY0FBRixDQUFpQixPQUFqQixFQUEwQixTQUExQixDQUFOOztBQUNBQyxvQkFBRUMsSUFBRixDQUFPUixDQUFDLENBQUNFLGFBQVQsRUFBd0JDLE1BQXhCLENBQStCQyxHQUEvQixDQUFtQyxDQUFDLFVBQUQsRUFBYSxlQUFiLENBQW5DO0FBQ0QsR0FMQyxDQUFGO0FBTUFMLEVBQUFBLEVBQUUsQ0FBQyw2Q0FBRCxFQUFnRCxrQkFBa0I7QUFDbEUsVUFBTUMsQ0FBQyxHQUFHLElBQUlDLGVBQUosRUFBVjs7QUFDQUQsSUFBQUEsQ0FBQyxDQUFDRSxhQUFGLENBQWdCQyxNQUFoQixDQUF1QkMsR0FBdkIsQ0FBMkI7QUFBQ0MsTUFBQUEsUUFBUSxFQUFFO0FBQVgsS0FBM0I7O0FBQ0FMLElBQUFBLENBQUMsQ0FBQ1MsUUFBRixDQUFXLGFBQVg7QUFDQSxVQUFNVCxDQUFDLENBQUNNLGNBQUYsQ0FBaUIsT0FB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UixNQUFoQyxDQUF1Q0MsR0FBdkMsQ0FBMkMsRUFBM0MsQ0FBTjtBQUNELEdBTEMsQ0FBRjtBQU1ELENBbkRPLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgQmFzZURyaXZlciB9IGZyb20gJy4uLy4uLy4uL2xpYic7XG5cblxuXG5kZXNjcmliZSgnbG9nZ2luZyBjdXN0b20gZXZlbnRzJywgZnVuY3Rpb24gKCkge1xuICBpdCgnc2hvdWxkIGFsbG93IGxvZ2dpbmcgb2YgZXZlbnRzJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIGNvbnN0IGQgPSBuZXcgQmFzZURyaXZlcigpO1xuICAgIGQuX2V2ZW50SGlzdG9yeS5zaG91bGQuZXFsKHtjb21tYW5kczogW119KTtcbiAgICBhd2FpdCBkLmxvZ0N1c3RvbUV2ZW50KCdteW9yZycsICdteWV2ZW50Jyk7XG4gICAgXy5rZXlzKGQuX2V2ZW50SGlzdG9yeSkuc2hvdWxkLmVxbChbJ2NvbW1hbmRzJywgJ215b3JnOm15ZXZlbnQnXSk7XG4gIH0pO1xuICBpdCgnc2hvdWxkIGdldCBhbGwgZXZlbnRzIGluY2x1ZGluZyBjdXN0b20gb25lcycsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBjb25zdCBkID0gbmV3IEJhc2VEcml2ZXIoKTtcbiAgICBkLl9ldmVudEhpc3Rvcnkuc2hvdWxkLmVxbCh7Y29tbWFuZHM6IFtdfSk7XG4gICAgZC5sb2dFdmVudCgnYXBwaXVtRXZlbnQnKTtcbiAgICBhd2FpdCBkLmxvZ0N1c3RvbUV2ZW50KCdteW9yZycsICdteWV2ZW50Jyk7XG4gICAgY29uc3QgZXZlbnRzID0gYXdhaXQgZC5nZXRMb2dFdmVudHMoKTtcbiAgICBfLmtleXMoZXZlbnRzKS5zaG91bGQuZXFsKFsnY29tbWFuZHMnLCAnYXBwaXVtRXZlbnQnLCAnbXlvcmc6bXlldmVudCddKTtcbiAgfSk7XG59KTtcblxuZGVzY3JpYmUoJyNnZXRMb2dFdmVudHMnLCBmdW5jdGlvbiAoKSB7XG4gIGl0KCdzaG91bGQgYWxsb3cgdG8gZ2V0IGFsbCBldmVudHMnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgY29uc3QgZCA9IG5ldyBCYXNlRHJpdmVyKCk7XG4gICAgZC5fZXZlbnRIaXN0b3J5LnNob3VsZC5lcWwoe2NvbW1hbmRzOiBbXX0pO1xuICAgIGQuX2V2ZW50SGlzdG9yeS50ZXN0Q29tbWFuZCA9IFsnMScsICcyJywgJzMnXTtcbiAgICBhd2FpdCBkLmdldExvZ0V2ZW50cygpLnNob3VsZC5lcWwoe1xuICAgICAgY29tbWFuZHM6IFtdLCB0ZXN0Q29tbWFuZDogWycxJywgJzInLCAnMyddXG4gICAgfSk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgZmlsdGVyIHdpdGggdGVzdENvbW1hbmQnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgY29uc3QgZCA9IG5ldyBCYXNlRHJpdmVyKCk7XG4gICAgZC5fZXZlbnRIaXN0b3J5LnNob3VsZC5lcWwoe2NvbW1hbmRzOiBbXX0pO1xuICAgIGQuX2V2ZW50SGlzdG9yeS50ZXN0Q29tbWFuZCA9IFsnMScsICcyJywgJzMnXTtcbiAgICBhd2FpdCBkLmdldExvZ0V2ZW50cygndGVzdENvbW1hbmQnKS5zaG91bGQuZXFsKHtcbiAgICAgIHRlc3RDb21tYW5kOiBbJzEnLCAnMicsICczJ11cbiAgICB9KTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBub3QgZmlsdGVyIHdpdGggd3JvbmcgYnV0IGNhbiBiZSBhIHBhcnQgb2YgdGhlIGV2ZW50IG5hbWUnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgY29uc3QgZCA9IG5ldyBCYXNlRHJpdmVyKCk7XG4gICAgZC5fZXZlbnRIaXN0b3J5LnNob3VsZC5lcWwoe2NvbW1hbmRzOiBbXX0pO1xuICAgIGQuX2V2ZW50SGlzdG9yeS50ZXN0Q29tbWFuZCA9IFsnMScsICcyJywgJzMnXTtcbiAgICBhd2FpdCBkLmdldExvZ0V2ZW50cygndGVzdENvbW1hbmREdW1teScpLnNob3VsZC5lcWwoe30pO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIGZpbHRlciB3aXRoIG11bHRpcGxlIGV2ZW50IGtleXMnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgY29uc3QgZCA9IG5ldyBCYXNlRHJpdmVyKCk7XG4gICAgZC5fZXZlbnRIaXN0b3J5LnNob3VsZC5lcWwoe2NvbW1hbmRzOiBbXX0pO1xuICAgIGQuX2V2ZW50SGlzdG9yeS50ZXN0Q29tbWFuZCA9IFsnMScsICcyJywgJzMnXTtcbiAgICBkLl9ldmVudEhpc3RvcnkudGVzdENvbW1hbmQyID0gWyc0JywgJzUnXTtcbiAgICBhd2FpdCBkLmdldExvZ0V2ZW50cyhbJ3Rlc3RDb21tYW5kJywgJ3Rlc3RDb21tYW5kMiddKS5zaG91bGQuZXFsKHtcbiAgICAgIHRlc3RDb21tYW5kOiBbJzEnLCAnMicsICczJ10sIHRlc3RDb21tYW5kMjogWyc0JywgJzUnXVxuICAgIH0pO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIGZpbHRlciB3aXRoIGN1c3RvbSBldmVudHMnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgY29uc3QgZCA9IG5ldyBCYXNlRHJpdmVyKCk7XG4gICAgZC5fZXZlbnRIaXN0b3J5LnNob3VsZC5lcWwoe2NvbW1hbmRzOiBbXX0pO1xuICAgIGQuX2V2ZW50SGlzdG9yeVsnY3VzdG9tOmFwcGl1bUV2ZW50J10gPSBbJzEnLCAnMicsICczJ107XG4gICAgYXdhaXQgZC5nZXRMb2dFdmVudHMoWydjdXN0b206YXBwaXVtRXZlbnQnXSkuc2hvdWxkLmVxbCh7XG4gICAgICAnY3VzdG9tOmFwcGl1bUV2ZW50JzogWycxJywgJzInLCAnMyddXG4gICAgfSk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgbm90IGZpbHRlciB3aXRoIG5vIGV4aXN0ZWQgZXZlbnQgbmFtZScsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBjb25zdCBkID0gbmV3IEJhc2VEcml2ZXIoKTtcbiAgICBkLl9ldmVudEhpc3Rvcnkuc2hvdWxkLmVxbCh7Y29tbWFuZHM6IFtdfSk7XG4gICAgZC5fZXZlbnRIaXN0b3J5LnRlc3RDb21tYW5kID0gWycxJywgJzInLCAnMyddO1xuICAgIGF3YWl0IGQuZ2V0TG9nRXZlbnRzKFsnbm9FdmVudE5hbWUnXSkuc2hvdWxkLmVxbCh7fSk7XG4gIH0pO1xufSk7XG4iXSwiZmlsZSI6InRlc3QvYmFzZWRyaXZlci9jb21tYW5kcy9ldmVudC1zcGVjcy5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLiJ9
@@ -1,87 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- require("source-map-support/register");
6
-
7
- var _log = _interopRequireDefault(require("../../../lib/basedriver/commands/log"));
8
-
9
- var _sinon = require("sinon");
10
-
11
- var _lodash = _interopRequireDefault(require("lodash"));
12
-
13
- const expect = chai.expect;
14
- const FIRST_LOGS = ['first', 'logs'];
15
- const SECOND_LOGS = ['second', 'logs'];
16
- const SUPPORTED_LOG_TYPES = {
17
- one: {
18
- description: 'First logs',
19
- getter: () => _lodash.default.clone(FIRST_LOGS)
20
- },
21
- two: {
22
- description: 'Seconds logs',
23
- getter: () => _lodash.default.clone(SECOND_LOGS)
24
- }
25
- };
26
- describe('log commands -', function () {
27
- let sandbox;
28
- beforeEach(function () {
29
- sandbox = (0, _sinon.createSandbox)();
30
- _log.default.supportedLogTypes = {};
31
- _log.default.log = {
32
- debug: _lodash.default.noop
33
- };
34
- });
35
- afterEach(function () {
36
- sandbox.restore();
37
- });
38
- describe('getLogTypes', function () {
39
- it('should return empty array when no supported log types', async function () {
40
- (await _log.default.getLogTypes()).should.eql([]);
41
- });
42
- it('should return keys to log type object', async function () {
43
- _log.default.supportedLogTypes = SUPPORTED_LOG_TYPES;
44
- (await _log.default.getLogTypes()).should.eql(['one', 'two']);
45
- });
46
- });
47
- describe('getLog', function () {
48
- beforeEach(function () {
49
- sandbox.spy(SUPPORTED_LOG_TYPES.one, 'getter');
50
- sandbox.spy(SUPPORTED_LOG_TYPES.two, 'getter');
51
- });
52
- afterEach(function () {
53
- SUPPORTED_LOG_TYPES.one.getter.restore();
54
- SUPPORTED_LOG_TYPES.two.getter.restore();
55
- });
56
- it('should throw error if log type not supported', async function () {
57
- await _log.default.getLog('one').should.eventually.be.rejected;
58
- SUPPORTED_LOG_TYPES.one.getter.called.should.be.false;
59
- SUPPORTED_LOG_TYPES.two.getter.called.should.be.false;
60
- });
61
- it('should throw an error with available log types if log type not supported', async function () {
62
- _log.default.supportedLogTypes = SUPPORTED_LOG_TYPES;
63
- let err;
64
-
65
- try {
66
- await _log.default.getLog('three');
67
- } catch (_err) {
68
- err = _err;
69
- }
70
-
71
- expect(err).to.exist;
72
- err.message.should.eql(`Unsupported log type 'three'. Supported types: {"one":"First logs","two":"Seconds logs"}`);
73
- SUPPORTED_LOG_TYPES.one.getter.called.should.be.false;
74
- SUPPORTED_LOG_TYPES.two.getter.called.should.be.false;
75
- });
76
- it('should call getter on appropriate log when found', async function () {
77
- _log.default.supportedLogTypes = SUPPORTED_LOG_TYPES;
78
- let logs = await _log.default.getLog('one');
79
- logs.should.eql(FIRST_LOGS);
80
- SUPPORTED_LOG_TYPES.one.getter.called.should.be.true;
81
- SUPPORTED_LOG_TYPES.two.getter.called.should.be.false;
82
- });
83
- });
84
- });require('source-map-support').install();
85
-
86
-
87
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QvYmFzZWRyaXZlci9jb21tYW5kcy9sb2ctc3BlY3MuanMiXSwibmFtZXMiOlsiZXhwZWN0IiwiY2hhaSIsIkZJUlNUX0xPR1MiLCJTRUNPTkRfTE9HUyIsIlNVUFBPUlRFRF9MT0dfVFlQRVMiLCJvbmUiLCJkZXNjcmlwdGlvbiIsImdldHRlciIsIl8iLCJjbG9uZSIsInR3byIsImRlc2NyaWJlIiwic2FuZGJveCIsImJlZm9yZUVhY2giLCJsb2dDb21tYW5kcyIsInN1cHBvcnRlZExvZ1R5cGVzIiwibG9nIiwiZGVidWciLCJub29wIiwiYWZ0ZXJFYWNoIiwicmVzdG9yZSIsIml0IiwiZ2V0TG9nVHlwZXMiLCJzaG91bGQiLCJlcWwiLCJzcHkiLCJnZXRMb2ciLCJldmVudHVhbGx5IiwiYmUiLCJyZWplY3RlZCIsImNhbGxlZCIsImZhbHNlIiwiZXJyIiwiX2VyciIsInRvIiwiZXhpc3QiLCJtZXNzYWdlIiwibG9ncyIsInRydWUiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUdBLE1BQU1BLE1BQU0sR0FBR0MsSUFBSSxDQUFDRCxNQUFwQjtBQUVBLE1BQU1FLFVBQVUsR0FBRyxDQUFDLE9BQUQsRUFBVSxNQUFWLENBQW5CO0FBQ0EsTUFBTUMsV0FBVyxHQUFHLENBQUMsUUFBRCxFQUFXLE1BQVgsQ0FBcEI7QUFDQSxNQUFNQyxtQkFBbUIsR0FBRztBQUMxQkMsRUFBQUEsR0FBRyxFQUFFO0FBQ0hDLElBQUFBLFdBQVcsRUFBRSxZQURWO0FBRUhDLElBQUFBLE1BQU0sRUFBRSxNQUFNQyxnQkFBRUMsS0FBRixDQUFRUCxVQUFSO0FBRlgsR0FEcUI7QUFLMUJRLEVBQUFBLEdBQUcsRUFBRTtBQUNISixJQUFBQSxXQUFXLEVBQUUsY0FEVjtBQUVIQyxJQUFBQSxNQUFNLEVBQUUsTUFBTUMsZ0JBQUVDLEtBQUYsQ0FBUU4sV0FBUjtBQUZYO0FBTHFCLENBQTVCO0FBV0FRLFFBQVEsQ0FBQyxnQkFBRCxFQUFtQixZQUFZO0FB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K0J1QixNQUEvQixDQUFzQ1AsTUFBdEMsQ0FBNkNLLEVBQTdDLENBQWdERyxLQUFoRDtBQUNELEtBWkMsQ0FBRjtBQWFBVixJQUFBQSxFQUFFLENBQUMsa0RBQUQsRUFBcUQsa0JBQWtCO0FBQ3ZFUCxtQkFBWUMsaUJBQVosR0FBZ0NYLG1CQUFoQztBQUNBLFVBQUlpQyxJQUFJLEdBQUcsTUFBTXZCLGFBQVlZLE1BQVosQ0FBbUIsS0FBbkIsQ0FBakI7QUFDQVcsTUFBQUEsSUFBSSxDQUFDZCxNQUFMLENBQVlDLEdBQVosQ0FBZ0J0QixVQUFoQjtBQUNBRSxNQUFBQSxtQkFBbUIsQ0FBQ0MsR0FBcEIsQ0FBd0JFLE1BQXhCLENBQStCdUIsTUFBL0IsQ0FBc0NQLE1BQXRDLENBQTZDSyxFQUE3QyxDQUFnRFUsSUFBaEQ7QUFDQWxDLE1BQUFBLG1CQUFtQixDQUFDTSxHQUFwQixDQUF3QkgsTUFBeEIsQ0FBK0J1QixNQUEvQixDQUFzQ1AsTUFBdEMsQ0FBNkNLLEVBQTdDLENBQWdERyxLQUFoRDtBQUNELEtBTkMsQ0FBRjtBQU9ELEdBbENPLENBQVI7QUFtQ0QsQ0ExRE8sQ0FBUiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBsb2dDb21tYW5kcyBmcm9tICcuLi8uLi8uLi9saWIvYmFzZWRyaXZlci9jb21tYW5kcy9sb2cnO1xuaW1wb3J0IHsgY3JlYXRlU2FuZGJveCB9IGZyb20gJ3Npbm9uJztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5cblxuY29uc3QgZXhwZWN0ID0gY2hhaS5leHBlY3Q7XG5cbmNvbnN0IEZJUlNUX0xPR1MgPSBbJ2ZpcnN0JywgJ2xvZ3MnXTtcbmNvbnN0IFNFQ09ORF9MT0dTID0gWydzZWNvbmQnLCAnbG9ncyddO1xuY29uc3QgU1VQUE9SVEVEX0xPR19UWVBFUyA9IHtcbiAgb25lOiB7XG4gICAgZGVzY3JpcHRpb246ICdGaXJzdCBsb2dzJyxcbiAgICBnZXR0ZXI6ICgpID0+IF8uY2xvbmUoRklSU1RfTE9HUyksXG4gIH0sXG4gIHR3bzoge1xuICAgIGRlc2NyaXB0aW9uOiAnU2Vjb25kcyBsb2dzJyxcbiAgICBnZXR0ZXI6ICgpID0+IF8uY2xvbmUoU0VDT05EX0xPR1MpLFxuICB9LFxufTtcblxuZGVzY3JpYmUoJ2xvZyBjb21tYW5kcyAtJywgZnVuY3Rpb24gKCkge1xuICBsZXQgc2FuZGJveDtcblxuICBiZWZvcmVFYWNoKGZ1bmN0aW9uICgpIHtcbiAgICBzYW5kYm94ID0gY3JlYXRlU2FuZGJveCgpO1xuICAgIC8vIHJlc2V0IHRoZSBzdXBwb3J0ZWQgbG9nIHR5cGVzXG4gICAgbG9nQ29tbWFuZHMuc3VwcG9ydGVkTG9nVHlwZXMgPSB7fTtcbiAgICBsb2dDb21tYW5kcy5sb2cgPSB7ZGVidWc6IF8ubm9vcH07XG4gIH0pO1xuXG4gIGFmdGVyRWFjaChmdW5jdGlvbiAoKSB7XG4gICAgc2FuZGJveC5yZXN0b3JlKCk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdnZXRMb2dUeXBlcycsIGZ1bmN0aW9uICgpIHtcbiAgICBpdCgnc2hvdWxkIHJldHVybiBlbXB0eSBhcnJheSB3aGVuIG5vIHN1cHBvcnRlZCBsb2cgdHlwZXMnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICAoYXdhaXQgbG9nQ29tbWFuZHMuZ2V0TG9nVHlwZXMoKSkuc2hvdWxkLmVxbChbXSk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCByZXR1cm4ga2V5cyB0byBsb2cgdHlwZSBvYmplY3QnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBsb2dDb21tYW5kcy5zdXBwb3J0ZWRMb2dUeXBlcyA9IFNVUFBPUlRFRF9MT0dfVFlQRVM7XG4gICAgICAoYXdhaXQgbG9nQ29tbWFuZHMuZ2V0TG9nVHlwZXMoKSkuc2hvdWxkLmVxbChbJ29uZScsICd0d28nXSk7XG4gICAgfSk7XG4gIH0pO1xuICBkZXNjcmliZSgnZ2V0TG9nJywgZnVuY3Rpb24gKCkge1xuICAgIGJlZm9yZUVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgc2FuZGJveC5zcHkoU1VQUE9SVEVEX0xPR19UWVBFUy5vbmUsICdnZXR0ZXInKTtcbiAgICAgIHNhbmRib3guc3B5KFNVUFBPUlRFRF9MT0dfVFlQRVMudHdvLCAnZ2V0dGVyJyk7XG4gICAgfSk7XG4gICAgYWZ0ZXJFYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIFNVUFBPUlRFRF9MT0dfVFlQRVMub25lLmdldHRlci5yZXN0b3JlKCk7XG4gICAgICBTVVBQT1JURURfTE9HX1RZUEVTLnR3by5nZXR0ZXIucmVzdG9yZSgpO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgdGhyb3cgZXJyb3IgaWYgbG9nIHR5cGUgbm90IHN1cHBvcnRlZCcsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGF3YWl0IGxvZ0NvbW1hbmRzLmdldExvZygnb25lJykuc2hvdWxkLmV2ZW50dWFsbHkuYmUucmVqZWN0ZWQ7XG4gICAgICBTVVBQT1JURURfTE9HX1RZUEVTLm9uZS5nZXR0ZXIuY2FsbGVkLnNob3VsZC5iZS5mYWxzZTtcbiAgICAgIFNVUFBPUlRFRF9MT0dfVFlQRVMudHdvLmdldHRlci5jYWxsZWQuc2hvdWxkLmJlLmZhbHNlO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgdGhyb3cgYW4gZXJyb3Igd2l0aCBhdmFpbGFibGUgbG9nIHR5cGVzIGlmIGxvZyB0eXBlIG5vdCBzdXBwb3J0ZWQnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBsb2dDb21tYW5kcy5zdXBwb3J0ZWRMb2dUeXBlcyA9IFNVUFBPUlRFRF9MT0dfVFlQRVM7XG4gICAgICBsZXQgZXJyO1xuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgbG9nQ29tbWFuZHMuZ2V0TG9nKCd0aHJlZScpO1xuICAgICAgfSBjYXRjaCAoX2Vycikge1xuICAgICAgICBlcnIgPSBfZXJyO1xuICAgICAgfVxuICAgICAgZXhwZWN0KGVycikudG8uZXhpc3Q7XG4gICAgICBlcnIubWVzc2FnZS5zaG91bGQuZXFsKGBVbnN1cHBvcnRlZCBsb2cgdHlwZSAndGhyZWUnLiBTdXBwb3J0ZWQgdHlwZXM6IHtcIm9uZVwiOlwiRmlyc3QgbG9nc1wiLFwidHdvXCI6XCJTZWNvbmRzIGxvZ3NcIn1gKTtcbiAgICAgIFNVUFBPUlRFRF9MT0dfVFlQRVMub25lLmdldHRlci5jYWxsZWQuc2hvdWxkLmJlLmZhbHNlO1xuICAgICAgU1VQUE9SVEVEX0xPR19UWVBFUy50d28uZ2V0dGVyLmNhbGxlZC5zaG91bGQuYmUuZmFsc2U7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBjYWxsIGdldHRlciBvbiBhcHByb3ByaWF0ZSBsb2cgd2hlbiBmb3VuZCcsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxvZ0NvbW1hbmRzLnN1cHBvcnRlZExvZ1R5cGVzID0gU1VQUE9SVEVEX0xPR19UWVBFUztcbiAgICAgIGxldCBsb2dzID0gYXdhaXQgbG9nQ29tbWFuZHMuZ2V0TG9nKCdvbmUnKTtcbiAgICAgIGxvZ3Muc2hvdWxkLmVxbChGSVJTVF9MT0dTKTtcbiAgICAgIFNVUFBPUlRFRF9MT0dfVFlQRVMub25lLmdldHRlci5jYWxsZWQuc2hvdWxkLmJlLnRydWU7XG4gICAgICBTVVBQT1JURURfTE9HX1RZUEVTLnR3by5nZXR0ZXIuY2FsbGVkLnNob3VsZC5iZS5mYWxzZTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdLCJmaWxlIjoidGVzdC9iYXNlZHJpdmVyL2NvbW1hbmRzL2xvZy1zcGVjcy5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLiJ9
@@ -1,17 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- require("source-map-support/register");
6
-
7
- var _lib = _interopRequireDefault(require("../../lib"));
8
-
9
- var _driverE2eTests = _interopRequireDefault(require("./driver-e2e-tests"));
10
-
11
- (0, _driverE2eTests.default)(_lib.default, {
12
- platformName: 'iOS',
13
- 'appium:deviceName': 'Delorean'
14
- });require('source-map-support').install();
15
-
16
-
17
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QvYmFzZWRyaXZlci9kcml2ZXItZTJlLXNwZWNzLmpzIl0sIm5hbWVzIjpbIkJhc2VEcml2ZXIiLCJwbGF0Zm9ybU5hbWUiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUVBOztBQUNBOztBQUNBLDZCQUFtQkEsWUFBbkIsRUFBK0I7QUFDN0JDLEVBQUFBLFlBQVksRUFBRSxLQURlO0FBRTdCLHVCQUFxQjtBQUZRLENBQS9CIiwic291cmNlc0NvbnRlbnQiOlsiLy8gdHJhbnNwaWxlOm1vY2hhXG5cbmltcG9ydCBCYXNlRHJpdmVyIGZyb20gJy4uLy4uL2xpYic7XG5pbXBvcnQgYmFzZURyaXZlckUyRVRlc3RzIGZyb20gJy4vZHJpdmVyLWUyZS10ZXN0cyc7XG5iYXNlRHJpdmVyRTJFVGVzdHMoQmFzZURyaXZlciwge1xuICBwbGF0Zm9ybU5hbWU6ICdpT1MnLFxuICAnYXBwaXVtOmRldmljZU5hbWUnOiAnRGVsb3JlYW4nXG59KTtcbiJdLCJmaWxlIjoidGVzdC9iYXNlZHJpdmVyL2RyaXZlci1lMmUtc3BlY3MuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4ifQ==