Skip to content

Commit 8696776

Browse files
committed
Prepare for FLTCam migration to Swift
1 parent 2dff621 commit 8696776

38 files changed

+378
-272
lines changed

packages/camera/camera_avfoundation/CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
## 0.9.19+1
2+
3+
* Adds `audioCaptureDeviceFactory` to `FLTCamConfiguration`.
4+
* Renames the `lockCaptureOrientation` method of Objective-C type `FLTCam` when exported to Swift.
5+
* Renames arguments of the `captureOutput` method of Objective-C type `FLTCam` when exported to Swift.
6+
* Changes the `connection` argument type of the `captureOutput` method of the of `FLTCam` class to `AVCaptureConnection`.
7+
* Makes `minimum/maximumAvailableZoomFactor` and `minimum/maximumExposureOffset` fields of `FLTCam` readonly.
8+
19
## 0.9.19
210

311
* Migrates the CameraPlugin class to Swift.

packages/camera/camera_avfoundation/example/ios/Runner.xcodeproj/project.pbxproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@
6060
E1ABED6F2D943B2500AED9CC /* MockCaptureDevice.swift in Sources */ = {isa = PBXBuildFile; fileRef = E15BC7ED2D86D85500F66474 /* MockCaptureDevice.swift */; };
6161
E1ABED722D943DC700AED9CC /* MockCaptureDeviceInputFactory.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1ABED702D943DC700AED9CC /* MockCaptureDeviceInputFactory.swift */; };
6262
E1ABED732D943DC700AED9CC /* MockCaptureInput.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1ABED712D943DC700AED9CC /* MockCaptureInput.swift */; };
63-
E1FFEAAD2D6C8DD700B14107 /* MockFLTCam.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1FFEAAC2D6C8DD700B14107 /* MockFLTCam.swift */; };
63+
E1FFEAAD2D6C8DD700B14107 /* MockCamera.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1FFEAAC2D6C8DD700B14107 /* MockCamera.swift */; };
6464
E1FFEAAF2D6CDA8C00B14107 /* CameraPluginCreateCameraTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1FFEAAE2D6CDA8C00B14107 /* CameraPluginCreateCameraTests.swift */; };
6565
E1FFEAB12D6CDE5B00B14107 /* CameraPluginInitializeCameraTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1FFEAB02D6CDE5B00B14107 /* CameraPluginInitializeCameraTests.swift */; };
6666
/* End PBXBuildFile section */
@@ -154,7 +154,7 @@
154154
E1A5F4E22D80259C0005BA64 /* FLTCamSetFlashModeTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FLTCamSetFlashModeTests.swift; sourceTree = "<group>"; };
155155
E1ABED702D943DC700AED9CC /* MockCaptureDeviceInputFactory.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MockCaptureDeviceInputFactory.swift; sourceTree = "<group>"; };
156156
E1ABED712D943DC700AED9CC /* MockCaptureInput.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MockCaptureInput.swift; sourceTree = "<group>"; };
157-
E1FFEAAC2D6C8DD700B14107 /* MockFLTCam.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MockFLTCam.swift; sourceTree = "<group>"; };
157+
E1FFEAAC2D6C8DD700B14107 /* MockCamera.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MockCamera.swift; sourceTree = "<group>"; };
158158
E1FFEAAE2D6CDA8C00B14107 /* CameraPluginCreateCameraTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CameraPluginCreateCameraTests.swift; sourceTree = "<group>"; };
159159
E1FFEAB02D6CDE5B00B14107 /* CameraPluginInitializeCameraTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CameraPluginInitializeCameraTests.swift; sourceTree = "<group>"; };
160160
E67C6DBF6478BE708993169F /* Pods-RunnerTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.release.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.release.xcconfig"; sourceTree = "<group>"; };
@@ -245,7 +245,7 @@
245245
E142F1392D85940600824824 /* MockCapturePhotoOutput.swift */,
246246
E142F1372D85919700824824 /* MockDeviceOrientationProvider.swift */,
247247
E142F1352D8587F900824824 /* MockCameraDeviceDiscoverer.swift */,
248-
E1FFEAAC2D6C8DD700B14107 /* MockFLTCam.swift */,
248+
E1FFEAAC2D6C8DD700B14107 /* MockCamera.swift */,
249249
970ADABF2D6764CC00EFDCD9 /* MockEventChannel.swift */,
250250
E12C4FF72D68E85500515E70 /* MockFLTCameraPermissionManager.swift */,
251251
970ADABD2D6740A900EFDCD9 /* MockWritableData.swift */,
@@ -572,7 +572,7 @@
572572
E1ABED722D943DC700AED9CC /* MockCaptureDeviceInputFactory.swift in Sources */,
573573
977A25202D5A439300931E34 /* AvailableCamerasTests.swift in Sources */,
574574
E142681F2D8566230046CBBC /* CameraTestUtils.swift in Sources */,
575-
E1FFEAAD2D6C8DD700B14107 /* MockFLTCam.swift in Sources */,
575+
E1FFEAAD2D6C8DD700B14107 /* MockCamera.swift in Sources */,
576576
E16602952D8471C0003CFE12 /* FLTCamZoomTests.swift in Sources */,
577577
97BD4A102D5CE13500F857D5 /* CameraSessionPresetsTests.swift in Sources */,
578578
979B3E022D5BA48F009BDE1A /* CameraOrientationTests.swift in Sources */,

