Skip to content
This repository has been archived by the owner on Oct 14, 2018. It is now read-only.

Commit

Permalink
Merge branch 'release/v1.1.2'
Browse files Browse the repository at this point in the history
  • Loading branch information
AnderGoig committed Oct 14, 2018
2 parents 71a9428 + 5170c9e commit 0a5b52b
Show file tree
Hide file tree
Showing 77 changed files with 1,742 additions and 1,416 deletions.
2 changes: 1 addition & 1 deletion .swift-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
4.0
4.2
1 change: 1 addition & 0 deletions .swiftlint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,3 +54,4 @@ identifier_name:
- x
- y
- id
- vc
4 changes: 2 additions & 2 deletions Cartfile.resolved
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
github "Quick/Nimble" "v7.0.3"
github "Quick/Quick" "v1.2.0"
github "Quick/Nimble" "v7.3.1"
github "Quick/Quick" "v1.3.2"
github "jspahrsummers/xcconfigs" "bb795558a76e5daf3688500055bbcfe243bffa8d"
2 changes: 1 addition & 1 deletion Carthage/Checkouts/Nimble
Submodule Nimble updated 72 files
+12 −0 .travis.yml
+1 −1 Cartfile.private
+1 −1 Cartfile.resolved
+0 −2 Carthage/Checkouts/CwlCatchException/Sources/CwlCatchException/CwlCatchException.swift
+2 −0 Carthage/Checkouts/CwlPreconditionTesting/LICENSE.txt
+4 −2 Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/CwlCatchBadInstruction.swift
+2 −0 Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/Mach/CwlPreconditionTesting.h
+2 −0 Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/Posix/CwlPreconditionTesting_POSIX.h
+1 −1 Gemfile
+39 −36 Gemfile.lock
+3 −4 Nimble.podspec
+102 −46 Nimble.xcodeproj/project.pbxproj
+8 −0 Nimble.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
+1 −3 Nimble.xcodeproj/xcshareddata/xcschemes/Nimble-iOS.xcscheme
+1 −3 Nimble.xcodeproj/xcshareddata/xcschemes/Nimble-macOS.xcscheme
+1 −3 Nimble.xcodeproj/xcshareddata/xcschemes/Nimble-tvOS.xcscheme
+42 −42 README.md
+2 −2 Sources/Nimble/Adapters/AssertionRecorder.swift
+3 −3 Sources/Nimble/Adapters/NMBExpectation.swift
+23 −13 Sources/Nimble/Adapters/NMBObjCMatcher.swift
+12 −1 Sources/Nimble/Adapters/NimbleXCTestHandler.swift
+1 −1 Sources/Nimble/DSL+Wait.swift
+14 −21 Sources/Nimble/Expectation.swift
+3 −1 Sources/Nimble/ExpectationMessage.swift
+3 −3 Sources/Nimble/Matchers/AllPass.swift
+19 −80 Sources/Nimble/Matchers/Async.swift
+2 −2 Sources/Nimble/Matchers/BeAKindOf.swift
+2 −2 Sources/Nimble/Matchers/BeAnInstanceOf.swift
+16 −4 Sources/Nimble/Matchers/BeCloseTo.swift
+3 −3 Sources/Nimble/Matchers/BeEmpty.swift
+5 −5 Sources/Nimble/Matchers/BeGreaterThan.swift
+10 −10 Sources/Nimble/Matchers/BeGreaterThanOrEqualTo.swift
+14 −7 Sources/Nimble/Matchers/BeIdenticalTo.swift
+10 −10 Sources/Nimble/Matchers/BeLessThan.swift
+9 −10 Sources/Nimble/Matchers/BeLessThanOrEqual.swift
+4 −4 Sources/Nimble/Matchers/BeLogical.swift
+1 −1 Sources/Nimble/Matchers/BeNil.swift
+2 −3 Sources/Nimble/Matchers/BeVoid.swift
+3 −3 Sources/Nimble/Matchers/BeginWith.swift
+24 −24 Sources/Nimble/Matchers/Contain.swift
+10 −12 Sources/Nimble/Matchers/ContainElementSatisfying.swift
+17 −21 Sources/Nimble/Matchers/EndWith.swift
+2 −2 Sources/Nimble/Matchers/Equal.swift
+23 −17 Sources/Nimble/Matchers/HaveCount.swift
+7 −8 Sources/Nimble/Matchers/Match.swift
+32 −14 Sources/Nimble/Matchers/MatchError.swift
+2 −2 Sources/Nimble/Matchers/MatcherProtocols.swift
+4 −2 Sources/Nimble/Matchers/PostNotification.swift
+14 −10 Sources/Nimble/Matchers/Predicate.swift
+18 −12 Sources/Nimble/Matchers/RaisesException.swift
+76 −0 Sources/Nimble/Matchers/SatisfyAllOf.swift
+6 −31 Sources/Nimble/Matchers/SatisfyAnyOf.swift
+12 −16 Sources/Nimble/Matchers/ThrowAssertion.swift
+45 −39 Sources/Nimble/Matchers/ThrowError.swift
+4 −0 Sources/Nimble/Utils/Await.swift
+3 −9 Sources/Nimble/Utils/Stringers.swift
+0 −9 Sources/NimbleObjectiveC/CurrentTestCaseTracker.h
+6 −0 Sources/NimbleObjectiveC/DSL.h
+9 −8 Sources/NimbleObjectiveC/DSL.m
+1 −1 Sources/NimbleObjectiveC/NMBExceptionCapture.m
+5 −0 Sources/NimbleObjectiveC/NMBStringify.m
+6 −1 Sources/NimbleObjectiveC/XCTestObservationCenter+Register.m
+12 −0 Tests/NimbleTests/AsynchronousTest.swift
+6 −6 Tests/NimbleTests/Helpers/utils.swift
+1 −1 Tests/NimbleTests/Matchers/MatchErrorTest.swift
+57 −0 Tests/NimbleTests/Matchers/SatisfyAllOfTest.swift
+7 −1 Tests/NimbleTests/Matchers/ThrowAssertionTest.swift
+11 −2 Tests/NimbleTests/Matchers/ThrowErrorTest.swift
+33 −0 Tests/NimbleTests/SynchronousTest.swift
+0 −0 Tests/NimbleTests/objc/ObjCContainElementSatisfyingTest.m
+0 −0 Tests/NimbleTests/objc/ObjCHaveCountTest.m
+32 −0 Tests/NimbleTests/objc/ObjCSatisfyAllOfTest.m
2 changes: 1 addition & 1 deletion Carthage/Checkouts/Quick
Submodule Quick updated 54 files
+2 −2 .gitignore
+9 −5 .travis.yml
+1 −0 Documentation/README.md
+2 −2 Documentation/en-us/ConfiguringQuick.md
+14 −14 Documentation/en-us/NimbleAssertions.md
+1 −1 Documentation/en-us/QuickExamplesAndGroups.md
+75 −0 Documentation/en-us/TestingApps.md
+14 −14 Documentation/ja/NimbleAssertions.md
+1 −1 Documentation/ja/QuickExamplesAndGroups.md
+203 −0 Documentation/ko-kr/ArrangeActAssert.md
+80 −0 Documentation/ko-kr/BehavioralTesting.md
+99 −0 Documentation/ko-kr/ConfiguringQuick.md
+25 −0 Documentation/ko-kr/InstallingFileTemplates.md
+141 −0 Documentation/ko-kr/InstallingQuick.md
+25 −0 Documentation/ko-kr/MoreResources.md
+97 −0 Documentation/ko-kr/NimbleAssertions.md
+462 −0 Documentation/ko-kr/QuickExamplesAndGroups.md
+49 −0 Documentation/ko-kr/QuickInObjectiveC.md
+35 −0 Documentation/ko-kr/README.md
+80 −0 Documentation/ko-kr/SettingUpYourXcodeProject.md
+116 −0 Documentation/ko-kr/SharedExamples.md
+129 −0 Documentation/ko-kr/TestUsingTestDoubles.md
+173 −0 Documentation/ko-kr/TestingApps.md
+10 −0 Documentation/ko-kr/Troubleshooting.md
+12 −12 Documentation/zh-cn/NimbleAssertions.md
+1 −1 Documentation/zh-cn/QuickExamplesAndGroups.md
+1 −1 Externals/Nimble
+1 −1 Gemfile
+40 −36 Gemfile.lock
+16 −0 Package.resolved
+6 −2 Quick.podspec
+59 −36 Quick.xcodeproj/project.pbxproj
+1 −3 Quick.xcodeproj/xcshareddata/xcschemes/Quick-iOS.xcscheme
+1 −3 Quick.xcodeproj/xcshareddata/xcschemes/Quick-macOS.xcscheme
+1 −3 Quick.xcodeproj/xcshareddata/xcschemes/Quick-tvOS.xcscheme
+8 −0 Quick.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
+5 −0 Rakefile
+3 −3 Sources/Quick/Configuration/QuickConfiguration.swift
+9 −4 Sources/Quick/DSL/World+DSL.swift
+3 −0 Sources/Quick/Example.swift
+19 −3 Sources/Quick/NSString+C99ExtendedIdentifier.swift
+14 −2 Sources/Quick/QuickSpec.swift
+1 −1 Sources/Quick/World.swift
+6 −1 Sources/QuickObjectiveC/Configuration/QuickConfiguration.m
+6 −2 Sources/QuickObjectiveC/DSL/QCKDSL.m
+0 −20 Sources/QuickObjectiveC/DSL/World+DSL.h
+6 −0 Sources/QuickObjectiveC/QuickSpec.h
+11 −3 Sources/QuickObjectiveC/QuickSpec.m
+0 −18 Sources/QuickObjectiveC/World.h
+5 −0 Sources/QuickObjectiveC/XCTestSuite+QuickTestSuiteBuilder.m
+25 −0 Tests/QuickTests/QuickTests/FunctionalTests/CurrentSpecTests.swift
+0 −1 Tests/QuickTests/QuickTests/Helpers/QCKSpecRunner.m
+7 −1 Tests/QuickTests/QuickTests/Helpers/QuickSpec+QuickSpec_MethodList.h
+5 −13 Tests/QuickTests/QuickTests/Helpers/QuickSpec+QuickSpec_MethodList.m
8 changes: 4 additions & 4 deletions Sources/Endpoints/Comments.swift
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

