Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
from: "v2.2.1"
->from: "v7.0.0"
Release Notes
Quick/Quick
v7.0.0
: - AsyncSpec and Human-Readable Test SelectorsCompare Source
Highlights
Async Test Changes
Quick 7 changes how Async tests are run. Instead of forcing all tests to run in an async context, Quick 7 provides a separate Spec class for Async Tests. Create an
AsyncSpec
subclass, and all tests inside of that subclass will run in an async context. Tests inside ofQuickSpec
subclasses will have a similar behavior to what was in Quick 5.Additionally, Quick 7 changes how the DSL is defined slightly. In Quick 6 and before, the DSL was defined as a series of global functions, available to be called anywhere. In Quick 7, these functions were moved to be static methods on the new
SyncDSLUser
(whichQuickSpec
,Behavior
, andQuickConfiguration
conform to) andAsyncDSLUser
(whichAsyncSpec
andAsyncBehavior
conform to) protocols. This allows us to make sure that you are using the correct DSL for the context, and was necessary for this approach.For example:
Unencoded Test Selectors
Furthermore, Quick 7 changes how test selectors are generated for
QuickSpec
. Now, bothAsyncSpec
andQuickSpec
will use the unencoded test names as the test selectors. Test selectors are now generated by joining thedescribe
/context
blocks leading up to theit
block with ", ". This makes test names immensely easier to read. For example, with the following spec:will generate the following test selectors:
some feature, in one case, has a behavior
some feature, in another case, doesn't have the earlier behavior
You can disable this change by setting the
QUICK_USE_ENCODED_TEST_SELECTOR_NAMES
environment variable.Migrating Suggestions
Quick 7 is not a drop-in migration from either Quick 5 or Quick 6. Quick 5 users will have a slightly easier time upgrading, but due to
spec
being defined as a class method instead of an instance method, there will still be changes.Doing a Find & Replace of
override func spec
withoverride class func spec
will take care of the low-hanging fruit. If you have any test helpers that exist as properties or methods of your QuickSpec subclasses, the you will need to either move them inside of thespec
function, or outside to another scope. For Objective-C users, this is, for the most part, a drop-in replacement. You will only need to do anything if you do not use theQuickSpecBegin
andQuickSpecEnd
macros (in which case: do a find & replace of the regex-(\s*)\(void\)(\s*)spec
with+$1(void)$2spec
).For migrating from Quick 6 to Quick 7, it would be easiest to also do a Find & Replace of
: QuickSpec
to: AsyncSpec
, then migrate tests that do not need to run in async contexts to beQuickSpec
s themselves.Auto-Generated Changelog
What's Changed
New Contributors
Full Changelog: Quick/Quick@v6.1.0...v7.0.0
v6.1.0
Compare Source
Highlighted Changes
TestState
property wrapper (Thanks @CraigSiemens!). You can now wrap properties with@TestState
to have them automatically set to nil.Auto-generated Release Notes
What's Changed
TestState
property wrapper. by @CraigSiemens in https://github.com/Quick/Quick/pull/1186New Contributors
Full Changelog: Quick/Quick@v6.0.1...v6.1.0
v6.0.1
Compare Source
What's Changed
fit
,xit
,pending
andjustBeforeEach
by @younata in https://github.com/Quick/Quick/pull/1183Full Changelog: Quick/Quick@v6.0.0...v6.0.1
v6.0.0
Compare Source
This closes the v6.0.0 milestone.
Highlights
See additional details under the auto-generated release notes below.
Fixed
New
StopTest
error to end a test prematurely without it being reported as an error. https://github.com/Quick/Quick/pull/1165justBeforeEach
operator, which takes a closure and runs it immediately prior to the relevantit
tests. https://github.com/Quick/Quick/pull/1169 For exampleBreaking
aroundEach
is removed from the Objective-C API https://github.com/Quick/Quick/pull/1160Auto-Generated Release Notes
What's Changed
assignBefore
operator by @esilverberg in https://github.com/Quick/Quick/pull/1169New Contributors
Full Changelog: Quick/Quick@v5.0.1...v6.0.0
v5.0.1
Compare Source
This release closes the v5.0.1 milestone.
What's Changed
Full Changelog: Quick/Quick@v5.0.0...v5.0.1
v5.0.0
Compare Source
This release closes the v5.0.0 milestone.
Highlights
See additional details under the auto-generated release notes below.
Fixed
New
Breaking
Auto-generated release notes
What's Changed
#if canImport(Darwin)
for checking XCTIssue availability by @ikesyo in https://github.com/Quick/Quick/pull/1104isSubclass(of:)
API for checking superclass by @ikesyo in https://github.com/Quick/Quick/pull/1096configure
argument. by @alexhayes in https://github.com/Quick/Quick/pull/1113afterSuite
blocks not running when having excluded tests by @revolter in https://github.com/Quick/Quick/pull/1061New Contributors
Full Changelog: Quick/Quick@v4.0.0...v5.0.0
v4.0.0
Compare Source
Quick v4 has been released! 🎉 The new major version requires Swift 5.2 / Xcode 11.4 at least.
BREAKING CHANGES
master
branch tomain
#1052Changes
Documentation Changes
vieiwDidAppear
not be called automatically in iOS SDK 13.0 #942 (Thanks @nickm01)Miscellaneous
v3.1.2
Compare Source
Changes
v3.1.1
Compare Source
Bugfixes
v3.1.0
Compare Source
Changes
v3.0.1
Compare Source
Changes
Package@swift-5.3.swift
to bump minimum iOS version for SwiftPM users #1037v3.0.0
Compare Source
Quick v3 has been released! 🎉 The new major version requires Swift 5.2 / Xcode 11.4 at least.
BREAKING CHANGES
New Features
it
/fit
/xit
closures are now marked asthrows
, so you can throwError
s and the test fails if they do throw #680 (Thanks @marcelofabri)Changes
Bugfixes
recordFailure
toQuickSpec.current
#990Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.