packages/camera/camera_avfoundation/example/ios/RunnerTests/AvailableCamerasTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import XCTest
99

1010
// Import Objectice-C part of the implementation when SwiftPM is used.
1111
#if canImport(camera_avfoundation_objc)
12-
@testable import camera_avfoundation_objc
12+
import camera_avfoundation_objc
1313
#endif
1414

1515
final class AvailableCamerasTest: XCTestCase {

packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraCaptureSessionQueueRaceConditionTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import XCTest
88

99
// Import Objectice-C part of the implementation when SwiftPM is used.
1010
#if canImport(camera_avfoundation_objc)
11-
@testable import camera_avfoundation_objc
11+
import camera_avfoundation_objc
1212
#endif
1313

1414
final class CameraCaptureSessionQueueRaceConditionTests: XCTestCase {

packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraMethodChannelTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import XCTest
99

1010
// Import Objectice-C part of the implementation when SwiftPM is used.
1111
#if canImport(camera_avfoundation_objc)
12-
@testable import camera_avfoundation_objc
12+
import camera_avfoundation_objc
1313
#endif
1414

1515
final class CameraMethodChannelTests: XCTestCase {

packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraOrientationTests.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import XCTest
1010

1111
// Import Objectice-C part of the implementation when SwiftPM is used.
1212
#if canImport(camera_avfoundation_objc)
13-
@testable import camera_avfoundation_objc
13+
import camera_avfoundation_objc
1414
#endif
1515

1616
private final class MockUIDevice: UIDevice {
@@ -24,14 +24,14 @@ private final class MockUIDevice: UIDevice {
2424
final class CameraOrientationTests: XCTestCase {
2525
private func createCameraPlugin() -> (
2626
cameraPlugin: CameraPlugin,
27-
mockCamera: MockFLTCam,
27+
mockCamera: MockCamera,
2828
mockEventAPI: MockGlobalEventApi,
2929
mockDevice: MockCaptureDevice,
3030
mockDeviceDiscoverer: MockCameraDeviceDiscoverer,
3131
captureSessionQueue: DispatchQueue
3232
) {
3333
let mockDevice = MockCaptureDevice()
34-
let mockCamera = MockFLTCam()
34+
let mockCamera = MockCamera()
3535
let mockEventAPI = MockGlobalEventApi()
3636
let mockDeviceDiscoverer = MockCameraDeviceDiscoverer()
3737
let captureSessionQueue = DispatchQueue(label: "io.flutter.camera.captureSessionQueue")

packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraPermissionTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import XCTest
99

1010
// Import Objectice-C part of the implementation when SwiftPM is used.
1111
#if canImport(camera_avfoundation_objc)
12-
@testable import camera_avfoundation_objc
12+
import camera_avfoundation_objc
1313
#endif
1414

1515
private final class MockPermissionService: NSObject, FLTPermissionServicing {

packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraPluginCreateCameraTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import XCTest
88

99
// Import Objectice-C part of the implementation when SwiftPM is used.
1010
#if canImport(camera_avfoundation_objc)
11-
@testable import camera_avfoundation_objc
11+
import camera_avfoundation_objc
1212
#endif
1313

1414
final class CameraPluginCreateCameraTests: XCTestCase {

packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraPluginDelegatingMethodTests.swift

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@ import XCTest
88

99
// Import Objectice-C part of the implementation when SwiftPM is used.
1010
#if canImport(camera_avfoundation_objc)
11-
@testable import camera_avfoundation_objc
11+
import camera_avfoundation_objc
1212
#endif
1313

1414
/// Tests of `CameraPlugin` methods delegating to `FLTCam` instance
1515
final class CameraPluginDelegatingMethodTests: XCTestCase {
16-
private func createCameraPlugin() -> (CameraPlugin, MockFLTCam) {
17-
let mockCamera = MockFLTCam()
16+
private func createCameraPlugin() -> (CameraPlugin, MockCamera) {
17+
let mockCamera = MockCamera()
1818

1919
let cameraPlugin = CameraPlugin(
2020
registry: MockFlutterTextureRegistry(),
@@ -39,7 +39,7 @@ final class CameraPluginDelegatingMethodTests: XCTestCase {
3939
let targetOrientation = FCPPlatformDeviceOrientation.landscapeLeft
4040

4141
var lockCaptureCalled = false
42-
mockCamera.lockCaptureStub = { orientation in
42+
mockCamera.lockCaptureOrientationStub = { orientation in
4343
XCTAssertEqual(orientation, targetOrientation)
4444
lockCaptureCalled = true
4545
}

packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraPluginInitializeCameraTests.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,14 @@ import XCTest
88

99
// Import Objectice-C part of the implementation when SwiftPM is used.
1010
#if canImport(camera_avfoundation_objc)
11-
@testable import camera_avfoundation_objc
11+
import camera_avfoundation_objc
1212
#endif
1313

1414
final class CameraPluginInitializeCameraTests: XCTestCase {
1515
private func createCameraPlugin() -> (
16-
CameraPlugin, MockFLTCam, MockGlobalEventApi, DispatchQueue
16+
CameraPlugin, MockCamera, MockGlobalEventApi, DispatchQueue
1717
) {
18-
let mockCamera = MockFLTCam()
18+
let mockCamera = MockCamera()
1919
let mockGlobalEventApi = MockGlobalEventApi()
2020
let captureSessionQueue = DispatchQueue(label: "io.flutter.camera.captureSessionQueue")
2121

packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraPreviewPauseTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import XCTest
99

1010
// Import Objectice-C part of the implementation when SwiftPM is used.
1111
#if canImport(camera_avfoundation_objc)
12-
@testable import camera_avfoundation_objc
12+
import camera_avfoundation_objc
1313
#endif
1414

1515
final class CameraPreviewPauseTests: XCTestCase {

packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraPropertiesTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import XCTest
1010

1111
// Import Objectice-C part of the implementation when SwiftPM is used.
1212
#if canImport(camera_avfoundation_objc)
13-
@testable import camera_avfoundation_objc
13+
import camera_avfoundation_objc
1414
#endif
1515

1616
final class CameraPropertiesTests: XCTestCase {

packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraSessionPresetsTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import XCTest
99

1010
// Import Objectice-C part of the implementation when SwiftPM is used.
1111
#if canImport(camera_avfoundation_objc)
12-
@testable import camera_avfoundation_objc
12+
import camera_avfoundation_objc
1313
#endif
1414

1515
/// Includes test cases related to resolution presets setting operations for FLTCam class.

packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraSettingsTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import XCTest
99

1010
// Import Objectice-C part of the implementation when SwiftPM is used.
1111
#if canImport(camera_avfoundation_objc)
12-
@testable import camera_avfoundation_objc
12+
import camera_avfoundation_objc
1313
#endif
1414

1515
private let testResolutionPreset = FCPPlatformResolutionPreset.medium

packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraTestUtils.swift

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ enum CameraTestUtils {
6161
resolutionPreset: FCPPlatformResolutionPreset.medium),
6262
mediaSettingsWrapper: FLTCamMediaSettingsAVWrapper(),
6363
captureDeviceFactory: { _ in captureDeviceMock },
64+
audioCaptureDeviceFactory: { MockCaptureDevice() },
6465
captureSessionFactory: { videoSessionMock },
6566
captureSessionQueue: captureSessionQueue,
6667
captureDeviceInputFactory: MockCaptureDeviceInputFactory(),
@@ -173,6 +174,14 @@ enum CameraTestUtils {
173174

174175
return sampleBuffer!
175176
}
177+
178+
static func createTestAudioOutput() -> AVCaptureOutput {
179+
return AVCaptureAudioDataOutput()
180+
}
181+
182+
static func createTestConnection(_ output: AVCaptureOutput) -> AVCaptureConnection {
183+
return AVCaptureConnection(inputPorts: [], output: output)
184+
}
176185
}
177186

178187
extension XCTestCase {

packages/camera/camera_avfoundation/example/ios/RunnerTests/FLTCamExposureTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import XCTest
88

99
// Import Objectice-C part of the implementation when SwiftPM is used.
1010
#if canImport(camera_avfoundation_objc)
11-
@testable import camera_avfoundation_objc
11+
import camera_avfoundation_objc
1212
#endif
1313

1414
final class FLTCamExposureTests: XCTestCase {

packages/camera/camera_avfoundation/example/ios/RunnerTests/FLTCamFocusTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import XCTest
99

1010
// Import Objectice-C part of the implementation when SwiftPM is used.
1111
#if canImport(camera_avfoundation_objc)
12-
@testable import camera_avfoundation_objc
12+
import camera_avfoundation_objc
1313
#endif
1414

1515
final class FLTCamSetFocusModeTests: XCTestCase {

packages/camera/camera_avfoundation/example/ios/RunnerTests/FLTCamSetDeviceOrientationTests.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import XCTest
99

1010
// Import Objectice-C part of the implementation when SwiftPM is used.
1111
#if canImport(camera_avfoundation_objc)
12-
@testable import camera_avfoundation_objc
12+
import camera_avfoundation_objc
1313
#endif
1414

1515
final class FLTCamSetDeviceOrientationTests: XCTestCase {
@@ -73,7 +73,7 @@ final class FLTCamSetDeviceOrientationTests: XCTestCase {
7373
videoSetVideoOrientationCalled = true
7474
}
7575

76-
camera.lockCapture(FCPPlatformDeviceOrientation.portraitDown)
76+
camera.lockCaptureOrientation(FCPPlatformDeviceOrientation.portraitDown)
7777

7878
camera.setDeviceOrientation(.landscapeLeft)
7979

packages/camera/camera_avfoundation/example/ios/RunnerTests/FLTCamSetFlashModeTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import XCTest
99

1010
// Import Objectice-C part of the implementation when SwiftPM is used.
1111
#if canImport(camera_avfoundation_objc)
12-
@testable import camera_avfoundation_objc
12+
import camera_avfoundation_objc
1313
#endif
1414

1515
final class FLTCamSetFlashModeTests: XCTestCase {

packages/camera/camera_avfoundation/example/ios/RunnerTests/FLTCamZoomTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import XCTest
99

1010
// Import Objectice-C part of the implementation when SwiftPM is used.
1111
#if canImport(camera_avfoundation_objc)
12-
@testable import camera_avfoundation_objc
12+
import camera_avfoundation_objc
1313
#endif
1414

1515
final class FLTCamZoomTests: XCTestCase {

0 commit comments

Comments
 (0)