extension Instagram {

// MARK: - Comment Endpoints
// MARK: Comment Endpoints

/// Get a list of recent comments on a media object.
///
Expand All @@ -18,7 +18,7 @@ extension Instagram {
///
/// - important: It requires *public_content* scope for media that does not belong to your own user.
public func comments(fromMedia mediaId: String, success: SuccessHandler<[InstagramComment]>?, failure: FailureHandler?) {
request("/media/\(mediaId)/comments", success: { data in success?(data!) }, failure: failure)
request("/media/\(mediaId)/comments", success: success, failure: failure)
}

/// Create a comment on a media object.
Expand All @@ -35,7 +35,7 @@ extension Instagram {
/// - The comment cannot contain more than 1 URL.
/// - The comment cannot consist of all capital letters.
public func createComment(onMedia mediaId: String, text: String, success: SuccessHandler<InstagramComment>?, failure: FailureHandler?) {
request("/media/\(mediaId)/comments", method: .post, parameters: ["text": text], success: { data in success?(data!) }, failure: failure)
request("/media/\(mediaId)/comments", method: .post, parameters: ["text": text], success: success, failure: failure)
}

/// Remove a comment either on the authenticated user's media object or authored by the authenticated user.
Expand All @@ -46,6 +46,6 @@ extension Instagram {
///
/// - important: It requires *comments* scope. Also, *public_content* scope is required for media that does not belong to your own user.
public func deleteComment(_ commentId: String, onMedia mediaId: String, success: EmptySuccessHandler?, failure: FailureHandler?) {
request("/media/\(mediaId)/comments/\(commentId)", method: .delete, success: { (_: InstagramEmptyResponse!) in success?() }, failure: failure)
request("/media/\(mediaId)/comments/\(commentId)", method: .delete, success: { (_: InstagramEmptyResponse) in success?() }, failure: failure)
}
}
4 changes: 2 additions & 2 deletions Sources/Endpoints/Likes.swift
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

extension Instagram {

// MARK: - Like Endpoints
// MARK: Like Endpoints

/// Get a list of users who have liked this media.
///
Expand All @@ -18,7 +18,7 @@ extension Instagram {
///
/// - important: It requires *public_content* scope for media that does not belong to your own user.
public func likes(inMedia mediaId: String, success: SuccessHandler<[InstagramUser]>?, failure: FailureHandler?) {
request("/media/\(mediaId)/likes", success: { data in success?(data!) }, failure: failure)
request("/media/\(mediaId)/likes", success: success, failure: failure)
}

/// Set a like on this media by the currently authenticated user.
Expand Down
19 changes: 10 additions & 9 deletions Sources/Endpoints/Locations.swift
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import CoreLocation

extension Instagram {

// MARK: - Location Endpoints
// MARK: Location Endpoints

/// Get information about a location.
///
Expand All @@ -20,7 +20,7 @@ extension Instagram {
///
/// - important: It requires *public_content* scope.
public func location(_ locationId: String, success: SuccessHandler<InstagramLocation<String>>?, failure: FailureHandler?) {
request("/locations/\(locationId)", success: { data in success?(data!) }, failure: failure)
request("/locations/\(locationId)", success: success, failure: failure)
}

/// Get a list of recent media objects from a given location.
Expand All @@ -37,13 +37,12 @@ extension Instagram {
minId: String? = nil,
success: SuccessHandler<[InstagramMedia]>?,
failure: FailureHandler?) {

var parameters = Parameters()

parameters["max_id"] ??= maxId
parameters["min_id"] ??= minId

request("/locations/\(locationId)/media/recent", parameters: parameters, success: { data in success?(data!) }, failure: failure)
request("/locations/\(locationId)/media/recent", parameters: parameters, success: success, failure: failure)
}

/// Search for a location by geographic coordinate.
Expand All @@ -62,15 +61,14 @@ extension Instagram {
facebookPlacesId: String? = nil,
success: SuccessHandler<[InstagramLocation<String>]>?,
failure: FailureHandler?) {

var parameters = Parameters()

parameters["lat"] ??= latitude
parameters["lng"] ??= longitude
parameters["distance"] ??= distance
parameters["facebook_places_id"] ??= facebookPlacesId

request("/locations/search", parameters: parameters, success: { data in success?(data!) }, failure: failure)
request("/locations/search", parameters: parameters, success: success, failure: failure)
}

/// Search for a location by geographic coordinate.
Expand All @@ -87,8 +85,11 @@ extension Instagram {
facebookPlacesId: String? = nil,
success: SuccessHandler<[InstagramLocation<String>]>?,
failure: FailureHandler?) {

searchLocation(latitude: coordinates?.latitude, longitude: coordinates?.longitude,
distance: distance, facebookPlacesId: facebookPlacesId, success: success, failure: failure)
searchLocation(latitude: coordinates?.latitude,
longitude: coordinates?.longitude,
distance: distance,
facebookPlacesId: facebookPlacesId,
success: success,
failure: failure)
}
}
10 changes: 4 additions & 6 deletions Sources/Endpoints/Media.swift
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import CoreLocation

extension Instagram {

// MARK: - Media Endpoints
// MARK: Media Endpoints

/// Get information about a media object.
///
Expand All @@ -20,7 +20,7 @@ extension Instagram {
///
/// - important: It requires *public_content* scope.
public func media(withId id: String, success: SuccessHandler<InstagramMedia>?, failure: FailureHandler?) {
request("/media/\(id)", success: { data in success?(data!) }, failure: failure)
request("/media/\(id)", success: success, failure: failure)
}

/// Get information about a media object.
Expand All @@ -34,7 +34,7 @@ extension Instagram {
/// - note: A media object's shortcode can be found in its shortlink URL.
/// An example shortlink is http://instagram.com/p/tsxp1hhQTG/. Its corresponding shortcode is tsxp1hhQTG.
public func media(withShortcode shortcode: String, success: SuccessHandler<InstagramMedia>?, failure: FailureHandler?) {
request("/media/shortcode/\(shortcode)", success: { data in success?(data!) }, failure: failure)
request("/media/shortcode/\(shortcode)", success: success, failure: failure)
}

/// Search for recent media in a given area.
Expand All @@ -51,14 +51,13 @@ extension Instagram {
distance: Int? = nil,
success: SuccessHandler<[InstagramMedia]>?,
failure: FailureHandler?) {

var parameters = Parameters()

parameters["lat"] ??= latitude
parameters["lng"] ??= longitude
parameters["distance"] ??= distance

request("/media/search", parameters: parameters, success: { data in success?(data!) }, failure: failure)
request("/media/search", parameters: parameters, success: success, failure: failure)
}

/// Search for recent media in a given area.
Expand All @@ -73,7 +72,6 @@ extension Instagram {
distance: Int? = nil,
success: SuccessHandler<[InstagramMedia]>?,
failure: FailureHandler?) {

searchMedia(latitude: coordinates?.latitude, longitude: coordinates?.longitude, distance: distance, success: success, failure: failure)
}
}
12 changes: 6 additions & 6 deletions Sources/Endpoints/Relationships.swift
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

extension Instagram {

// MARK: - Relationship Endpoints
// MARK: Relationship Endpoints

/// Relationship actions currently supported by Instagram.
private enum RelationshipAction: String {
Expand All @@ -22,7 +22,7 @@ extension Instagram {
///
/// - important: It requires *follower_list* scope.
public func userFollows(success: SuccessHandler<[InstagramUser]>?, failure: FailureHandler?) {
request("/users/self/follows", success: { data in success?(data!) }, failure: failure)
request("/users/self/follows", success: success, failure: failure)
}

/// Get the list of users this user is followed by.
Expand All @@ -32,7 +32,7 @@ extension Instagram {
///
/// - important: It requires *follower_list* scope.
public func userFollowers(success: SuccessHandler<[InstagramUser]>?, failure: FailureHandler?) {
request("/users/self/followed-by", success: { data in success?(data!) }, failure: failure)
request("/users/self/followed-by", success: success, failure: failure)
}

/// List the users who have requested this user's permission to follow.
Expand All @@ -42,7 +42,7 @@ extension Instagram {
///
/// - important: It requires *follower_list* scope.
public func userRequestedBy(success: SuccessHandler<[InstagramUser]>?, failure: FailureHandler?) {
request("/users/self/requested-by", success: { data in success?(data!) }, failure: failure)
request("/users/self/requested-by", success: success, failure: failure)
}

/// Get information about a relationship to another user.
Expand All @@ -53,7 +53,7 @@ extension Instagram {
///
/// - important: It requires *follower_list* scope.
public func userRelationship(withUser userId: String, success: SuccessHandler<InstagramRelationship>?, failure: FailureHandler?) {
request("/users/\(userId)/relationship", success: { data in success?(data!) }, failure: failure)
request("/users/\(userId)/relationship", success: success, failure: failure)
}

/// Modify the relationship between the current user and the target user.
Expand All @@ -69,7 +69,7 @@ extension Instagram {
success: SuccessHandler<InstagramRelationship>?,
failure: FailureHandler?) {

request("/users/\(userId)/relationship", method: .post, parameters: ["action": action.rawValue], success: { data in success?(data!) }, failure: failure)
request("/users/\(userId)/relationship", method: .post, parameters: ["action": action.rawValue], success: success, failure: failure)
}

/// Follows the target user.
Expand Down
9 changes: 4 additions & 5 deletions Sources/Endpoints/Tags.swift
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

extension Instagram {

// MARK: - Tag Endpoints
// MARK: Tag Endpoints

/// Get information about a tag object.
///
Expand All @@ -18,7 +18,7 @@ extension Instagram {
///
/// - important: It requires *public_content* scope.
public func tag(_ tagName: String, success: SuccessHandler<InstagramTag>?, failure: FailureHandler?) {
request("/tags/\(tagName)", success: { data in success?(data!) }, failure: failure)
request("/tags/\(tagName)", success: success, failure: failure)
}

/// Get a list of recently tagged media.
Expand All @@ -37,14 +37,13 @@ extension Instagram {
count: Int? = nil,
success: SuccessHandler<[InstagramMedia]>?,
failure: FailureHandler?) {

var parameters = Parameters()

parameters["max_tag_id"] ??= maxTagId
parameters["min_tag_id"] ??= minTagId
parameters["count"] ??= count

request("/tags/\(tagName)/media/recent", parameters: parameters, success: { data in success?(data!) }, failure: failure)
request("/tags/\(tagName)/media/recent", parameters: parameters, success: success, failure: failure)
}

/// Search for tags by name.
Expand All @@ -55,6 +54,6 @@ extension Instagram {
///
/// - important: It requires *public_content* scope.
public func search(tag query: String, success: SuccessHandler<[InstagramTag]>?, failure: FailureHandler?) {
request("/tags/search", parameters: ["q": query], success: { data in success?(data!) }, failure: failure)
request("/tags/search", parameters: ["q": query], success: success, failure: failure)
}
}
11 changes: 5 additions & 6 deletions Sources/Endpoints/Users.swift
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

extension Instagram {

// MARK: - User Endpoints
// MARK: User Endpoints

/// Get information about a user.
///
Expand All @@ -18,7 +18,7 @@ extension Instagram {
///
/// - important: It requires *public_content* scope when getting information about a user other than yours.
public func user(_ userId: String, success: SuccessHandler<InstagramUser>?, failure: FailureHandler?) {
request("/users/\(userId)", success: { data in success?(data!) }, failure: failure)
request("/users/\(userId)", success: success, failure: failure)
}

/// Get the most recent media published by a user.
Expand All @@ -37,14 +37,13 @@ extension Instagram {
count: Int? = nil,
success: SuccessHandler<[InstagramMedia]>?,
failure: FailureHandler?) {

var parameters = Parameters()

parameters["max_id"] ??= maxId
parameters["min_id"] ??= minId
parameters["count"] ??= count

request("/users/\(userId)/media/recent", parameters: parameters, success: { data in success?(data!) }, failure: failure)
request("/users/\(userId)/media/recent", parameters: parameters, success: success, failure: failure)
}

/// Get the list of recent media liked by the currently authenticated user.
Expand All @@ -61,7 +60,7 @@ extension Instagram {
parameters["max_like_id"] ??= maxLikeId
parameters["count"] ??= count

request("/users/self/media/liked", parameters: parameters, success: { data in success?(data!) }, failure: failure)
request("/users/self/media/liked", parameters: parameters, success: success, failure: failure)
}

/// Get a list of users matching the query.
Expand All @@ -78,6 +77,6 @@ extension Instagram {
parameters["q"] = query
parameters["count"] ??= count

request("/users/search", parameters: parameters, success: { data in success?(data!) }, failure: failure)
request("/users/search", parameters: parameters, success: success, failure: failure)
}
}
Loading

0 comments on commit 0a5b52b

Please sign in to comment.