appium-webdriveragent 3.15.0 → 3.17.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 (29) hide show
  1. package/PrivateHeaders/XCTest/XCTestManager_ManagerInterface-Protocol.h +4 -2
  2. package/PrivateHeaders/XCTest/XCUIScreen.h +4 -3
  3. package/WebDriverAgent.xcodeproj/project.pbxproj +36 -0
  4. package/WebDriverAgent.xcodeproj/project.xcworkspace/xcuserdata/kazuaki.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  5. package/WebDriverAgent.xcodeproj/xcuserdata/kazuaki.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +1369 -500
  6. package/WebDriverAgentLib/Categories/XCUIApplication+FBHelpers.h +9 -6
  7. package/WebDriverAgentLib/Categories/XCUIApplication+FBHelpers.m +4 -6
  8. package/WebDriverAgentLib/Categories/XCUIApplication+FBUIInterruptions.h +23 -0
  9. package/WebDriverAgentLib/Categories/XCUIApplication+FBUIInterruptions.m +32 -0
  10. package/WebDriverAgentLib/Commands/FBDebugCommands.m +6 -3
  11. package/WebDriverAgentLib/Utilities/FBConfiguration.h +5 -0
  12. package/WebDriverAgentLib/Utilities/FBConfiguration.m +6 -0
  13. package/WebDriverAgentLib/Utilities/FBMjpegServer.m +1 -1
  14. package/WebDriverAgentLib/Utilities/FBReflectionUtils.h +24 -0
  15. package/WebDriverAgentLib/Utilities/FBReflectionUtils.m +32 -0
  16. package/WebDriverAgentLib/Utilities/FBScreenshot.h +1 -1
  17. package/WebDriverAgentLib/Utilities/FBScreenshot.m +3 -3
  18. package/WebDriverAgentLib/Utilities/FBXCAXClientProxy.m +5 -23
  19. package/WebDriverAgentLib/Utilities/FBXMLGenerationOptions.h +46 -0
  20. package/WebDriverAgentLib/Utilities/FBXMLGenerationOptions.m +26 -0
  21. package/WebDriverAgentLib/Utilities/FBXPath.h +4 -3
  22. package/WebDriverAgentLib/Utilities/FBXPath.m +65 -28
  23. package/WebDriverAgentRunner/UITestingUITests.m +1 -0
  24. package/WebDriverAgentRunner-Runner.app.zip +0 -0
  25. package/WebDriverAgentTests/IntegrationTests/FBAlertTests.m +1 -0
  26. package/WebDriverAgentTests/IntegrationTests/FBXPathIntegrationTests.m +16 -2
  27. package/WebDriverAgentTests/UnitTests/FBXPathTests.m +28 -15
  28. package/package.json +2 -2
  29. package/WebDriverAgentLib/.DS_Store +0 -0
@@ -28,18 +28,24 @@
28
28
  NSMutableDictionary *elementStore = [NSMutableDictionary dictionary];
29
29
  int buffersize;
30
30
  xmlChar *xmlbuff;
