SkillAgentSearch skills...

XCTestExtensions

XCTestExtensions is a Swift extension that provides convenient assertions for writing Unit Test.

Install / Use

/learn @shindyu/XCTestExtensions
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

XCTestExtensions

Build Status

Features

  • [x] XCTAssertEventually (that convenient assertions for writing Unit Test).

    • Use "XCTAssertEventually", you can write asynchronous assertions very easily and intuitively, like Nimble's toEventually.
  • [x] XCTxContext (It is a wrapper of XCTContext.runActivity.)

    • XCTxContext can internally test setup and tearDown of TestClass. Of course you can not do it.

Installation

Installing with Carthage

Add to Cartfile.private

github "shindyu/XCTestExtensions"

Usage

Import XCTestExtensions to Unit tests files:

import XCTestExtensions

Use XCTestExtensions's extensions in your tests: <img src="https://raw.githubusercontent.com/shindyu/XCTestExtensions/master/img/method_completion.png">

For example, Applying it to the asynchronous test of the official document of apple, it can be described as follows:

    func testDownloadWebData_UsingXCTAssertEventually() {
        XCTxContext("you can describe context") {
            let url = URL(string: "https://apple.com")!

            var downloadData: Data?

            let dataTask = URLSession.shared.dataTask(with: url) { (data, _, _) in
                downloadData = data
            }

            dataTask.resume()

            XCTAssertNotNilEventually(downloadData)
        }
    }

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/shindyu/XCTestExtensions

License

XCTestExtensions is available as open source under the terms of the MIT License.

View on GitHub
GitHub Stars22
CategoryContent
Updated3y ago
Forks2

Languages

Swift

Security Score

80/100

Audited on Dec 1, 2022

No findings