appium-webdriveragent 16.6.0 → 16.7.0

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 (50) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/WebDriverAgent.xcodeproj/project.pbxproj +45 -303
  3. package/WebDriverAgentLib/Info.plist +2 -2
  4. package/WebDriverAgentLib/Routing/{WatchOS/FBWatchHTTPServer.h → FBHTTPServer.h} +11 -7
  5. package/WebDriverAgentLib/Routing/{WatchOS/FBWatchHTTPServer.m → FBHTTPServer.m} +26 -13
  6. package/WebDriverAgentLib/Routing/FBTCPSocket.h +10 -45
  7. package/WebDriverAgentLib/Routing/FBTCPSocket.m +12 -94
  8. package/WebDriverAgentLib/Routing/FBWebServer.h +1 -1
  9. package/WebDriverAgentLib/Routing/FBWebServer.m +4 -49
  10. package/WebDriverAgentLib/Routing/{WatchOS/RouteRequest.h → RouteRequest.h} +2 -4
  11. package/WebDriverAgentLib/Routing/{WatchOS/RouteResponse.h → RouteResponse.h} +2 -2
  12. package/WebDriverAgentLib/Utilities/FBMjpegServer.h +3 -5
  13. package/WebDriverAgentLib/Utilities/FBMjpegServer.m +1 -66
  14. package/package.json +1 -1
  15. package/WebDriverAgentLib/Vendor/CocoaAsyncSocket/GCDAsyncSocket.h +0 -1220
  16. package/WebDriverAgentLib/Vendor/CocoaAsyncSocket/GCDAsyncSocket.m +0 -8786
  17. package/WebDriverAgentLib/Vendor/CocoaAsyncSocket/GCDAsyncUdpSocket.h +0 -1036
  18. package/WebDriverAgentLib/Vendor/CocoaAsyncSocket/GCDAsyncUdpSocket.m +0 -5868
  19. package/WebDriverAgentLib/Vendor/CocoaHTTPServer/Categories/DDNumber.h +0 -12
  20. package/WebDriverAgentLib/Vendor/CocoaHTTPServer/Categories/DDNumber.m +0 -88
  21. package/WebDriverAgentLib/Vendor/CocoaHTTPServer/Categories/DDRange.h +0 -56
  22. package/WebDriverAgentLib/Vendor/CocoaHTTPServer/Categories/DDRange.m +0 -100
  23. package/WebDriverAgentLib/Vendor/CocoaHTTPServer/HTTPConnection.h +0 -109
  24. package/WebDriverAgentLib/Vendor/CocoaHTTPServer/HTTPConnection.m +0 -2281
  25. package/WebDriverAgentLib/Vendor/CocoaHTTPServer/HTTPLogging.h +0 -122
  26. package/WebDriverAgentLib/Vendor/CocoaHTTPServer/HTTPMessage.h +0 -53
  27. package/WebDriverAgentLib/Vendor/CocoaHTTPServer/HTTPMessage.m +0 -357
  28. package/WebDriverAgentLib/Vendor/CocoaHTTPServer/HTTPResponse.h +0 -149
  29. package/WebDriverAgentLib/Vendor/CocoaHTTPServer/HTTPServer.h +0 -126
  30. package/WebDriverAgentLib/Vendor/CocoaHTTPServer/HTTPServer.m +0 -372
  31. package/WebDriverAgentLib/Vendor/CocoaHTTPServer/LICENSE +0 -18
  32. package/WebDriverAgentLib/Vendor/CocoaHTTPServer/Responses/HTTPDataResponse.h +0 -13
  33. package/WebDriverAgentLib/Vendor/CocoaHTTPServer/Responses/HTTPDataResponse.m +0 -83
  34. package/WebDriverAgentLib/Vendor/CocoaHTTPServer/Responses/HTTPErrorResponse.h +0 -9
  35. package/WebDriverAgentLib/Vendor/CocoaHTTPServer/Responses/HTTPErrorResponse.m +0 -38
  36. package/WebDriverAgentLib/Vendor/RoutingHTTPServer/HTTPResponseProxy.h +0 -13
  37. package/WebDriverAgentLib/Vendor/RoutingHTTPServer/HTTPResponseProxy.m +0 -84
  38. package/WebDriverAgentLib/Vendor/RoutingHTTPServer/LICENSE +0 -19
  39. package/WebDriverAgentLib/Vendor/RoutingHTTPServer/Route.h +0 -18
  40. package/WebDriverAgentLib/Vendor/RoutingHTTPServer/Route.m +0 -11
  41. package/WebDriverAgentLib/Vendor/RoutingHTTPServer/RouteRequest.h +0 -16
  42. package/WebDriverAgentLib/Vendor/RoutingHTTPServer/RouteRequest.m +0 -50
  43. package/WebDriverAgentLib/Vendor/RoutingHTTPServer/RouteResponse.h +0 -20
  44. package/WebDriverAgentLib/Vendor/RoutingHTTPServer/RouteResponse.m +0 -66
  45. package/WebDriverAgentLib/Vendor/RoutingHTTPServer/RoutingConnection.h +0 -5
  46. package/WebDriverAgentLib/Vendor/RoutingHTTPServer/RoutingConnection.m +0 -142
  47. package/WebDriverAgentLib/Vendor/RoutingHTTPServer/RoutingHTTPServer.h +0 -55
  48. package/WebDriverAgentLib/Vendor/RoutingHTTPServer/RoutingHTTPServer.m +0 -303
  49. /package/WebDriverAgentLib/Routing/{WatchOS/RouteRequest.m → RouteRequest.m} +0 -0
  50. /package/WebDriverAgentLib/Routing/{WatchOS/RouteResponse.m → RouteResponse.m} +0 -0