31
- int rc = [FBXPath xmlRepresentationWithRootElement:(XCElementSnapshot *)element
32
- writer:writer
33
- elementStore:elementStore
34
- query:query
35
- excludingAttributes:excludedAttributes];
36
- if (0 == rc) {
31
+ int rc = xmlTextWriterStartDocument(writer, NULL, "UTF-8", NULL);
32
+ if (rc >= 0) {
33
+ rc = [FBXPath xmlRepresentationWithRootElement:(XCElementSnapshot *)element
34
+ writer:writer
35
+ elementStore:elementStore
36
+ query:query
37
+ excludingAttributes:excludedAttributes];
38
+ if (rc >= 0) {
39
+ rc = xmlTextWriterEndDocument(writer);
40
+ }
41
+ }
42
+ if (rc >= 0) {
37
43
  xmlDocDumpFormatMemory(doc, &xmlbuff, &buffersize, 1);
38
44
  }
39
45
  xmlFreeTextWriter(writer);
40
46
  xmlFreeDoc(doc);
41
47
 
42
- XCTAssertEqual(rc, 0);
48
+ XCTAssertTrue(rc >= 0);
43
49
  XCTAssertEqual(1, [elementStore count]);
44
50
 
45
51
  NSString *result = [NSString stringWithCString:(const char *)xmlbuff encoding:NSUTF8StringEncoding];
@@ -72,12 +78,13 @@
72
78
  - (void)testXPathPresentationBasedOnQueryMatchingAllAttributes
73
79
  {
74
80
  XCUIElementDouble *element = [XCUIElementDouble new];
81
+ element.wdValue = @"йоло<>&\"";
75
82
  NSString *resultXml = [self xmlStringWithElement:element
76
83
  xpathQuery:[NSString stringWithFormat:@"//%@[@*]", element.wdType]
77
84
  excludingAttributes:@[@"visible"]];
78
85
  NSString *expectedXml = [NSString stringWithFormat:@"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<%@ type=\"%@\" value=\"%@\" name=\"%@\" label=\"%@\" enabled=\"%@\" visible=\"%@\" accessible=\"%@\" x=\"%@\" y=\"%@\" width=\"%@\" height=\"%@\" index=\"%lu\" private_indexPath=\"top\"/>\n",
79
- element.wdType, element.wdType, element.wdValue, element.wdName, element.wdLabel, element.wdEnabled ? @"true" : @"false", element.wdVisible ? @"true" : @"false", element.wdAccessible ? @"true" : @"false", element.wdRect[@"x"], element.wdRect[@"y"], element.wdRect[@"width"], element.wdRect[@"height"], element.wdIndex];
80
- XCTAssertTrue([resultXml isEqualToString: expectedXml]);
86
+ element.wdType, element.wdType, @"йоло&lt;&gt;&amp;&quot;", element.wdName, element.wdLabel, element.wdEnabled ? @"true" : @"false", element.wdVisible ? @"true" : @"false", element.wdAccessible ? @"true" : @"false", element.wdRect[@"x"], element.wdRect[@"y"], element.wdRect[@"width"], element.wdRect[@"height"], element.wdIndex];
87
+ XCTAssertTrue([resultXml isEqualToString:expectedXml]);
81
88
  }
82
89
 
83
90
  - (void)testXPathPresentationBasedOnQueryMatchingSomeAttributes
@@ -99,15 +106,21 @@
99
106
  NSMutableDictionary *elementStore = [NSMutableDictionary dictionary];
100
107
  XCUIElementDouble *root = [XCUIElementDouble new];
101
108
  NSString *query = [NSString stringWithFormat:@"//%@", root.wdType];
102
- int rc = [FBXPath xmlRepresentationWithRootElement:(XCElementSnapshot *)root
103
- writer:writer
104
- elementStore:elementStore
105
- query:query
106
- excludingAttributes:nil];
109
+ int rc = xmlTextWriterStartDocument(writer, NULL, "UTF-8", NULL);
110
+ if (rc >= 0) {
111
+ rc = [FBXPath xmlRepresentationWithRootElement:(XCElementSnapshot *)root
112
+ writer:writer
113
+ elementStore:elementStore
114
+ query:query
115
+ excludingAttributes:nil];
116
+ if (rc >= 0) {
117
+ rc = xmlTextWriterEndDocument(writer);
118
+ }
119
+ }
107
120
  if (rc < 0) {
108
121
  xmlFreeTextWriter(writer);
109
122
  xmlFreeDoc(doc);
110
- XCTAssertEqual(rc, 0);
123
+ XCTFail(@"Unable to create the source XML document");
111
124
  }
112
125
 
113
126
  xmlXPathObjectPtr queryResult = [FBXPath evaluate:query document:doc];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "appium-webdriveragent",
3
- "version": "3.15.0",
3
+ "version": "3.17.0",
4
4
  "description": "Package bundling WebDriverAgent",
5
5
  "main": "build/index.js",
6
6
  "scripts": {
@@ -54,7 +54,7 @@
54
54
  "ios-uicatalog": "^3.5.0",
55
55
  "mocha": "^9.0.0",
56
56
  "pre-commit": "^1.2.2",
57
- "sinon": "^11.0.0",
57
+ "sinon": "^12.0.0",
58
58
  "wd": "^1.11.4"
59
59
  },
60
60
  "dependencies": {
Binary file