ES7 module for interacting with Xcode and Xcode-related functions. Used by various Appium drivers.
All functions are
async, meaning they return promises which can be awaited via
Most functions are memoized, so after they are called once, they will simply return the same value. Remember that calling
require() multiple times returns the same instantiation of a module if it has already been instantiated, so the memoization will be preserved across multiple files in the same project.
Some functions have an auto-retry built into them, they will retry silently a number of times. This is because the Xcode commands sometimes just flake and return bad values (or don't return).
gets path to Xcode Developer root.
getVersion([parse=false], [retries], [timeout])
returns the version of Xcode formatted as a string, for example
6.3.1, or a version object if
returns the highest IOS SDK version supported by Xcode.
returns highest tvOS SDK version supported by Xcode.
npm test npm e2e-test
After cloning appium-xcode, execute
npm link in the appium-xcode directory. Next run
npm link appium-xcode from the appium directory. This will symlink appium-xcode to node_modules/appium-xcode. If the clone becomes out of date remember to unlink or delete node_modules and reinstall.
For quick debugging you could cd into the node_modules/appium-xcode folder and run
npm install followed by
npm run build.