mozilla-b2g/gaia — pull request #12128 by jrburke (2013-09-11 17:33:09+00:00)
Title: Bug 892518 - email: [User Story] Ability to Change Sync Interval

main-frame-setup change will be reviewed in the gelam pull request, and is minor fix:
https://github.com/mozilla-b2g/gaia-email-libs-and-more/pull/249

The code that provides this basic feature was already delivered in bug [892519](https://bugzilla.mozilla.org/show_bug.cgi?id=892519). This changeset is mainly about the integration test addition.

This changeset also introduces some new plumbing for email integration tests. In the email/test/marionette directory:

* email.js was moved to lib/email.js. @lightsofapollo suggested moving all the helper scripts into libs and leave tests in the marionette directory.
* lib/email_data.js: provides wrappers over data operations sent to the email app's content space.
* lib/debug.js formalizes the helper function instrumentation that existed earlier for just lib/email.js
* lib/mocks/mock_navigator_mozalarms.js: a mock for mozAlarms to test correct setting of mozAlarms from the app code.
* lib/email.js: in _tapSelector, a waitForElement was added to make sure the tap target is visible and available for clicking. This seems to fix the intermittent waitForTransitionEnd failure currently seen in the tests. At least I think so. I ran all email unit tests 7 times in a row. That resulted in 8 tests running, for a total of 56 attempts at an intermittent failure. Previously, the failure would have happened before reaching 56 runs.