Skip to content

The bridge between Calabash iOS and Xcode command-line tools like instruments and simctl.

License

Notifications You must be signed in to change notification settings

calabash/run_loop

Folders and files

NameName
Last commit message
Last commit date
Jul 27, 2016
Jul 3, 2023
Apr 18, 2015
Jun 14, 2019
Aug 17, 2022
Dec 2, 2012
Dec 16, 2016
Aug 19, 2016
Dec 2, 2012
Jan 9, 2015
Jul 19, 2018
Aug 29, 2015
Oct 27, 2015
Apr 3, 2019
Mar 29, 2022
Sep 18, 2018
Apr 25, 2016
Jul 21, 2017
Oct 5, 2018
Apr 3, 2013
Sep 29, 2021
Oct 22, 2019
Oct 29, 2015
Apr 9, 2018
Feb 9, 2022
May 12, 2022

Repository files navigation

develop master versioning license contributing dependencies
Build Status Build Status GitHub version License Contributing Dependency Status

Run Loop

Requirements

  • at least Xcode 12.0
  • ruby >= 2.3

The most recent version of Xcode is strongly recommended.

License

Run Loop is available under the MIT license. See the LICENSE file for more info.

Licenses for third-party software can be found in ./vendor-licenses.

Versioning

Run Loop follows the spirit of Semantic Versioning. [1] However, the semantic versioning spec is incompatible with RubyGem's patterns for pre-release gems.[2]

"But returning to the practical: No release version of SemVer is compatible with Rubygems." - David Kellum

If a method, class, or constant is marked with:

# @!visibility private

it is not part of the public API and the behavior is subject to change at any time.

For Run Loop Gem Developers

IMPORTANT note to devs RE: udidetect submodule

The current head of the udidetect head does not include the udidetect binary.

If you are compelled to update, you must rebuild and replace the scripts/udidetect binary.

At this time, there is no reason to update.

Building Device Agent Resources

It is your responsibility for checking the git branch.

$ rake device_agent:install

Tests

CI

Unit Tests

$ be rake unit

Integration Tests

Take a break because these test launch and quit the simulator multiple times. You have enough time to take some deep breaths and do some stretching. You'll feel better afterward.

Make sure you have hardware keyboard disabled if testing on the simulator.

For continuous TDD/BDD see the Guard section below.

$ be rake integration
Device Testing
  • Requires ideviceinstaller.
  • Requires devices to be connected with USB.
  • Each compatible device will be targeted with tests.
  • These are integration tests
Regression vs. Xcode version

If you have alternative Xcode installs that look like this:

/Xcode/9.4.1/Xcode.app
/Xcode/10.0/Xcode.app
/Xcode/10.1/Xcode.app
/Xcode/10.2/Xcode-Beta.app

the rspec tests will do regression testing against each version.

Guard

Guard requires terminal-notifier-guard

https://github.com/Codaisseur/terminal-notifier-guard

$ brew install terminal-notifier-guard
$ be guard

Only the unit tests are run by guard.

About

The bridge between Calabash iOS and Xcode command-line tools like instruments and simctl.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages