kif-framework/KIF — pull request #510 by joemasilotti (2014-12-01 12:08:34+00:00)
Title: Add support for dismissing system alerts

This is a first pass at dismissing system alerts (eg. location services and access to photos). It works by linking to the private UIAutomation framework and then calling down the `UIAElement` chain to grab the alert. It then taps the last button which should be the *Allow* one.

Also of note is how the private headers are pulled in. In its current state all the knowledge lives in `KIFSystemAlertHandler.m` and only exposes the *required* methods. Take a peek at the [full header dump](https://github.com/joemasilotti/UIAutomation) and [the inspiration for this](https://github.com/TestingWithFrank/PublicAutomation) if you are interested in seeing the full list. There is also the option of pulling one of those in as a Cocoapod and keeping all the knowledge contained there.

This could be a solution for PR #507 running on CI but I want to first make sure this is an acceptable approach before continuing. If so, please let me know and I will continue with adding support for iOS 7.X and not failing the test if the alert never shows up.

While this will not yet allow interaction with external views (eg. `ABPeoplePickerNavigationController`), it does mark a huge step forward for KIF being able to interact with elements outside of the standard accessibility hierarchy.