@@ -1,12 +0,0 @@
1
- #import <Foundation/Foundation.h>
2
-
3
-
4
- @interface NSNumber (DDNumber)
5
-
6
- + (BOOL)parseString:(NSString *)str intoSInt64:(SInt64 *)pNum;
7
- + (BOOL)parseString:(NSString *)str intoUInt64:(UInt64 *)pNum;
8
-
9
- + (BOOL)parseString:(NSString *)str intoNSInteger:(NSInteger *)pNum;
10
- + (BOOL)parseString:(NSString *)str intoNSUInteger:(NSUInteger *)pNum;
11
-
12
- @end
@@ -1,88 +0,0 @@
1
- #import "DDNumber.h"
2
-
3
-
4
- @implementation NSNumber (DDNumber)
5
-
6
- + (BOOL)parseString:(NSString *)str intoSInt64:(SInt64 *)pNum
7
- {
8
- if(str == nil)
9
- {
10
- *pNum = 0;
11
- return NO;
12
- }
13
-
14
- errno = 0;
15
-
16
- // On both 32-bit and 64-bit machines, long long = 64 bit
17
-
18
- *pNum = strtoll([str UTF8String], NULL, 10);
19
-
20
- if(errno != 0)
21
- return NO;
22
- else
23
- return YES;
24
- }
25
-
26
- + (BOOL)parseString:(NSString *)str intoUInt64:(UInt64 *)pNum
27
- {
28
- if(str == nil)
29
- {
30
- *pNum = 0;
31
- return NO;
32
- }
33
-
34
- errno = 0;
35
-
36
- // On both 32-bit and 64-bit machines, unsigned long long = 64 bit
37
-
38
- *pNum = strtoull([str UTF8String], NULL, 10);
39
-
40
- if(errno != 0)
41
- return NO;
42
- else
43
- return YES;
44
- }
45
-
46
- + (BOOL)parseString:(NSString *)str intoNSInteger:(NSInteger *)pNum
47
- {
48
- if(str == nil)
49
- {
50
- *pNum = 0;
51
- return NO;
52
- }
53
-
54
- errno = 0;
55
-
56
- // On LP64, NSInteger = long = 64 bit
57
- // Otherwise, NSInteger = int = long = 32 bit
58
-
59
- *pNum = strtol([str UTF8String], NULL, 10);
60
-
61
- if(errno != 0)
62
- return NO;
63
- else
64
- return YES;
65
- }
66
-
67
- + (BOOL)parseString:(NSString *)str intoNSUInteger:(NSUInteger *)pNum
68
- {
69
- if(str == nil)
70
- {
71
- *pNum = 0;
72
- return NO;
73
- }
74
-
75
- errno = 0;
76
-
77
- // On LP64, NSUInteger = unsigned long = 64 bit
78
- // Otherwise, NSUInteger = unsigned int = unsigned long = 32 bit
79
-
80
- *pNum = strtoul([str UTF8String], NULL, 10);
81
-
82
- if(errno != 0)
83
- return NO;
84
- else
85
- return YES;
86
- }
87
-
88
- @end
@@ -1,56 +0,0 @@
1
- /**
2
- * DDRange is the functional equivalent of a 64 bit NSRange.
3
- * The HTTP Server is designed to support very large files.
4
- * On 32 bit architectures (ppc, i386) NSRange uses unsigned 32 bit integers.
5
- * This only supports a range of up to 4 gigabytes.
6
- * By defining our own variant, we can support a range up to 16 exabytes.
7
- *
8
- * All effort is given such that DDRange functions EXACTLY the same as NSRange.
9
- **/
10
-
11
- #import <Foundation/NSValue.h>
12
- #import <Foundation/NSObjCRuntime.h>
13
-
14
- @class NSString;
15
-
16
- typedef struct _DDRange {
17
- UInt64 location;
18
- UInt64 length;
19
- } DDRange;
20
-
21
- typedef DDRange *DDRangePointer;
22
-
23
- NS_INLINE DDRange DDMakeRange(UInt64 loc, UInt64 len) {
24
- DDRange r;
25
- r.location = loc;
26
- r.length = len;
27
- return r;
28
- }
29
-
30
- NS_INLINE UInt64 DDMaxRange(DDRange range) {
31
- return (range.location + range.length);
32
- }
33
-
34
- NS_INLINE BOOL DDLocationInRange(UInt64 loc, DDRange range) {
35
- return (loc - range.location < range.length);
36
- }
37
-
38
- NS_INLINE BOOL DDEqualRanges(DDRange range1, DDRange range2) {
39
- return ((range1.location == range2.location) && (range1.length == range2.length));
40
- }
41
-
42
- FOUNDATION_EXPORT DDRange DDUnionRange(DDRange range1, DDRange range2);
43
- FOUNDATION_EXPORT DDRange DDIntersectionRange(DDRange range1, DDRange range2);
44
- FOUNDATION_EXPORT NSString *DDStringFromRange(DDRange range);
45
- FOUNDATION_EXPORT DDRange DDRangeFromString(NSString *aString);
46
-
47
- NSInteger DDRangeCompare(DDRangePointer pDDRange1, DDRangePointer pDDRange2);
48
-
49
- @interface NSValue (NSValueDDRangeExtensions)
50
-
51
- + (NSValue *)valueWithDDRange:(DDRange)range;
52
- - (DDRange)ddrangeValue;
53
-
54
- - (NSInteger)ddrangeCompare:(NSValue *)ddrangeValue;
55
-
56
- @end
@@ -1,100 +0,0 @@
1
- #import "DDRange.h"
2
- #import "DDNumber.h"
3
-
4
- #pragma clang diagnostic ignored "-Wformat-non-iso"
5
-
6
- DDRange DDUnionRange(DDRange range1, DDRange range2)
7
- {
8
- UInt64 location = MIN(range1.location, range2.location);
9
- UInt64 length = MAX(DDMaxRange(range1), DDMaxRange(range2)) - location;
10
-
11
- return DDMakeRange(location, length);
12
- }
13
-
14
- DDRange DDIntersectionRange(DDRange range1, DDRange range2)
15
- {
16
- if((DDMaxRange(range1) < range2.location) || (DDMaxRange(range2) < range1.location))
17
- {
18
- return DDMakeRange(0, 0);
19
- }
20
-
21
- return DDMakeRange(MAX(range1.location, range2.location),
22
- MIN(DDMaxRange(range1), DDMaxRange(range2)) - MAX(range1.location, range2.location));
23
- }
24
-
25
- NSString *DDStringFromRange(DDRange range)
26
- {
27
- return [NSString stringWithFormat:@"{%qu, %qu}", range.location, range.length];
28
- }
29
-
30
- DDRange DDRangeFromString(NSString *aString)
31
- {
32
- DDRange result = DDMakeRange(0, 0);
33
-
34
- // NSRange will ignore '-' characters, but not '+' characters
35
- NSCharacterSet *cset = [NSCharacterSet characterSetWithCharactersInString:@"+0123456789"];
36
-
37
- NSScanner *scanner = [NSScanner scannerWithString:aString];
38
- [scanner setCharactersToBeSkipped:[cset invertedSet]];
39
-
40
- NSString *str1 = nil;
41
- NSString *str2 = nil;
42
-
43
- BOOL found1 = [scanner scanCharactersFromSet:cset intoString:&str1];
44
- BOOL found2 = [scanner scanCharactersFromSet:cset intoString:&str2];
45
-
46
- if(found1) [NSNumber parseString:str1 intoUInt64:&result.location];
47
- if(found2) [NSNumber parseString:str2 intoUInt64:&result.length];
48
-
49
- return result;
50
- }
51
-
52
- NSInteger DDRangeCompare(DDRangePointer pDDRange1, DDRangePointer pDDRange2)
53
- {
54
- // Comparison basis:
55
- // Which range would you encouter first if you started at zero, and began walking towards infinity.
56
- // If you encouter both ranges at the same time, which range would end first.
57
-
58
- if(pDDRange1->location < pDDRange2->location)
59
- {
60
- return NSOrderedAscending;
61
- }
62
- if(pDDRange1->location > pDDRange2->location)
63
- {
64
- return NSOrderedDescending;
65
- }
66
- if(pDDRange1->length < pDDRange2->length)
67
- {
68
- return NSOrderedAscending;
69
- }
70
- if(pDDRange1->length > pDDRange2->length)
71
- {
72
- return NSOrderedDescending;
73
- }
74
-
75
- return NSOrderedSame;
76
- }
77
-
78
- @implementation NSValue (NSValueDDRangeExtensions)
79
-
80
- + (NSValue *)valueWithDDRange:(DDRange)range
81
- {
82
- return [NSValue valueWithBytes:&range objCType:@encode(DDRange)];
83
- }
84
-
85
- - (DDRange)ddrangeValue
86
- {
87
- DDRange result;
88
- [self getValue:&result];
89
- return result;
90
- }
91
-
92
- - (NSInteger)ddrangeCompare:(NSValue *)other
93
- {
94
- DDRange r1 = [self ddrangeValue];
95
- DDRange r2 = [other ddrangeValue];
96
-
97
- return DDRangeCompare(&r1, &r2);
98
- }
99
-
100
- @end
@@ -1,109 +0,0 @@
1
- #import <Foundation/Foundation.h>
2
-
3
- @class GCDAsyncSocket;
4
- @class HTTPMessage;
5
- @class HTTPServer;
6
- @class WebSocket;
7
- @protocol HTTPResponse;
8
-
9
-
10
- #define HTTPConnectionDidDieNotification @"HTTPConnectionDidDie"
11
-
12
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
13
- #pragma mark -
14
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
15
-
16
- @interface HTTPConfig : NSObject
17
- {
18
- HTTPServer __unsafe_unretained *server;
19
- NSString __strong *documentRoot;
20
- dispatch_queue_t queue;
21
- }
22
-
23
- - (id)initWithServer:(HTTPServer *)server documentRoot:(NSString *)documentRoot;
24
- - (id)initWithServer:(HTTPServer *)server documentRoot:(NSString *)documentRoot queue:(dispatch_queue_t)q;
25
-
26
- @property (nonatomic, unsafe_unretained, readonly) HTTPServer *server;
27
- @property (nonatomic, strong, readonly) NSString *documentRoot;
28
- @property (nonatomic, readonly) dispatch_queue_t queue;
29
-
30
- @end
31
-
32
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
33
- #pragma mark -
34
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
35
-
36
- @interface HTTPConnection : NSObject
37
- {
38
- dispatch_queue_t connectionQueue;
39
- GCDAsyncSocket *asyncSocket;
40
- HTTPConfig *config;
41
-
42
- BOOL started;
43
-
44
- HTTPMessage *request;
45
- unsigned int numHeaderLines;
46
-
47
- BOOL sentResponseHeaders;
48
-
49
- NSObject<HTTPResponse> *httpResponse;
50
-
51
- NSMutableArray *ranges;
52
- NSMutableArray *ranges_headers;
53
- NSString *ranges_boundry;
54
- int rangeIndex;
55
-
56
- UInt64 requestContentLength;
57
- UInt64 requestContentLengthReceived;
58
- UInt64 requestChunkSize;
59
- UInt64 requestChunkSizeReceived;
60
-
61
- NSMutableArray *responseDataSizes;
62
- }
63
-
64
- - (id)initWithAsyncSocket:(GCDAsyncSocket *)newSocket configuration:(HTTPConfig *)aConfig;
65
-
66
- - (void)start;
67
- - (void)stop;
68
-
69
- - (void)startConnection;
70
-
71
- - (BOOL)supportsMethod:(NSString *)method atPath:(NSString *)path;
72
- - (BOOL)expectsRequestBodyFromMethod:(NSString *)method atPath:(NSString *)path;
73
-
74
- - (NSDictionary *)parseParams:(NSString *)query;
75
- - (NSDictionary *)parseGetParams;
76
-
77
- - (NSString *)requestURI;
78
-
79
- - (NSArray *)directoryIndexFileNames;
80
- - (NSString *)filePathForURI:(NSString *)path;
81
- - (NSString *)filePathForURI:(NSString *)path allowDirectory:(BOOL)allowDirectory;
82
- - (NSObject<HTTPResponse> *)httpResponseForMethod:(NSString *)method URI:(NSString *)path;
83
- - (WebSocket *)webSocketForURI:(NSString *)path;
84
-
85
- - (void)prepareForBodyWithSize:(UInt64)contentLength;
86
- - (void)processBodyData:(NSData *)postDataChunk;
87
- - (void)finishBody;
88
- - (UInt64)maxRequestBodySize;
89
-
90
- - (void)handleVersionNotSupported:(NSString *)version;
91
- - (void)handleRequestBodyTooLarge;
92
- - (void)handleResourceNotFound;
93
- - (void)handleInvalidRequest:(NSData *)data;
94
- - (void)handleUnknownMethod:(NSString *)method;
95
-
96
- - (NSData *)preprocessResponse:(HTTPMessage *)response;
97
- - (NSData *)preprocessErrorResponse:(HTTPMessage *)response;
98
-
99
- - (void)finishResponse;
100
-
101
- - (BOOL)shouldDie;
102
- - (void)die;
103
-
104
- @end
105
-
106
- @interface HTTPConnection (AsynchronousHTTPResponse)
107
- - (void)responseHasAvailableData:(NSObject<HTTPResponse> *)sender;
108
- - (void)responseDidAbort:(NSObject<HTTPResponse> *)sender;
109
- @end