Skip to content

Commit d30e7d5

Browse files
author
Chris
authored
Merge pull request #11 from crelies/dev
Swift 5.3, Make use of function builder enhancements
2 parents 2dca777 + 6be8e59 commit d30e7d5

File tree

6 files changed

+15
-16
lines changed

6 files changed

+15
-16
lines changed

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
language: swift
2-
osx_image: xcode11.3
2+
osx_image: xcode12
33
script:
44
- swift package generate-xcodeproj
55
- xcodebuild clean test -destination 'name=iPhone 8' -scheme RemoteImage-Package -enableCodeCoverage YES -derivedDataPath .build/derivedData -quiet

Package.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// swift-tools-version:5.1
1+
// swift-tools-version:5.3
22
// The swift-tools-version declares the minimum version of Swift required to build this package.
33

44
import PackageDescription

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# RemoteImage
22

3-
[![Swift 5.1](https://img.shields.io/badge/swift-5.1-green.svg?longCache=true&style=flat-square)](https://developer.apple.com/swift)
3+
[![Swift 5.3](https://img.shields.io/badge/swift-5.3-green.svg?longCache=true&style=flat-square)](https://developer.apple.com/swift)
44
[![Platforms](https://img.shields.io/badge/platforms-iOS%20%7C%20macOS%20%7C%20tvOS-lightgrey.svg?longCache=true&style=flat-square)](https://www.apple.com)
55
[![Current Version](https://img.shields.io/github/v/tag/crelies/RemoteImage?longCache=true&style=flat-square)](https://github.com/crelies/RemoteImage)
66
[![Build status](https://travis-ci.com/crelies/RemoteImage.svg?token=THnaziKxRFFz1nKcsPgz&branch=dev)](https://travis-ci.com/crelies/RemoteImage)

Sources/RemoteImage/public/Services/RemoteImageService.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,8 @@ public final class RemoteImageService: NSObject, ObservableObject, RemoteImageSe
4040
}
4141
}
4242

43-
extension RemoteImageService {
44-
private func fetchImage(atURL url: URL) {
43+
private extension RemoteImageService {
44+
func fetchImage(atURL url: URL) {
4545
cancellable?.cancel()
4646

4747
let cacheKey = Self.cacheKeyProvider(.url(url))
@@ -71,7 +71,7 @@ extension RemoteImageService {
7171
}
7272
}
7373

74-
private func fetchImage(withLocalIdentifier localIdentifier: String) {
74+
func fetchImage(withLocalIdentifier localIdentifier: String) {
7575
let cacheKey = Self.cacheKeyProvider(.phAsset(localIdentifier: localIdentifier))
7676
if let image = Self.cache.object(forKey: cacheKey) {
7777
state = .image(image)

Sources/RemoteImage/public/Views/RemoteImage.swift

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,13 @@ public struct RemoteImage<ErrorView: View, ImageView: View, LoadingView: View>:
1919
@ObservedObject private var service = RemoteImageServiceFactory.makeRemoteImageService()
2020

2121
public var body: some View {
22-
Group {
23-
if service.state == .loading {
24-
loadingView()
25-
} else {
26-
service.state.error.map { errorView($0) }
27-
28-
service.state.image.map { self.imageView(Image(uiImage: $0)) }
29-
}
22+
switch service.state {
23+
case .loading:
24+
loadingView()
25+
case let .error(error):
26+
errorView(error)
27+
case let .image(uiImage):
28+
imageView(Image(uiImage: uiImage))
3029
}
3130
}
3231

Tests/RemoteImageTests/Views/RemoteImageTests.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ final class RemoteImageTests: XCTestCase {
2727

2828
do {
2929
let inspectableView = try view.body.inspect()
30-
let group = try inspectableView.group().first
31-
let textString = try group?.text().string()
30+
let text = try inspectableView.text()
31+
let textString = try text.string()
3232
XCTAssertEqual(textString, loadingStateViewString)
3333
} catch {
3434
XCTFail("\(error)")

0 commit comments

Comments
 (0)