appium-webdriveragent 4.11.0 → 4.12.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.
- package/CHANGELOG.md +14 -0
- package/PrivateHeaders/XCTest/XCTRunnerDaemonSession.h +9 -0
- package/WebDriverAgentLib/Categories/XCUIDevice+FBHelpers.h +35 -0
- package/WebDriverAgentLib/Categories/XCUIDevice+FBHelpers.m +17 -0
- package/WebDriverAgentLib/Commands/FBCustomCommands.m +64 -10
- package/WebDriverAgentLib/Utilities/FBXCTestDaemonsProxy.h +11 -0
- package/WebDriverAgentLib/Utilities/FBXCTestDaemonsProxy.m +103 -0
- package/WebDriverAgentTests/IntegrationTests/XCUIDeviceHelperTests.m +25 -0
- package/build/index.js +1 -1
- package/build/lib/check-dependencies.js +1 -1
- package/build/lib/check-dependencies.js.map +1 -1
- package/build/lib/constants.js +1 -1
- package/build/lib/constants.js.map +1 -1
- package/build/lib/logger.js +1 -1
- package/build/lib/logger.js.map +1 -1
- package/build/lib/no-session-proxy.js +1 -1
- package/build/lib/no-session-proxy.js.map +1 -1
- package/build/lib/utils.js +1 -1
- package/build/lib/utils.js.map +1 -1
- package/build/lib/webdriveragent.js +1 -1
- package/build/lib/webdriveragent.js.map +1 -1
- package/build/lib/xcodebuild.js +1 -1
- package/build/lib/xcodebuild.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
## [4.12.1](https://github.com/appium/WebDriverAgent/compare/v4.12.0...v4.12.1) (2023-02-20)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* Return null if no simulated location has been previously set ([#663](https://github.com/appium/WebDriverAgent/issues/663)) ([6a5c48b](https://github.com/appium/WebDriverAgent/commit/6a5c48bd2ffc43c0f0d9bf781671bbcf171f9375))
|
|
7
|
+
|
|
8
|
+
## [4.12.0](https://github.com/appium/WebDriverAgent/compare/v4.11.0...v4.12.0) (2023-02-20)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Features
|
|
12
|
+
|
|
13
|
+
* Add support of the simulated geolocation setting ([#662](https://github.com/appium/WebDriverAgent/issues/662)) ([ebb9e60](https://github.com/appium/WebDriverAgent/commit/ebb9e60d56c0e0db9f509437ed639a3a39f6011b))
|
|
14
|
+
|
|
1
15
|
## [4.11.0](https://github.com/appium/WebDriverAgent/compare/v4.10.24...v4.11.0) (2023-02-19)
|
|
2
16
|
|
|
3
17
|
|
|
@@ -10,6 +10,9 @@
|
|
|
10
10
|
#import <UIKit/UIKit.h>
|
|
11
11
|
|
|
12
12
|
@class NSMutableDictionary, NSXPCConnection, XCSynthesizedEventRecord;
|
|
13
|
+
#if !TARGET_OS_TV // tvOS does not provide relevant APIs
|
|
14
|
+
@class CLLocation;
|
|
15
|
+
#endif
|
|
13
16
|
@protocol XCTUIApplicationMonitor, XCTAXClient, XCTestManager_ManagerInterface;
|
|
14
17
|
|
|
15
18
|
// iOS since 10.3
|
|
@@ -70,5 +73,11 @@
|
|
|
70
73
|
// Since Xcode 14.3
|
|
71
74
|
- (void)openURL:(NSURL *)arg1 usingApplication:(NSString *)arg2 completion:(void (^)(_Bool, NSError *))arg3;
|
|
72
75
|
- (void)openDefaultApplicationForURL:(NSURL *)arg1 completion:(void (^)(_Bool, NSError *))arg2;
|
|
76
|
+
#if !TARGET_OS_TV // tvOS does not provide relevant APIs
|
|
77
|
+
- (void)setSimulatedLocation:(CLLocation *)arg1 completion:(void (^)(_Bool, NSError *))arg2;
|
|
78
|
+
- (void)getSimulatedLocationWithReply:(void (^)(CLLocation *, NSError *))arg1;
|
|
79
|
+
- (void)clearSimulatedLocationWithReply:(void (^)(_Bool, NSError *))arg1;
|
|
80
|
+
@property(readonly) _Bool supportsLocationSimulation;
|
|
81
|
+
#endif
|
|
73
82
|
|
|
74
83
|
@end
|
|
@@ -9,6 +9,10 @@
|
|
|
9
9
|
|
|
10
10
|
#import <XCTest/XCTest.h>
|
|
11
11
|
|
|
12
|
+
#if !TARGET_OS_TV
|
|
13
|
+
#import <CoreLocation/CoreLocation.h>
|
|
14
|
+
#endif
|
|
15
|
+
|
|
12
16
|
NS_ASSUME_NONNULL_BEGIN
|
|
13
17
|
|
|
14
18
|
typedef NS_ENUM(NSUInteger, FBUIInterfaceAppearance) {
|
|
@@ -154,6 +158,37 @@ typedef NS_ENUM(NSUInteger, FBUIInterfaceAppearance) {
|
|
|
154
158
|
*/
|
|
155
159
|
- (nullable NSNumber *)fb_getAppearance;
|
|
156
160
|
|
|
161
|
+
#if !TARGET_OS_TV
|
|
162
|
+
/**
|
|
163
|
+
Allows to set a simulated geolocation coordinates.
|
|
164
|
+
Only works since Xcode 14.3/iOS 16.4
|
|
165
|
+
|
|
166
|
+
@param location The simlated location coordinates to set
|
|
167
|
+
@param error If there is an error, upon return contains an NSError object that describes the problem.
|
|
168
|
+
@return YES if the simulated location has been successfully set
|
|
169
|
+
*/
|
|
170
|
+
- (BOOL)fb_setSimulatedLocation:(CLLocation *)location error:(NSError **)error;
|
|
171
|
+
|
|
172
|
+
/**
|
|
173
|
+
Allows to get a simulated geolocation coordinates.
|
|
174
|
+
Only works since Xcode 14.3/iOS 16.4
|
|
175
|
+
|
|
176
|
+
@param error If there is an error, upon return contains an NSError object that describes the problem.
|
|
177
|
+
@return The current simulated location or nil in case of failure or if no location has previously been seet
|
|
178
|
+
(the returned error will be nil in the latter case)
|
|
179
|
+
*/
|
|
180
|
+
- (nullable CLLocation *)fb_getSimulatedLocation:(NSError **)error;
|
|
181
|
+
|
|
182
|
+
/**
|
|
183
|
+
Allows to clear a previosuly set simulated geolocation coordinates.
|
|
184
|
+
Only works since Xcode 14.3/iOS 16.4
|
|
185
|
+
|
|
186
|
+
@param error If there is an error, upon return contains an NSError object that describes the problem.
|
|
187
|
+
@return YES if the simulated location has been successfully cleared
|
|
188
|
+
*/
|
|
189
|
+
- (BOOL)fb_clearSimulatedLocation:(NSError **)error;
|
|
190
|
+
#endif
|
|
191
|
+
|
|
157
192
|
@end
|
|
158
193
|
|
|
159
194
|
NS_ASSUME_NONNULL_END
|
|
@@ -355,4 +355,21 @@ static bool fb_isLocked;
|
|
|
355
355
|
: nil;
|
|
356
356
|
}
|
|
357
357
|
|
|
358
|
+
#if !TARGET_OS_TV
|
|
359
|
+
- (BOOL)fb_setSimulatedLocation:(CLLocation *)location error:(NSError **)error
|
|
360
|
+
{
|
|
361
|
+
return [FBXCTestDaemonsProxy setSimulatedLocation:location error:error];
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
- (nullable CLLocation *)fb_getSimulatedLocation:(NSError **)error
|
|
365
|
+
{
|
|
366
|
+
return [FBXCTestDaemonsProxy getSimulatedLocation:error];
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
- (BOOL)fb_clearSimulatedLocation:(NSError **)error
|
|
370
|
+
{
|
|
371
|
+
return [FBXCTestDaemonsProxy clearSimulatedLocation:error];
|
|
372
|
+
}
|
|
373
|
+
#endif
|
|
374
|
+
|
|
358
375
|
@end
|
|
@@ -66,6 +66,14 @@
|
|
|
66
66
|
[[FBRoute POST:@"/wda/device/appearance"].withoutSession respondWithTarget:self action:@selector(handleSetDeviceAppearance:)],
|
|
67
67
|
[[FBRoute GET:@"/wda/device/location"] respondWithTarget:self action:@selector(handleGetLocation:)],
|
|
68
68
|
[[FBRoute GET:@"/wda/device/location"].withoutSession respondWithTarget:self action:@selector(handleGetLocation:)],
|
|
69
|
+
#if !TARGET_OS_TV // tvOS does not provide relevant APIs
|
|
70
|
+
[[FBRoute GET:@"/wda/simulatedLocation"] respondWithTarget:self action:@selector(handleGetSimulatedLocation:)],
|
|
71
|
+
[[FBRoute GET:@"/wda/simulatedLocation"].withoutSession respondWithTarget:self action:@selector(handleGetSimulatedLocation:)],
|
|
72
|
+
[[FBRoute POST:@"/wda/simulatedLocation"] respondWithTarget:self action:@selector(handleSetSimulatedLocation:)],
|
|
73
|
+
[[FBRoute POST:@"/wda/simulatedLocation"].withoutSession respondWithTarget:self action:@selector(handleSetSimulatedLocation:)],
|
|
74
|
+
[[FBRoute DELETE:@"/wda/simulatedLocation"] respondWithTarget:self action:@selector(handleClearSimulatedLocation:)],
|
|
75
|
+
[[FBRoute DELETE:@"/wda/simulatedLocation"].withoutSession respondWithTarget:self action:@selector(handleClearSimulatedLocation:)],
|
|
76
|
+
#endif
|
|
69
77
|
[[FBRoute OPTIONS:@"/*"].withoutSession respondWithTarget:self action:@selector(handlePingCommand:)],
|
|
70
78
|
];
|
|
71
79
|
}
|
|
@@ -106,9 +114,9 @@
|
|
|
106
114
|
BOOL isDismissed = [request.session.activeApplication fb_dismissKeyboardWithKeyNames:request.arguments[@"keyNames"]
|
|
107
115
|
error:&error];
|
|
108
116
|
return isDismissed
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
117
|
+
? FBResponseWithOK()
|
|
118
|
+
: FBResponseWithStatus([FBCommandStatus invalidElementStateErrorWithMessage:error.description
|
|
119
|
+
traceback:nil]);
|
|
112
120
|
}
|
|
113
121
|
|
|
114
122
|
+ (id<FBResponsePayload>)handlePingCommand:(FBRouteRequest *)request
|
|
@@ -123,12 +131,12 @@
|
|
|
123
131
|
FBSession *session = request.session;
|
|
124
132
|
CGSize statusBarSize = [FBScreen statusBarSizeForApplication:session.activeApplication];
|
|
125
133
|
return FBResponseWithObject(
|
|
126
|
-
|
|
134
|
+
@{
|
|
127
135
|
@"statusBarSize": @{@"width": @(statusBarSize.width),
|
|
128
136
|
@"height": @(statusBarSize.height),
|
|
129
|
-
|
|
137
|
+
},
|
|
130
138
|
@"scale": @([FBScreen scale]),
|
|
131
|
-
|
|
139
|
+
});
|
|
132
140
|
}
|
|
133
141
|
|
|
134
142
|
+ (id<FBResponsePayload>)handleLock:(FBRouteRequest *)request
|
|
@@ -325,7 +333,7 @@
|
|
|
325
333
|
CLAuthorizationStatus authStatus;
|
|
326
334
|
if ([locationManager respondsToSelector:@selector(authorizationStatus)]) {
|
|
327
335
|
NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:[[locationManager class]
|
|
328
|
-
|
|
336
|
+
instanceMethodSignatureForSelector:@selector(authorizationStatus)]];
|
|
329
337
|
[invocation setSelector:@selector(authorizationStatus)];
|
|
330
338
|
[invocation setTarget:locationManager];
|
|
331
339
|
[invocation invoke];
|
|
@@ -379,8 +387,8 @@
|
|
|
379
387
|
}
|
|
380
388
|
|
|
381
389
|
FBUIInterfaceAppearance appearance = [name isEqualToString:@"light"]
|
|
382
|
-
|
|
383
|
-
|
|
390
|
+
? FBUIInterfaceAppearanceLight
|
|
391
|
+
: FBUIInterfaceAppearanceDark;
|
|
384
392
|
NSError *error;
|
|
385
393
|
if (![XCUIDevice.sharedDevice fb_setAppearance:appearance error:&error]) {
|
|
386
394
|
return FBResponseWithStatus([FBCommandStatus unknownErrorWithMessage:error.description
|
|
@@ -397,7 +405,7 @@
|
|
|
397
405
|
NSString *currentLocale = [[NSLocale autoupdatingCurrentLocale] localeIdentifier];
|
|
398
406
|
|
|
399
407
|
NSMutableDictionary *deviceInfo = [NSMutableDictionary dictionaryWithDictionary:
|
|
400
|
-
|
|
408
|
+
@{
|
|
401
409
|
@"currentLocale": currentLocale,
|
|
402
410
|
@"timeZone": self.timeZone,
|
|
403
411
|
@"name": UIDevice.currentDevice.name,
|
|
@@ -490,4 +498,50 @@
|
|
|
490
498
|
return [localTimeZone name];
|
|
491
499
|
}
|
|
492
500
|
|
|
501
|
+
#if !TARGET_OS_TV // tvOS does not provide relevant APIs
|
|
502
|
+
+ (id<FBResponsePayload>)handleGetSimulatedLocation:(FBRouteRequest *)request
|
|
503
|
+
{
|
|
504
|
+
NSError *error;
|
|
505
|
+
CLLocation *location = [XCUIDevice.sharedDevice fb_getSimulatedLocation:&error];
|
|
506
|
+
if (nil != error) {
|
|
507
|
+
return FBResponseWithStatus([FBCommandStatus unknownErrorWithMessage:error.description
|
|
508
|
+
traceback:nil]);
|
|
509
|
+
}
|
|
510
|
+
return FBResponseWithObject(@{
|
|
511
|
+
@"latitude": location ? @(location.coordinate.latitude) : NSNull.null,
|
|
512
|
+
@"longitude": location ? @(location.coordinate.longitude) : NSNull.null,
|
|
513
|
+
@"altitude": location ? @(location.altitude) : NSNull.null,
|
|
514
|
+
});
|
|
515
|
+
}
|
|
516
|
+
|
|
517
|
+
+ (id<FBResponsePayload>)handleSetSimulatedLocation:(FBRouteRequest *)request
|
|
518
|
+
{
|
|
519
|
+
NSNumber *longitude = request.arguments[@"longitude"];
|
|
520
|
+
NSNumber *latitude = request.arguments[@"latitude"];
|
|
521
|
+
|
|
522
|
+
if (nil == longitude || nil == latitude) {
|
|
523
|
+
return FBResponseWithStatus([FBCommandStatus invalidArgumentErrorWithMessage:@"Both latitude and longitude must be provided"
|
|
524
|
+
traceback:nil]);
|
|
525
|
+
}
|
|
526
|
+
NSError *error;
|
|
527
|
+
CLLocation *location = [[CLLocation alloc] initWithLatitude:latitude.doubleValue
|
|
528
|
+
longitude:longitude.doubleValue];
|
|
529
|
+
if (![XCUIDevice.sharedDevice fb_setSimulatedLocation:location error:&error]) {
|
|
530
|
+
return FBResponseWithStatus([FBCommandStatus unknownErrorWithMessage:error.description
|
|
531
|
+
traceback:nil]);
|
|
532
|
+
}
|
|
533
|
+
return FBResponseWithOK();
|
|
534
|
+
}
|
|
535
|
+
|
|
536
|
+
+ (id<FBResponsePayload>)handleClearSimulatedLocation:(FBRouteRequest *)request
|
|
537
|
+
{
|
|
538
|
+
NSError *error;
|
|
539
|
+
if (![XCUIDevice.sharedDevice fb_clearSimulatedLocation:&error]) {
|
|
540
|
+
return FBResponseWithStatus([FBCommandStatus unknownErrorWithMessage:error.description
|
|
541
|
+
traceback:nil]);
|
|
542
|
+
}
|
|
543
|
+
return FBResponseWithOK();
|
|
544
|
+
}
|
|
545
|
+
#endif
|
|
546
|
+
|
|
493
547
|
@end
|
|
@@ -8,6 +8,11 @@
|
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
#import <XCTest/XCTest.h>
|
|
11
|
+
|
|
12
|
+
#if !TARGET_OS_TV
|
|
13
|
+
#import <CoreLocation/CoreLocation.h>
|
|
14
|
+
#endif
|
|
15
|
+
|
|
11
16
|
#import "XCSynthesizedEventRecord.h"
|
|
12
17
|
|
|
13
18
|
NS_ASSUME_NONNULL_BEGIN
|
|
@@ -28,6 +33,12 @@ NS_ASSUME_NONNULL_BEGIN
|
|
|
28
33
|
+ (BOOL)openURL:(NSURL *)url usingApplication:(NSString *)bundleId error:(NSError **)error;
|
|
29
34
|
+ (BOOL)openDefaultApplicationForURL:(NSURL *)url error:(NSError **)error;
|
|
30
35
|
|
|
36
|
+
#if !TARGET_OS_TV
|
|
37
|
+
+ (BOOL)setSimulatedLocation:(CLLocation *)location error:(NSError **)error;
|
|
38
|
+
+ (nullable CLLocation *)getSimulatedLocation:(NSError **)error;
|
|
39
|
+
+ (BOOL)clearSimulatedLocation:(NSError **)error;
|
|
40
|
+
#endif
|
|
41
|
+
|
|
31
42
|
@end
|
|
32
43
|
|
|
33
44
|
NS_ASSUME_NONNULL_END
|
|
@@ -147,4 +147,107 @@ static dispatch_once_t onceTestRunnerDaemonClass;
|
|
|
147
147
|
return didSucceed;
|
|
148
148
|
}
|
|
149
149
|
|
|
150
|
+
#if !TARGET_OS_TV
|
|
151
|
+
+ (BOOL)setSimulatedLocation:(CLLocation *)location error:(NSError *__autoreleasing*)error
|
|
152
|
+
{
|
|
153
|
+
XCTRunnerDaemonSession *session = [FBXCTRunnerDaemonSessionClass sharedSession];
|
|
154
|
+
if (![session respondsToSelector:@selector(setSimulatedLocation:completion:)]) {
|
|
155
|
+
if (error) {
|
|
156
|
+
[[[FBErrorBuilder builder]
|
|
157
|
+
withDescriptionFormat:@"The current Xcode SDK does not support location simulation. Consider upgrading to Xcode 14.3+/iOS 16.4+"]
|
|
158
|
+
buildError:error];
|
|
159
|
+
}
|
|
160
|
+
return NO;
|
|
161
|
+
}
|
|
162
|
+
if (![session supportsLocationSimulation]) {
|
|
163
|
+
if (error) {
|
|
164
|
+
[[[FBErrorBuilder builder]
|
|
165
|
+
withDescriptionFormat:@"Your device does not support location simulation"]
|
|
166
|
+
buildError:error];
|
|
167
|
+
}
|
|
168
|
+
return NO;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
__block BOOL didSucceed = NO;
|
|
172
|
+
[FBRunLoopSpinner spinUntilCompletion:^(void(^completion)(void)){
|
|
173
|
+
[session setSimulatedLocation:location completion:^(bool result, NSError *invokeError) {
|
|
174
|
+
if (error) {
|
|
175
|
+
*error = invokeError;
|
|
176
|
+
}
|
|
177
|
+
didSucceed = invokeError == nil && result;
|
|
178
|
+
completion();
|
|
179
|
+
}];
|
|
180
|
+
}];
|
|
181
|
+
return didSucceed;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
+ (nullable CLLocation *)getSimulatedLocation:(NSError *__autoreleasing*)error;
|
|
185
|
+
{
|
|
186
|
+
XCTRunnerDaemonSession *session = [FBXCTRunnerDaemonSessionClass sharedSession];
|
|
187
|
+
if (![session respondsToSelector:@selector(getSimulatedLocationWithReply:)]) {
|
|
188
|
+
if (error) {
|
|
189
|
+
[[[FBErrorBuilder builder]
|
|
190
|
+
withDescriptionFormat:@"The current Xcode SDK does not support location simulation. Consider upgrading to Xcode 14.3+/iOS 16.4+"]
|
|
191
|
+
buildError:error];
|
|
192
|
+
}
|
|
193
|
+
return nil;
|
|
194
|
+
}
|
|
195
|
+
if (![session supportsLocationSimulation]) {
|
|
196
|
+
if (error) {
|
|
197
|
+
[[[FBErrorBuilder builder]
|
|
198
|
+
withDescriptionFormat:@"Your device does not support location simulation"]
|
|
199
|
+
buildError:error];
|
|
200
|
+
}
|
|
201
|
+
return nil;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
__block CLLocation *location = nil;
|
|
205
|
+
[FBRunLoopSpinner spinUntilCompletion:^(void(^completion)(void)){
|
|
206
|
+
[session getSimulatedLocationWithReply:^(CLLocation *reply, NSError *invokeError) {
|
|
207
|
+
if (error) {
|
|
208
|
+
*error = invokeError;
|
|
209
|
+
}
|
|
210
|
+
if (nil == invokeError) {
|
|
211
|
+
location = reply;
|
|
212
|
+
}
|
|
213
|
+
completion();
|
|
214
|
+
}];
|
|
215
|
+
}];
|
|
216
|
+
return location;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
+ (BOOL)clearSimulatedLocation:(NSError *__autoreleasing*)error
|
|
220
|
+
{
|
|
221
|
+
XCTRunnerDaemonSession *session = [FBXCTRunnerDaemonSessionClass sharedSession];
|
|
222
|
+
if (![session respondsToSelector:@selector(clearSimulatedLocationWithReply:)]) {
|
|
223
|
+
if (error) {
|
|
224
|
+
[[[FBErrorBuilder builder]
|
|
225
|
+
withDescriptionFormat:@"The current Xcode SDK does not support location simulation. Consider upgrading to Xcode 14.3+/iOS 16.4+"]
|
|
226
|
+
buildError:error];
|
|
227
|
+
}
|
|
228
|
+
return NO;
|
|
229
|
+
}
|
|
230
|
+
if (![session supportsLocationSimulation]) {
|
|
231
|
+
if (error) {
|
|
232
|
+
[[[FBErrorBuilder builder]
|
|
233
|
+
withDescriptionFormat:@"Your device does not support location simulation"]
|
|
234
|
+
buildError:error];
|
|
235
|
+
}
|
|
236
|
+
return NO;
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
__block BOOL didSucceed = NO;
|
|
240
|
+
[FBRunLoopSpinner spinUntilCompletion:^(void(^completion)(void)){
|
|
241
|
+
[session clearSimulatedLocationWithReply:^(bool result, NSError *invokeError) {
|
|
242
|
+
if (error) {
|
|
243
|
+
*error = invokeError;
|
|
244
|
+
}
|
|
245
|
+
didSucceed = invokeError == nil && result;
|
|
246
|
+
completion();
|
|
247
|
+
}];
|
|
248
|
+
}];
|
|
249
|
+
return didSucceed;
|
|
250
|
+
}
|
|
251
|
+
#endif
|
|
252
|
+
|
|
150
253
|
@end
|
|
@@ -144,6 +144,31 @@
|
|
|
144
144
|
XCTAssertNil(error);
|
|
145
145
|
}
|
|
146
146
|
|
|
147
|
+
#if !TARGET_OS_TV
|
|
148
|
+
- (void)testSimulatedLocationSetup
|
|
149
|
+
{
|
|
150
|
+
if (SYSTEM_VERSION_LESS_THAN(@"16.4")) {
|
|
151
|
+
return;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
CLLocation *simulatedLocation = [[CLLocation alloc] initWithLatitude:50 longitude:50];
|
|
155
|
+
NSError *error;
|
|
156
|
+
XCTAssertTrue([XCUIDevice.sharedDevice fb_setSimulatedLocation:simulatedLocation error:&error]);
|
|
157
|
+
XCTAssertNil(error);
|
|
158
|
+
CLLocation *currentLocation = [XCUIDevice.sharedDevice fb_getSimulatedLocation:&error];
|
|
159
|
+
XCTAssertNil(error);
|
|
160
|
+
XCTAssertNotNil(currentLocation);
|
|
161
|
+
XCTAssertEqualWithAccuracy(simulatedLocation.coordinate.latitude, currentLocation.coordinate.latitude, 0.1);
|
|
162
|
+
XCTAssertEqualWithAccuracy(simulatedLocation.coordinate.longitude, currentLocation.coordinate.longitude, 0.1);
|
|
163
|
+
XCTAssertTrue([XCUIDevice.sharedDevice fb_clearSimulatedLocation:&error]);
|
|
164
|
+
XCTAssertNil(error);
|
|
165
|
+
currentLocation = [XCUIDevice.sharedDevice fb_getSimulatedLocation:&error];
|
|
166
|
+
XCTAssertNil(error);
|
|
167
|
+
XCTAssertNotEqualWithAccuracy(simulatedLocation.coordinate.latitude, currentLocation.coordinate.latitude, 0.1);
|
|
168
|
+
XCTAssertNotEqualWithAccuracy(simulatedLocation.coordinate.longitude, currentLocation.coordinate.longitude, 0.1);
|
|
169
|
+
}
|
|
170
|
+
#endif
|
|
171
|
+
|
|
147
172
|
- (void)testPressingUnsupportedButton
|
|
148
173
|
{
|
|
149
174
|
NSError *error;
|
package/build/index.js
CHANGED
|
@@ -40,4 +40,4 @@ const {
|
|
|
40
40
|
} = utils;
|
|
41
41
|
exports.BOOTSTRAP_PATH = BOOTSTRAP_PATH;
|
|
42
42
|
exports.resetTestProcesses = resetTestProcesses;
|
|
43
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkZXBlbmRlbmNpZXMiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJwcm94aWVzIiwiZHJpdmVyIiwiY29uc3RhbnRzIiwidXRpbHMiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiY2hlY2tGb3JEZXBlbmRlbmNpZXMiLCJidW5kbGVXREFTaW0iLCJleHBvcnRzIiwiTm9TZXNzaW9uUHJveHkiLCJXZWJEcml2ZXJBZ2VudCIsIldEQV9CQVNFX1VSTCIsIldEQV9SVU5ORVJfQlVORExFX0lEIiwiUFJPSkVDVF9GSUxFIiwicmVzZXRUZXN0UHJvY2Vzc2VzIiwiQk9PVFNUUkFQX1BBVEgiXSwic291cmNlcyI6WyIuLi9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBkZXBlbmRlbmNpZXMgZnJvbSAnLi9saWIvY2hlY2stZGVwZW5kZW5jaWVzJztcbmltcG9ydCAqIGFzIHByb3hpZXMgZnJvbSAnLi9saWIvbm8tc2Vzc2lvbi1wcm94eSc7XG5pbXBvcnQgKiBhcyBkcml2ZXIgZnJvbSAnLi9saWIvd2ViZHJpdmVyYWdlbnQnO1xuaW1wb3J0ICogYXMgY29uc3RhbnRzIGZyb20gJy4vbGliL2NvbnN0YW50cyc7XG5pbXBvcnQgKiBhcyB1dGlscyBmcm9tICcuL2xpYi91dGlscyc7XG5cblxuY29uc3QgeyBjaGVja0ZvckRlcGVuZGVuY2llcywgYnVuZGxlV0RBU2ltIH0gPSBkZXBlbmRlbmNpZXM7XG5jb25zdCB7IE5vU2Vzc2lvblByb3h5IH0gPSBwcm94aWVzO1xuY29uc3QgeyBXZWJEcml2ZXJBZ2VudCB9ID0gZHJpdmVyO1xuY29uc3QgeyBXREFfQkFTRV9VUkwsIFdEQV9SVU5ORVJfQlVORExFX0lELCBQUk9KRUNUX0ZJTEUgfSA9IGNvbnN0YW50cztcbmNvbnN0IHsgcmVzZXRUZXN0UHJvY2Vzc2VzLCBCT09UU1RSQVBfUEFUSCB9ID0gdXRpbHM7XG5cbmV4cG9ydCB7XG4gIFdlYkRyaXZlckFnZW50LFxuICBOb1Nlc3Npb25Qcm94eSxcbiAgY2hlY2tGb3JEZXBlbmRlbmNpZXMsIGJ1bmRsZVdEQVNpbSxcbiAgcmVzZXRUZXN0UHJvY2Vzc2VzLFxuICBCT09UU1RSQVBfUEFUSCxcbiAgV0RBX1JVTk5FUl9CVU5ETEVfSUQsIFBST0pFQ1RfRklMRSxcbiAgV0RBX0JBU0VfVVJMLFxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLFlBQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE9BQUEsR0FBQUYsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFFLE1BQUEsR0FBQUgsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFHLFNBQUEsR0FBQUosdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFJLEtBQUEsR0FBQUwsdUJBQUEsQ0FBQUMsT0FBQTtBQUFxQyxTQUFBSyx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEsQ0FBQUMsV0FBQSxXQUFBQSxXQUFBLEdBQUFHLGdCQUFBLEdBQUFELGlCQUFBLEtBQUFGLFdBQUE7QUFBQSxTQUFBUCx3QkFBQVcsR0FBQSxFQUFBSixXQUFBLFNBQUFBLFdBQUEsSUFBQUksR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsV0FBQUQsR0FBQSxRQUFBQSxHQUFBLG9CQUFBQSxHQUFBLHdCQUFBQSxHQUFBLDRCQUFBRSxPQUFBLEVBQUFGLEdBQUEsVUFBQUcsS0FBQSxHQUFBUix3QkFBQSxDQUFBQyxXQUFBLE9BQUFPLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENBQUFKLEdBQUEsWUFBQUcsS0FBQSxDQUFBRSxHQUFBLENBQUFMLEdBQUEsU0FBQU0sTUFBQSxXQUFBQyxxQkFBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxHQUFBLElBQUFYLEdBQUEsUUFBQVcsR0FBQSxrQkFBQUgsTUFBQSxDQUFBSSxTQUFBLENBQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBZCxHQUFBLEVBQUFXLEdBQUEsU0FBQUksSUFBQSxHQUFBUixxQkFBQSxHQUFBQyxNQUFBLENBQUFFLHdCQUFBLENBQUFWLEdBQUEsRUFBQVcsR0FBQSxjQUFBSSxJQUFBLEtBQUFBLElBQUEsQ0FBQVYsR0FBQSxJQUFBVSxJQUFBLENBQUFDLEdBQUEsS0FBQVIsTUFBQSxDQUFBQyxjQUFBLENBQUFILE1BQUEsRUFBQUssR0FBQSxFQUFBSSxJQUFBLFlBQUFULE1BQUEsQ0FBQUssR0FBQSxJQUFBWCxHQUFBLENBQUFXLEdBQUEsU0FBQUwsTUFBQSxDQUFBSixPQUFBLEdBQUFGLEdBQUEsTUFBQUcsS0FBQSxJQUFBQSxLQUFBLENBQUFhLEdBQUEsQ0FBQWhCLEdBQUEsRUFBQU0sTUFBQSxZQUFBQSxNQUFBO0FBR3JDLE1BQU07RUFBRVcsb0JBQW9CO0VBQUVDO0FBQWEsQ0FBQyxHQUFHOUIsWUFBWTtBQUFDK0IsT0FBQSxDQUFBRCxZQUFBLEdBQUFBLFlBQUE7QUFBQUMsT0FBQSxDQUFBRixvQkFBQSxHQUFBQSxvQkFBQTtBQUM1RCxNQUFNO0VBQUVHO0FBQWUsQ0FBQyxHQUFHN0IsT0FBTztBQUFDNEIsT0FBQSxDQUFBQyxjQUFBLEdBQUFBLGNBQUE7QUFDbkMsTUFBTTtFQUFFQztBQUFlLENBQUMsR0FBRzdCLE1BQU07QUFBQzJCLE9BQUEsQ0FBQUUsY0FBQSxHQUFBQSxjQUFBO0FBQ2xDLE1BQU07RUFBRUMsWUFBWTtFQUFFQyxvQkFBb0I7RUFBRUM7QUFBYSxDQUFDLEdBQUcvQixTQUFTO0FBQUMwQixPQUFBLENBQUFLLFlBQUEsR0FBQUEsWUFBQTtBQUFBTCxPQUFBLENBQUFJLG9CQUFBLEdBQUFBLG9CQUFBO0FBQUFKLE9BQUEsQ0FBQUcsWUFBQSxHQUFBQSxZQUFBO0FBQ3ZFLE1BQU07RUFBRUcsa0JBQWtCO0VBQUVDO0FBQWUsQ0FBQyxHQUFHaEMsS0FBSztBQUFDeUIsT0FBQSxDQUFBTyxjQUFBLEdBQUFBLGNBQUE7QUFBQVAsT0FBQSxDQUFBTSxrQkFBQSxHQUFBQSxrQkFBQSJ9
|
|
@@ -36,4 +36,4 @@ async function bundleWDASim(xcodebuild, opts = {}) {
|
|
|
36
36
|
await buildWDASim(xcodebuild, opts);
|
|
37
37
|
return wdaBundlePath;
|
|
38
38
|
}
|
|
39
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfc3VwcG9ydCIsInJlcXVpcmUiLCJfbG9kYXNoIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl90ZWVuX3Byb2Nlc3MiLCJfcGF0aCIsIl94Y29kZWJ1aWxkIiwiX2NvbnN0YW50cyIsIl91dGlscyIsIl9sb2dnZXIiLCJidWlsZFdEQVNpbSIsImFyZ3MiLCJwYXRoIiwiam9pbiIsIkJPT1RTVFJBUF9QQVRIIiwiV0RBX1NDSEVNRSIsIlNES19TSU1VTEFUT1IiLCJleGVjIiwiY2hlY2tGb3JEZXBlbmRlbmNpZXMiLCJsb2ciLCJkZWJ1ZyIsImJ1bmRsZVdEQVNpbSIsInhjb2RlYnVpbGQiLCJvcHRzIiwiXyIsImlzRnVuY3Rpb24iLCJyZXRyaWV2ZURlcml2ZWREYXRhUGF0aCIsIlhjb2RlQnVpbGQiLCJkZXJpdmVkRGF0YVBhdGgiLCJ3ZGFCdW5kbGVQYXRoIiwiV0RBX1JVTk5FUl9BUFAiLCJmcyIsImV4aXN0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi9jaGVjay1kZXBlbmRlbmNpZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZnMgfSBmcm9tICdAYXBwaXVtL3N1cHBvcnQnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IGV4ZWMgfSBmcm9tICd0ZWVuX3Byb2Nlc3MnO1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgWGNvZGVCdWlsZCBmcm9tICcuL3hjb2RlYnVpbGQnO1xuaW1wb3J0IHtcbiAgV0RBX1NDSEVNRSwgU0RLX1NJTVVMQVRPUiwgV0RBX1JVTk5FUl9BUFBcbn0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgQk9PVFNUUkFQX1BBVEggfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCBsb2cgZnJvbSAnLi9sb2dnZXInO1xuXG5hc3luYyBmdW5jdGlvbiBidWlsZFdEQVNpbSAoKSB7XG4gIGNvbnN0IGFyZ3MgPSBbXG4gICAgJy1wcm9qZWN0JywgcGF0aC5qb2luKEJPT1RTVFJBUF9QQVRILCAnV2ViRHJpdmVyQWdlbnQueGNvZGVwcm9qJyksXG4gICAgJy1zY2hlbWUnLCBXREFfU0NIRU1FLFxuICAgICctc2RrJywgU0RLX1NJTVVMQVRPUixcbiAgICAnQ09ERV9TSUdOX0lERU5USVRZPVwiXCInLFxuICAgICdDT0RFX1NJR05JTkdfUkVRVUlSRUQ9XCJOT1wiJyxcbiAgICAnR0NDX1RSRUFUX1dBUk5JTkdTX0FTX0VSUk9SUz0wJyxcbiAgXTtcbiAgYXdhaXQgZXhlYygneGNvZGVidWlsZCcsIGFyZ3MpO1xufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVxdWlyZS1hd2FpdFxuYXN5bmMgZnVuY3Rpb24gY2hlY2tGb3JEZXBlbmRlbmNpZXMgKCkge1xuICBsb2cuZGVidWcoJ0RlcGVuZGVuY2llcyBhcmUgdXAgdG8gZGF0ZScpO1xuICByZXR1cm4gZmFsc2U7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGJ1bmRsZVdEQVNpbSAoeGNvZGVidWlsZCwgb3B0cyA9IHt9KSB7XG4gIGlmICh4Y29kZWJ1aWxkICYmICFfLmlzRnVuY3Rpb24oeGNvZGVidWlsZC5yZXRyaWV2ZURlcml2ZWREYXRhUGF0aCkpIHtcbiAgICB4Y29kZWJ1aWxkID0gbmV3IFhjb2RlQnVpbGQoKTtcbiAgICBvcHRzID0geGNvZGVidWlsZDtcbiAgfVxuXG4gIGNvbnN0IGRlcml2ZWREYXRhUGF0aCA9IGF3YWl0IHhjb2RlYnVpbGQucmV0cmlldmVEZXJpdmVkRGF0YVBhdGgoKTtcbiAgY29uc3Qgd2RhQnVuZGxlUGF0aCA9IHBhdGguam9pbihkZXJpdmVkRGF0YVBhdGgsICdCdWlsZCcsICdQcm9kdWN0cycsICdEZWJ1Zy1pcGhvbmVzaW11bGF0b3InLCBXREFfUlVOTkVSX0FQUCk7XG4gIGlmIChhd2FpdCBmcy5leGlzdHMod2RhQnVuZGxlUGF0aCkpIHtcbiAgICByZXR1cm4gd2RhQnVuZGxlUGF0aDtcbiAgfVxuICBhd2FpdCBidWlsZFdEQVNpbSh4Y29kZWJ1aWxkLCBvcHRzKTtcbiAgcmV0dXJuIHdkYUJ1bmRsZVBhdGg7XG59XG5cbmV4cG9ydCB7IGNoZWNrRm9yRGVwZW5kZW5jaWVzLCBidW5kbGVXREFTaW0gfTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsSUFBQUEsUUFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsT0FBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsYUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksS0FBQSxHQUFBRixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUssV0FBQSxHQUFBSCxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQU0sVUFBQSxHQUFBTixPQUFBO0FBR0EsSUFBQU8sTUFBQSxHQUFBUCxPQUFBO0FBQ0EsSUFBQVEsT0FBQSxHQUFBTixzQkFBQSxDQUFBRixPQUFBO0FBRUEsZUFBZVMsV0FBV0EsQ0FBQSxFQUFJO0VBQzVCLE1BQU1DLElBQUksR0FBRyxDQUNYLFVBQVUsRUFBRUMsYUFBSSxDQUFDQyxJQUFJLENBQUNDLHFCQUFjLEVBQUUsMEJBQTBCLENBQUMsRUFDakUsU0FBUyxFQUFFQyxxQkFBVSxFQUNyQixNQUFNLEVBQUVDLHdCQUFhLEVBQ3JCLHVCQUF1QixFQUN2Qiw0QkFBNEIsRUFDNUIsZ0NBQWdDLENBQ2pDO0VBQ0QsTUFBTSxJQUFBQyxrQkFBSSxFQUFDLFlBQVksRUFBRU4sSUFBSSxDQUFDO0FBQ2hDO0FBR0EsZUFBZU8sb0JBQW9CQSxDQUFBLEVBQUk7RUFDckNDLGVBQUcsQ0FBQ0MsS0FBSyxDQUFDLDZCQUE2QixDQUFDO0VBQ3hDLE9BQU8sS0FBSztBQUNkO0FBRUEsZUFBZUMsWUFBWUEsQ0FBRUMsVUFBVSxFQUFFQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLEVBQUU7RUFDbEQsSUFBSUQsVUFBVSxJQUFJLENBQUNFLGVBQUMsQ0FBQ0MsVUFBVSxDQUFDSCxVQUFVLENBQUNJLHVCQUF1QixDQUFDLEVBQUU7SUFDbkVKLFVBQVUsR0FBRyxJQUFJSyxtQkFBVSxFQUFFO0lBQzdCSixJQUFJLEdBQUdELFVBQVU7RUFDbkI7RUFFQSxNQUFNTSxlQUFlLEdBQUcsTUFBTU4sVUFBVSxDQUFDSSx1QkFBdUIsRUFBRTtFQUNsRSxNQUFNRyxhQUFhLEdBQUdqQixhQUFJLENBQUNDLElBQUksQ0FBQ2UsZUFBZSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsdUJBQXVCLEVBQUVFLHlCQUFjLENBQUM7RUFDOUcsSUFBSSxNQUFNQyxXQUFFLENBQUNDLE1BQU0sQ0FBQ0gsYUFBYSxDQUFDLEVBQUU7SUFDbEMsT0FBT0EsYUFBYTtFQUN0QjtFQUNBLE1BQU1uQixXQUFXLENBQUNZLFVBQVUsRUFBRUMsSUFBSSxDQUFDO0VBQ25DLE9BQU9NLGFBQWE7QUFDdEIifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check-dependencies.js","names":["buildWDASim","args","path","join","BOOTSTRAP_PATH","WDA_SCHEME","SDK_SIMULATOR","exec","checkForDependencies","log","debug","bundleWDASim","xcodebuild","opts","_","isFunction","retrieveDerivedDataPath","XcodeBuild","derivedDataPath","wdaBundlePath","WDA_RUNNER_APP","fs","exists"],"sources":["../../lib/check-dependencies.js"],"sourcesContent":["import { fs } from '@appium/support';\nimport _ from 'lodash';\nimport { exec } from 'teen_process';\nimport path from 'path';\nimport XcodeBuild from './xcodebuild';\nimport {\n WDA_SCHEME, SDK_SIMULATOR, WDA_RUNNER_APP\n} from './constants';\nimport { BOOTSTRAP_PATH } from './utils';\nimport log from './logger';\n\nasync function buildWDASim () {\n const args = [\n '-project', path.join(BOOTSTRAP_PATH, 'WebDriverAgent.xcodeproj'),\n '-scheme', WDA_SCHEME,\n '-sdk', SDK_SIMULATOR,\n 'CODE_SIGN_IDENTITY=\"\"',\n 'CODE_SIGNING_REQUIRED=\"NO\"',\n 'GCC_TREAT_WARNINGS_AS_ERRORS=0',\n ];\n await exec('xcodebuild', args);\n}\n\n// eslint-disable-next-line require-await\nasync function checkForDependencies () {\n log.debug('Dependencies are up to date');\n return false;\n}\n\nasync function bundleWDASim (xcodebuild, opts = {}) {\n if (xcodebuild && !_.isFunction(xcodebuild.retrieveDerivedDataPath)) {\n xcodebuild = new XcodeBuild();\n opts = xcodebuild;\n }\n\n const derivedDataPath = await xcodebuild.retrieveDerivedDataPath();\n const wdaBundlePath = path.join(derivedDataPath, 'Build', 'Products', 'Debug-iphonesimulator', WDA_RUNNER_APP);\n if (await fs.exists(wdaBundlePath)) {\n return wdaBundlePath;\n }\n await buildWDASim(xcodebuild, opts);\n return wdaBundlePath;\n}\n\nexport { checkForDependencies, bundleWDASim };\n"],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AAEA,
|
|
1
|
+
{"version":3,"file":"check-dependencies.js","names":["_support","require","_lodash","_interopRequireDefault","_teen_process","_path","_xcodebuild","_constants","_utils","_logger","buildWDASim","args","path","join","BOOTSTRAP_PATH","WDA_SCHEME","SDK_SIMULATOR","exec","checkForDependencies","log","debug","bundleWDASim","xcodebuild","opts","_","isFunction","retrieveDerivedDataPath","XcodeBuild","derivedDataPath","wdaBundlePath","WDA_RUNNER_APP","fs","exists"],"sources":["../../lib/check-dependencies.js"],"sourcesContent":["import { fs } from '@appium/support';\nimport _ from 'lodash';\nimport { exec } from 'teen_process';\nimport path from 'path';\nimport XcodeBuild from './xcodebuild';\nimport {\n WDA_SCHEME, SDK_SIMULATOR, WDA_RUNNER_APP\n} from './constants';\nimport { BOOTSTRAP_PATH } from './utils';\nimport log from './logger';\n\nasync function buildWDASim () {\n const args = [\n '-project', path.join(BOOTSTRAP_PATH, 'WebDriverAgent.xcodeproj'),\n '-scheme', WDA_SCHEME,\n '-sdk', SDK_SIMULATOR,\n 'CODE_SIGN_IDENTITY=\"\"',\n 'CODE_SIGNING_REQUIRED=\"NO\"',\n 'GCC_TREAT_WARNINGS_AS_ERRORS=0',\n ];\n await exec('xcodebuild', args);\n}\n\n// eslint-disable-next-line require-await\nasync function checkForDependencies () {\n log.debug('Dependencies are up to date');\n return false;\n}\n\nasync function bundleWDASim (xcodebuild, opts = {}) {\n if (xcodebuild && !_.isFunction(xcodebuild.retrieveDerivedDataPath)) {\n xcodebuild = new XcodeBuild();\n opts = xcodebuild;\n }\n\n const derivedDataPath = await xcodebuild.retrieveDerivedDataPath();\n const wdaBundlePath = path.join(derivedDataPath, 'Build', 'Products', 'Debug-iphonesimulator', WDA_RUNNER_APP);\n if (await fs.exists(wdaBundlePath)) {\n return wdaBundlePath;\n }\n await buildWDASim(xcodebuild, opts);\n return wdaBundlePath;\n}\n\nexport { checkForDependencies, bundleWDASim };\n"],"mappings":";;;;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,KAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,WAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,UAAA,GAAAN,OAAA;AAGA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,OAAA,GAAAN,sBAAA,CAAAF,OAAA;AAEA,eAAeS,WAAWA,CAAA,EAAI;EAC5B,MAAMC,IAAI,GAAG,CACX,UAAU,EAAEC,aAAI,CAACC,IAAI,CAACC,qBAAc,EAAE,0BAA0B,CAAC,EACjE,SAAS,EAAEC,qBAAU,EACrB,MAAM,EAAEC,wBAAa,EACrB,uBAAuB,EACvB,4BAA4B,EAC5B,gCAAgC,CACjC;EACD,MAAM,IAAAC,kBAAI,EAAC,YAAY,EAAEN,IAAI,CAAC;AAChC;AAGA,eAAeO,oBAAoBA,CAAA,EAAI;EACrCC,eAAG,CAACC,KAAK,CAAC,6BAA6B,CAAC;EACxC,OAAO,KAAK;AACd;AAEA,eAAeC,YAAYA,CAAEC,UAAU,EAAEC,IAAI,GAAG,CAAC,CAAC,EAAE;EAClD,IAAID,UAAU,IAAI,CAACE,eAAC,CAACC,UAAU,CAACH,UAAU,CAACI,uBAAuB,CAAC,EAAE;IACnEJ,UAAU,GAAG,IAAIK,mBAAU,EAAE;IAC7BJ,IAAI,GAAGD,UAAU;EACnB;EAEA,MAAMM,eAAe,GAAG,MAAMN,UAAU,CAACI,uBAAuB,EAAE;EAClE,MAAMG,aAAa,GAAGjB,aAAI,CAACC,IAAI,CAACe,eAAe,EAAE,OAAO,EAAE,UAAU,EAAE,uBAAuB,EAAEE,yBAAc,CAAC;EAC9G,IAAI,MAAMC,WAAE,CAACC,MAAM,CAACH,aAAa,CAAC,EAAE;IAClC,OAAOA,aAAa;EACtB;EACA,MAAMnB,WAAW,CAACY,UAAU,EAAEC,IAAI,CAAC;EACnC,OAAOM,aAAa;AACtB"}
|
package/build/lib/constants.js
CHANGED
|
@@ -27,4 +27,4 @@ const SDK_DEVICE = 'iphoneos';
|
|
|
27
27
|
exports.SDK_DEVICE = SDK_DEVICE;
|
|
28
28
|
const WDA_UPGRADE_TIMESTAMP_PATH = _path.default.join('.appium', 'webdriveragent', 'upgrade.time');
|
|
29
29
|
exports.WDA_UPGRADE_TIMESTAMP_PATH = WDA_UPGRADE_TIMESTAMP_PATH;
|
|
30
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcGF0aCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiV0RBX1JVTk5FUl9CVU5ETEVfSUQiLCJleHBvcnRzIiwiV0RBX1JVTk5FUl9BUFAiLCJXREFfU0NIRU1FIiwiUFJPSkVDVF9GSUxFIiwiV0RBX0JBU0VfVVJMIiwiUExBVEZPUk1fTkFNRV9UVk9TIiwiUExBVEZPUk1fTkFNRV9JT1MiLCJTREtfU0lNVUxBVE9SIiwiU0RLX0RFVklDRSIsIldEQV9VUEdSQURFX1RJTUVTVEFNUF9QQVRIIiwicGF0aCIsImpvaW4iXSwic291cmNlcyI6WyIuLi8uLi9saWIvY29uc3RhbnRzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gJ3BhdGgnO1xuXG5jb25zdCBXREFfUlVOTkVSX0JVTkRMRV9JRCA9ICdjb20uZmFjZWJvb2suV2ViRHJpdmVyQWdlbnRSdW5uZXInO1xuY29uc3QgV0RBX1JVTk5FUl9BUFAgPSAnV2ViRHJpdmVyQWdlbnRSdW5uZXItUnVubmVyLmFwcCc7XG5jb25zdCBXREFfU0NIRU1FID0gJ1dlYkRyaXZlckFnZW50UnVubmVyJztcbmNvbnN0IFBST0pFQ1RfRklMRSA9ICdwcm9qZWN0LnBieHByb2onO1xuY29uc3QgV0RBX0JBU0VfVVJMID0gJ2h0dHA6Ly8xMjcuMC4wLjEnO1xuXG5jb25zdCBQTEFURk9STV9OQU1FX1RWT1MgPSAndHZPUyc7XG5jb25zdCBQTEFURk9STV9OQU1FX0lPUyA9ICdpT1MnO1xuXG5jb25zdCBTREtfU0lNVUxBVE9SID0gJ2lwaG9uZXNpbXVsYXRvcic7XG5jb25zdCBTREtfREVWSUNFID0gJ2lwaG9uZW9zJztcblxuY29uc3QgV0RBX1VQR1JBREVfVElNRVNUQU1QX1BBVEggPSBwYXRoLmpvaW4oJy5hcHBpdW0nLCAnd2ViZHJpdmVyYWdlbnQnLCAndXBncmFkZS50aW1lJyk7XG5cbmV4cG9ydCB7XG4gIFdEQV9SVU5ORVJfQlVORExFX0lELCBXREFfUlVOTkVSX0FQUCwgUFJPSkVDVF9GSUxFLFxuICBXREFfU0NIRU1FLCBQTEFURk9STV9OQU1FX1RWT1MsIFBMQVRGT1JNX05BTUVfSU9TLFxuICBTREtfU0lNVUxBVE9SLCBTREtfREVWSUNFLCBXREFfQkFTRV9VUkwsIFdEQV9VUEdSQURFX1RJTUVTVEFNUF9QQVRIXG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLEtBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUVBLE1BQU1DLG9CQUFvQixHQUFHLG1DQUFtQztBQUFDQyxPQUFBLENBQUFELG9CQUFBLEdBQUFBLG9CQUFBO0FBQ2pFLE1BQU1FLGNBQWMsR0FBRyxpQ0FBaUM7QUFBQ0QsT0FBQSxDQUFBQyxjQUFBLEdBQUFBLGNBQUE7QUFDekQsTUFBTUMsVUFBVSxHQUFHLHNCQUFzQjtBQUFDRixPQUFBLENBQUFFLFVBQUEsR0FBQUEsVUFBQTtBQUMxQyxNQUFNQyxZQUFZLEdBQUcsaUJBQWlCO0FBQUNILE9BQUEsQ0FBQUcsWUFBQSxHQUFBQSxZQUFBO0FBQ3ZDLE1BQU1DLFlBQVksR0FBRyxrQkFBa0I7QUFBQ0osT0FBQSxDQUFBSSxZQUFBLEdBQUFBLFlBQUE7QUFFeEMsTUFBTUMsa0JBQWtCLEdBQUcsTUFBTTtBQUFDTCxPQUFBLENBQUFLLGtCQUFBLEdBQUFBLGtCQUFBO0FBQ2xDLE1BQU1DLGlCQUFpQixHQUFHLEtBQUs7QUFBQ04sT0FBQSxDQUFBTSxpQkFBQSxHQUFBQSxpQkFBQTtBQUVoQyxNQUFNQyxhQUFhLEdBQUcsaUJBQWlCO0FBQUNQLE9BQUEsQ0FBQU8sYUFBQSxHQUFBQSxhQUFBO0FBQ3hDLE1BQU1DLFVBQVUsR0FBRyxVQUFVO0FBQUNSLE9BQUEsQ0FBQVEsVUFBQSxHQUFBQSxVQUFBO0FBRTlCLE1BQU1DLDBCQUEwQixHQUFHQyxhQUFJLENBQUNDLElBQUksQ0FBQyxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsY0FBYyxDQUFDO0FBQUNYLE9BQUEsQ0FBQVMsMEJBQUEsR0FBQUEsMEJBQUEifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","names":["WDA_RUNNER_BUNDLE_ID","WDA_RUNNER_APP","WDA_SCHEME","PROJECT_FILE","WDA_BASE_URL","PLATFORM_NAME_TVOS","PLATFORM_NAME_IOS","SDK_SIMULATOR","SDK_DEVICE","WDA_UPGRADE_TIMESTAMP_PATH","path","join"],"sources":["../../lib/constants.js"],"sourcesContent":["import path from 'path';\n\nconst WDA_RUNNER_BUNDLE_ID = 'com.facebook.WebDriverAgentRunner';\nconst WDA_RUNNER_APP = 'WebDriverAgentRunner-Runner.app';\nconst WDA_SCHEME = 'WebDriverAgentRunner';\nconst PROJECT_FILE = 'project.pbxproj';\nconst WDA_BASE_URL = 'http://127.0.0.1';\n\nconst PLATFORM_NAME_TVOS = 'tvOS';\nconst PLATFORM_NAME_IOS = 'iOS';\n\nconst SDK_SIMULATOR = 'iphonesimulator';\nconst SDK_DEVICE = 'iphoneos';\n\nconst WDA_UPGRADE_TIMESTAMP_PATH = path.join('.appium', 'webdriveragent', 'upgrade.time');\n\nexport {\n WDA_RUNNER_BUNDLE_ID, WDA_RUNNER_APP, PROJECT_FILE,\n WDA_SCHEME, PLATFORM_NAME_TVOS, PLATFORM_NAME_IOS,\n SDK_SIMULATOR, SDK_DEVICE, WDA_BASE_URL, WDA_UPGRADE_TIMESTAMP_PATH\n};\n"],"mappings":";;;;;;;;AAAA;AAEA,
|
|
1
|
+
{"version":3,"file":"constants.js","names":["_path","_interopRequireDefault","require","WDA_RUNNER_BUNDLE_ID","exports","WDA_RUNNER_APP","WDA_SCHEME","PROJECT_FILE","WDA_BASE_URL","PLATFORM_NAME_TVOS","PLATFORM_NAME_IOS","SDK_SIMULATOR","SDK_DEVICE","WDA_UPGRADE_TIMESTAMP_PATH","path","join"],"sources":["../../lib/constants.js"],"sourcesContent":["import path from 'path';\n\nconst WDA_RUNNER_BUNDLE_ID = 'com.facebook.WebDriverAgentRunner';\nconst WDA_RUNNER_APP = 'WebDriverAgentRunner-Runner.app';\nconst WDA_SCHEME = 'WebDriverAgentRunner';\nconst PROJECT_FILE = 'project.pbxproj';\nconst WDA_BASE_URL = 'http://127.0.0.1';\n\nconst PLATFORM_NAME_TVOS = 'tvOS';\nconst PLATFORM_NAME_IOS = 'iOS';\n\nconst SDK_SIMULATOR = 'iphonesimulator';\nconst SDK_DEVICE = 'iphoneos';\n\nconst WDA_UPGRADE_TIMESTAMP_PATH = path.join('.appium', 'webdriveragent', 'upgrade.time');\n\nexport {\n WDA_RUNNER_BUNDLE_ID, WDA_RUNNER_APP, PROJECT_FILE,\n WDA_SCHEME, PLATFORM_NAME_TVOS, PLATFORM_NAME_IOS,\n SDK_SIMULATOR, SDK_DEVICE, WDA_BASE_URL, WDA_UPGRADE_TIMESTAMP_PATH\n};\n"],"mappings":";;;;;;;;AAAA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,MAAMC,oBAAoB,GAAG,mCAAmC;AAACC,OAAA,CAAAD,oBAAA,GAAAA,oBAAA;AACjE,MAAME,cAAc,GAAG,iCAAiC;AAACD,OAAA,CAAAC,cAAA,GAAAA,cAAA;AACzD,MAAMC,UAAU,GAAG,sBAAsB;AAACF,OAAA,CAAAE,UAAA,GAAAA,UAAA;AAC1C,MAAMC,YAAY,GAAG,iBAAiB;AAACH,OAAA,CAAAG,YAAA,GAAAA,YAAA;AACvC,MAAMC,YAAY,GAAG,kBAAkB;AAACJ,OAAA,CAAAI,YAAA,GAAAA,YAAA;AAExC,MAAMC,kBAAkB,GAAG,MAAM;AAACL,OAAA,CAAAK,kBAAA,GAAAA,kBAAA;AAClC,MAAMC,iBAAiB,GAAG,KAAK;AAACN,OAAA,CAAAM,iBAAA,GAAAA,iBAAA;AAEhC,MAAMC,aAAa,GAAG,iBAAiB;AAACP,OAAA,CAAAO,aAAA,GAAAA,aAAA;AACxC,MAAMC,UAAU,GAAG,UAAU;AAACR,OAAA,CAAAQ,UAAA,GAAAA,UAAA;AAE9B,MAAMC,0BAA0B,GAAGC,aAAI,CAACC,IAAI,CAAC,SAAS,EAAE,gBAAgB,EAAE,cAAc,CAAC;AAACX,OAAA,CAAAS,0BAAA,GAAAA,0BAAA"}
|
package/build/lib/logger.js
CHANGED
|
@@ -9,4 +9,4 @@ var _support = require("@appium/support");
|
|
|
9
9
|
const log = _support.logger.getLogger('WebDriverAgent');
|
|
10
10
|
var _default = log;
|
|
11
11
|
exports.default = _default;
|
|
12
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
12
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfc3VwcG9ydCIsInJlcXVpcmUiLCJsb2ciLCJsb2dnZXIiLCJnZXRMb2dnZXIiLCJfZGVmYXVsdCIsImV4cG9ydHMiLCJkZWZhdWx0Il0sInNvdXJjZXMiOlsiLi4vLi4vbGliL2xvZ2dlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBsb2dnZXIgfSBmcm9tICdAYXBwaXVtL3N1cHBvcnQnO1xuXG5jb25zdCBsb2cgPSBsb2dnZXIuZ2V0TG9nZ2VyKCdXZWJEcml2ZXJBZ2VudCcpO1xuXG5leHBvcnQgZGVmYXVsdCBsb2c7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJQUFBQSxRQUFBLEdBQUFDLE9BQUE7QUFFQSxNQUFNQyxHQUFHLEdBQUdDLGVBQU0sQ0FBQ0MsU0FBUyxDQUFDLGdCQUFnQixDQUFDO0FBQUMsSUFBQUMsUUFBQSxHQUVoQ0gsR0FBRztBQUFBSSxPQUFBLENBQUFDLE9BQUEsR0FBQUYsUUFBQSJ9
|
package/build/lib/logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","names":["log","logger","getLogger"],"sources":["../../lib/logger.js"],"sourcesContent":["import { logger } from '@appium/support';\n\nconst log = logger.getLogger('WebDriverAgent');\n\nexport default log;\n"],"mappings":";;;;;;;AAAA;AAEA,
|
|
1
|
+
{"version":3,"file":"logger.js","names":["_support","require","log","logger","getLogger","_default","exports","default"],"sources":["../../lib/logger.js"],"sourcesContent":["import { logger } from '@appium/support';\n\nconst log = logger.getLogger('WebDriverAgent');\n\nexport default log;\n"],"mappings":";;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAEA,MAAMC,GAAG,GAAGC,eAAM,CAACC,SAAS,CAAC,gBAAgB,CAAC;AAAC,IAAAC,QAAA,GAEhCH,GAAG;AAAAI,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
|
|
@@ -28,4 +28,4 @@ class NoSessionProxy extends _baseDriver.JWProxy {
|
|
|
28
28
|
exports.NoSessionProxy = NoSessionProxy;
|
|
29
29
|
var _default = NoSessionProxy;
|
|
30
30
|
exports.default = _default;
|
|
31
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYmFzZURyaXZlciIsInJlcXVpcmUiLCJOb1Nlc3Npb25Qcm94eSIsIkpXUHJveHkiLCJjb25zdHJ1Y3RvciIsIm9wdHMiLCJnZXRVcmxGb3JQcm94eSIsInVybCIsInByb3h5QmFzZSIsInNjaGVtZSIsInNlcnZlciIsInBvcnQiLCJiYXNlIiwicmVtYWluaW5nVXJsIiwiUmVnRXhwIiwidGVzdCIsIkVycm9yIiwicmVwbGFjZSIsImV4cG9ydHMiLCJfZGVmYXVsdCIsImRlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi9saWIvbm8tc2Vzc2lvbi1wcm94eS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBKV1Byb3h5IH0gZnJvbSAnQGFwcGl1bS9iYXNlLWRyaXZlcic7XG5cblxuY2xhc3MgTm9TZXNzaW9uUHJveHkgZXh0ZW5kcyBKV1Byb3h5IHtcbiAgY29uc3RydWN0b3IgKG9wdHMgPSB7fSkge1xuICAgIHN1cGVyKG9wdHMpO1xuICB9XG5cbiAgZ2V0VXJsRm9yUHJveHkgKHVybCkge1xuICAgIGlmICh1cmwgPT09ICcnKSB7XG4gICAgICB1cmwgPSAnLyc7XG4gICAgfVxuICAgIGNvbnN0IHByb3h5QmFzZSA9IGAke3RoaXMuc2NoZW1lfTovLyR7dGhpcy5zZXJ2ZXJ9OiR7dGhpcy5wb3J0fSR7dGhpcy5iYXNlfWA7XG4gICAgbGV0IHJlbWFpbmluZ1VybCA9ICcnO1xuICAgIGlmICgobmV3IFJlZ0V4cCgnXi8nKSkudGVzdCh1cmwpKSB7XG4gICAgICByZW1haW5pbmdVcmwgPSB1cmw7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgRGlkIG5vdCBrbm93IHdoYXQgdG8gZG8gd2l0aCB1cmwgJyR7dXJsfSdgKTtcbiAgICB9XG4gICAgcmVtYWluaW5nVXJsID0gcmVtYWluaW5nVXJsLnJlcGxhY2UoL1xcLyQvLCAnJyk7IC8vIGNhbid0IGhhdmUgdHJhaWxpbmcgc2xhc2hlc1xuICAgIHJldHVybiBwcm94eUJhc2UgKyByZW1haW5pbmdVcmw7XG4gIH1cbn1cblxuZXhwb3J0IHsgTm9TZXNzaW9uUHJveHkgfTtcbmV4cG9ydCBkZWZhdWx0IE5vU2Vzc2lvblByb3h5O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsV0FBQSxHQUFBQyxPQUFBO0FBR0EsTUFBTUMsY0FBYyxTQUFTQyxtQkFBTyxDQUFDO0VBQ25DQyxXQUFXQSxDQUFFQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLEVBQUU7SUFDdEIsS0FBSyxDQUFDQSxJQUFJLENBQUM7RUFDYjtFQUVBQyxjQUFjQSxDQUFFQyxHQUFHLEVBQUU7SUFDbkIsSUFBSUEsR0FBRyxLQUFLLEVBQUUsRUFBRTtNQUNkQSxHQUFHLEdBQUcsR0FBRztJQUNYO0lBQ0EsTUFBTUMsU0FBUyxHQUFJLEdBQUUsSUFBSSxDQUFDQyxNQUFPLE1BQUssSUFBSSxDQUFDQyxNQUFPLElBQUcsSUFBSSxDQUFDQyxJQUFLLEdBQUUsSUFBSSxDQUFDQyxJQUFLLEVBQUM7SUFDNUUsSUFBSUMsWUFBWSxHQUFHLEVBQUU7SUFDckIsSUFBSyxJQUFJQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUVDLElBQUksQ0FBQ1IsR0FBRyxDQUFDLEVBQUU7TUFDaENNLFlBQVksR0FBR04sR0FBRztJQUNwQixDQUFDLE1BQU07TUFDTCxNQUFNLElBQUlTLEtBQUssQ0FBRSxxQ0FBb0NULEdBQUksR0FBRSxDQUFDO0lBQzlEO0lBQ0FNLFlBQVksR0FBR0EsWUFBWSxDQUFDSSxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQztJQUM5QyxPQUFPVCxTQUFTLEdBQUdLLFlBQVk7RUFDakM7QUFDRjtBQUFDSyxPQUFBLENBQUFoQixjQUFBLEdBQUFBLGNBQUE7QUFBQSxJQUFBaUIsUUFBQSxHQUdjakIsY0FBYztBQUFBZ0IsT0FBQSxDQUFBRSxPQUFBLEdBQUFELFFBQUEifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"no-session-proxy.js","names":["NoSessionProxy","JWProxy","constructor","opts","getUrlForProxy","url","proxyBase","scheme","server","port","base","remainingUrl","RegExp","test","Error","replace"],"sources":["../../lib/no-session-proxy.js"],"sourcesContent":["import { JWProxy } from '@appium/base-driver';\n\n\nclass NoSessionProxy extends JWProxy {\n constructor (opts = {}) {\n super(opts);\n }\n\n getUrlForProxy (url) {\n if (url === '') {\n url = '/';\n }\n const proxyBase = `${this.scheme}://${this.server}:${this.port}${this.base}`;\n let remainingUrl = '';\n if ((new RegExp('^/')).test(url)) {\n remainingUrl = url;\n } else {\n throw new Error(`Did not know what to do with url '${url}'`);\n }\n remainingUrl = remainingUrl.replace(/\\/$/, ''); // can't have trailing slashes\n return proxyBase + remainingUrl;\n }\n}\n\nexport { NoSessionProxy };\nexport default NoSessionProxy;\n"],"mappings":";;;;;;;AAAA;AAGA,
|
|
1
|
+
{"version":3,"file":"no-session-proxy.js","names":["_baseDriver","require","NoSessionProxy","JWProxy","constructor","opts","getUrlForProxy","url","proxyBase","scheme","server","port","base","remainingUrl","RegExp","test","Error","replace","exports","_default","default"],"sources":["../../lib/no-session-proxy.js"],"sourcesContent":["import { JWProxy } from '@appium/base-driver';\n\n\nclass NoSessionProxy extends JWProxy {\n constructor (opts = {}) {\n super(opts);\n }\n\n getUrlForProxy (url) {\n if (url === '') {\n url = '/';\n }\n const proxyBase = `${this.scheme}://${this.server}:${this.port}${this.base}`;\n let remainingUrl = '';\n if ((new RegExp('^/')).test(url)) {\n remainingUrl = url;\n } else {\n throw new Error(`Did not know what to do with url '${url}'`);\n }\n remainingUrl = remainingUrl.replace(/\\/$/, ''); // can't have trailing slashes\n return proxyBase + remainingUrl;\n }\n}\n\nexport { NoSessionProxy };\nexport default NoSessionProxy;\n"],"mappings":";;;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAGA,MAAMC,cAAc,SAASC,mBAAO,CAAC;EACnCC,WAAWA,CAAEC,IAAI,GAAG,CAAC,CAAC,EAAE;IACtB,KAAK,CAACA,IAAI,CAAC;EACb;EAEAC,cAAcA,CAAEC,GAAG,EAAE;IACnB,IAAIA,GAAG,KAAK,EAAE,EAAE;MACdA,GAAG,GAAG,GAAG;IACX;IACA,MAAMC,SAAS,GAAI,GAAE,IAAI,CAACC,MAAO,MAAK,IAAI,CAACC,MAAO,IAAG,IAAI,CAACC,IAAK,GAAE,IAAI,CAACC,IAAK,EAAC;IAC5E,IAAIC,YAAY,GAAG,EAAE;IACrB,IAAK,IAAIC,MAAM,CAAC,IAAI,CAAC,CAAEC,IAAI,CAACR,GAAG,CAAC,EAAE;MAChCM,YAAY,GAAGN,GAAG;IACpB,CAAC,MAAM;MACL,MAAM,IAAIS,KAAK,CAAE,qCAAoCT,GAAI,GAAE,CAAC;IAC9D;IACAM,YAAY,GAAGA,YAAY,CAACI,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;IAC9C,OAAOT,SAAS,GAAGK,YAAY;EACjC;AACF;AAACK,OAAA,CAAAhB,cAAA,GAAAA,cAAA;AAAA,IAAAiB,QAAA,GAGcjB,cAAc;AAAAgB,OAAA,CAAAE,OAAA,GAAAD,QAAA"}
|