Jon Reid

6pods

MockUIAlertController

MockUIAlertController lets you mock iOS alerts and action sheets for unit tests, based on the UIAlertController introduced for iOS 8.

No actual alerts are presented. This means:

  • The workflow doesn't pause for an action to be selected.
  • Tests are blazing fast.

License: NOASSERTION

  • Objective C

MockUIAlertViewActionSheet

MockUIAlertViewActionSheet lets you mock old-style iOS alerts and action sheets for unit tests, based on the UIAlertView and UIActionSheet.

No actual alerts are presented. This means:

  • The workflow doesn't pause for an action to be selected.
  • Tests are blazing fast.

License: MIT

  • Objective C

OCHamcrest

OCHamcrest is:

  • a library of "matcher" objects for declaring rules to check whether a given object matches those rules.
  • a framework for writing your own matchers.

Matchers are useful for a variety of purposes, such as UI validation. But they're most commonly used for writing unit tests that are expressive and flexible.

OCHamcrest is compatible with:

  • XCTest
  • OCUnit (SenTestingKit)
  • Kiwi
  • Cedar
  • GHUnit
  • Google Toolbox for Mac (GTM)
  • OCMock
  • OCMockito

License: BSD-2-Clause

  • Objective C

OCMockito

OCMockito is an Objective-C implementation of Mockito, supporting creation, verification and stubbing of mock objects.

Key differences from other mocking frameworks:

  • Mock objects are always "nice," recording their calls instead of throwing exceptions about unspecified invocations. This makes tests less fragile.
  • No expect-run-verify, making tests more readable. Mock objects record their calls, then you verify the methods you want.
  • Verification failures are reported as unit test failures, identifying specific lines instead of throwing exceptions. This makes it easier to identify failures.

License: MIT

  • Objective C

XcodeCoverage

XcodeCoverage provides a simple way to generate reports of the code coverage of your Xcode project. Generated reports include HTML and Cobertura XML.

Coverage data excludes Apple's SDKs, and the exclusion rules can be customized.

License: NOASSERTION

  • Objective C