From 3b49b4d61642f4063951767ef5d2cd0f34e28403 Mon Sep 17 00:00:00 2001 From: Camille Simon Date: Wed, 6 Aug 2025 06:12:21 -0700 Subject: [PATCH 1/3] base changes --- packages/camera/camera_android_camerax/CHANGELOG.md | 6 ++++++ .../java/io/flutter/plugins/camerax/PreviewProxyApi.java | 2 +- .../test/java/io/flutter/plugins/camerax/PreviewTest.java | 4 ++-- packages/camera/camera_android_camerax/pubspec.yaml | 6 +++--- script/tool/lib/src/common/core.dart | 1 + 5 files changed, 13 insertions(+), 6 deletions(-) diff --git a/packages/camera/camera_android_camerax/CHANGELOG.md b/packages/camera/camera_android_camerax/CHANGELOG.md index 02a72cd9cd0..4e8c96aaa21 100644 --- a/packages/camera/camera_android_camerax/CHANGELOG.md +++ b/packages/camera/camera_android_camerax/CHANGELOG.md @@ -1,3 +1,9 @@ +## 0.6.20 + +* Ensures that a new surface is provided every time that one is requested to render the camera preview + to fix pausing and resuming the preview. +* Updates minimum supported SDK version to Flutter 3.32.8/Dart 3.8.1. + ## 0.6.19+1 * Fixes incorrect camera switching by selecting a camera via its CameraInfo. diff --git a/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/PreviewProxyApi.java b/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/PreviewProxyApi.java index 5ebb5fbb739..48d94b65e10 100644 --- a/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/PreviewProxyApi.java +++ b/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/PreviewProxyApi.java @@ -121,7 +121,7 @@ public void onSurfaceCleanup() { // Provide surface. surfaceProducer.setSize( request.getResolution().getWidth(), request.getResolution().getHeight()); - Surface flutterSurface = surfaceProducer.getSurface(); + Surface flutterSurface = surfaceProducer.getForcedNewSurface(); request.provideSurface( flutterSurface, Executors.newSingleThreadExecutor(), diff --git a/packages/camera/camera_android_camerax/android/src/test/java/io/flutter/plugins/camerax/PreviewTest.java b/packages/camera/camera_android_camerax/android/src/test/java/io/flutter/plugins/camerax/PreviewTest.java index 5c3f3578a24..45b6be96375 100644 --- a/packages/camera/camera_android_camerax/android/src/test/java/io/flutter/plugins/camerax/PreviewTest.java +++ b/packages/camera/camera_android_camerax/android/src/test/java/io/flutter/plugins/camerax/PreviewTest.java @@ -103,7 +103,7 @@ TextureRegistry getTextureRegistry() { ArgumentCaptor.forClass(TextureRegistry.SurfaceProducer.Callback.class); when(mockSurfaceRequest.getResolution()).thenReturn(new Size(5, 6)); - when(mockSurfaceProducer.getSurface()).thenReturn(mock(Surface.class)); + when(mockSurfaceProducer.getForcedNewSurface()).thenReturn(mock(Surface.class)); final Preview.SurfaceProvider previewSurfaceProvider = api.createSurfaceProvider(mockSurfaceProducer, mockSystemServicesManager); @@ -155,7 +155,7 @@ TextureRegistry getTextureRegistry() { when(mockSurfaceRequest.getResolution()) .thenReturn(new Size(resolutionWidth, resolutionHeight)); - when(mockSurfaceProducer.getSurface()).thenReturn(mockSurface); + when(mockSurfaceProducer.getForcedNewSurface()).thenReturn(mockSurface); final ArgumentCaptor surfaceCaptor = ArgumentCaptor.forClass(Surface.class); final ArgumentCaptor> consumerCaptor = diff --git a/packages/camera/camera_android_camerax/pubspec.yaml b/packages/camera/camera_android_camerax/pubspec.yaml index 4238defac16..fea407b822d 100644 --- a/packages/camera/camera_android_camerax/pubspec.yaml +++ b/packages/camera/camera_android_camerax/pubspec.yaml @@ -2,11 +2,11 @@ name: camera_android_camerax description: Android implementation of the camera plugin using the CameraX library. repository: https://github.com/flutter/packages/tree/main/packages/camera/camera_android_camerax issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+camera%22 -version: 0.6.19+1 +version: 0.6.20 environment: - sdk: ^3.7.0 - flutter: ">=3.29.0" + sdk: ^3.8.1 + flutter: ">=3.32.8" flutter: plugin: diff --git a/script/tool/lib/src/common/core.dart b/script/tool/lib/src/common/core.dart index 484d864aecf..f4503693ad3 100644 --- a/script/tool/lib/src/common/core.dart +++ b/script/tool/lib/src/common/core.dart @@ -91,6 +91,7 @@ final Map _dartSdkForFlutterSdk = { Version(3, 29, 0): Version(3, 7, 0), Version(3, 29, 3): Version(3, 7, 2), Version(3, 32, 0): Version(3, 8, 0), + Version(3, 32, 8): Version(3, 8, 1), }; /// Returns the version of the Dart SDK that shipped with the given Flutter From 074fa4d8dbd8912fbcb485687535a418d846fb87 Mon Sep 17 00:00:00 2001 From: Camille Simon Date: Wed, 6 Aug 2025 06:15:45 -0700 Subject: [PATCH 2/3] Lowkey take Gemini advice --- packages/camera/camera_android_camerax/CHANGELOG.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/camera/camera_android_camerax/CHANGELOG.md b/packages/camera/camera_android_camerax/CHANGELOG.md index 4e8c96aaa21..1262c022827 100644 --- a/packages/camera/camera_android_camerax/CHANGELOG.md +++ b/packages/camera/camera_android_camerax/CHANGELOG.md @@ -1,7 +1,6 @@ ## 0.6.20 -* Ensures that a new surface is provided every time that one is requested to render the camera preview - to fix pausing and resuming the preview. +* Fixes pausing and resuming the camera preview. * Updates minimum supported SDK version to Flutter 3.32.8/Dart 3.8.1. ## 0.6.19+1 From 3cd839aae492e62a645f8c1d2edb44f207d71d81 Mon Sep 17 00:00:00 2001 From: Camille Simon Date: Wed, 6 Aug 2025 07:39:04 -0700 Subject: [PATCH 3/3] reformat --- .../lib/src/android_camera_camerax.dart | 92 +- .../lib/src/camerax_library.dart | 20 +- .../lib/src/camerax_library.g.dart | 4 +- .../lib/src/image_reader_rotated_preview.dart | 5 +- .../lib/src/rotated_preview_utils.dart | 7 +- .../src/surface_texture_rotated_preview.dart | 5 +- .../test/android_camera_camerax_test.dart | 4025 +++++++++-------- .../android_camera_camerax_test.mocks.dart | 172 +- .../test/preview_rotation_test.dart | 586 ++- 9 files changed, 2530 insertions(+), 2386 deletions(-) diff --git a/packages/camera/camera_android_camerax/lib/src/android_camera_camerax.dart b/packages/camera/camera_android_camerax/lib/src/android_camera_camerax.dart index 47502f865c1..2055e87ae49 100644 --- a/packages/camera/camera_android_camerax/lib/src/android_camera_camerax.dart +++ b/packages/camera/camera_android_camerax/lib/src/android_camera_camerax.dart @@ -289,12 +289,14 @@ class AndroidCameraCameraX extends CameraPlatform { // Determine the lens direction by filtering the CameraInfo // TODO(gmackall): replace this with call to CameraInfo.getLensFacing when changes containing that method are available if ((await proxy - .newCameraSelector(requireLensFacing: LensFacing.back) - .filter([cameraInfo])).isNotEmpty) { + .newCameraSelector(requireLensFacing: LensFacing.back) + .filter([cameraInfo])) + .isNotEmpty) { cameraLensDirection = CameraLensDirection.back; } else if ((await proxy - .newCameraSelector(requireLensFacing: LensFacing.front) - .filter([cameraInfo])).isNotEmpty) { + .newCameraSelector(requireLensFacing: LensFacing.front) + .filter([cameraInfo])) + .isNotEmpty) { cameraLensDirection = CameraLensDirection.front; } else { //Skip this CameraInfo as its lens direction is unknown @@ -439,13 +441,13 @@ class AndroidCameraCameraX extends CameraPlatform { .toDouble(); sensorOrientationDegrees = cameraDescription.sensorOrientation.toDouble(); - _handlesCropAndRotation = - await preview!.surfaceProducerHandlesCropAndRotation(); + _handlesCropAndRotation = await preview! + .surfaceProducerHandlesCropAndRotation(); _initialDeviceOrientation = _deserializeDeviceOrientation( await deviceOrientationManager.getUiOrientation(), ); - _initialDefaultDisplayRotation = - await deviceOrientationManager.getDefaultDisplayRotation(); + _initialDefaultDisplayRotation = await deviceOrientationManager + .getDefaultDisplayRotation(); return flutterSurfaceTextureId; } @@ -476,8 +478,8 @@ class AndroidCameraCameraX extends CameraPlatform { ); } - final ResolutionInfo previewResolutionInfo = - (await preview!.getResolutionInfo())!; + final ResolutionInfo previewResolutionInfo = (await preview! + .getResolutionInfo())!; // Mark auto-focus, auto-exposure and setting points for focus & exposure // as available operations as CameraX does its best across devices to @@ -647,10 +649,9 @@ class AndroidCameraCameraX extends CameraPlatform { case FocusMode.auto: // Determine auto-focus point to restore, if any. We do not restore // default auto-focus point if set previously to lock focus. - final MeteringPoint? unLockedFocusPoint = - _defaultFocusPointLocked - ? null - : currentFocusMeteringAction!.meteringPointsAf.first; + final MeteringPoint? unLockedFocusPoint = _defaultFocusPointLocked + ? null + : currentFocusMeteringAction!.meteringPointsAf.first; _defaultFocusPointLocked = false; autoFocusPoint = unLockedFocusPoint; disableAutoCancel = false; @@ -661,10 +662,9 @@ class AndroidCameraCameraX extends CameraPlatform { if (currentFocusMeteringAction != null) { final List possibleCurrentAfPoints = currentFocusMeteringAction!.meteringPointsAf; - lockedFocusPoint = - possibleCurrentAfPoints.isEmpty - ? null - : possibleCurrentAfPoints.first; + lockedFocusPoint = possibleCurrentAfPoints.isEmpty + ? null + : possibleCurrentAfPoints.first; } // If there isn't, lock center of entire sensor area by default. @@ -1494,13 +1494,12 @@ class AndroidCameraCameraX extends CameraPlatform { ); final ResolutionFilter resolutionFilter = proxy .createWithOnePreferredSizeResolutionFilter(preferredSize: boundSize); - final AspectRatioStrategy? aspectRatioStrategy = - aspectRatio == null - ? null - : proxy.newAspectRatioStrategy( - preferredAspectRatio: aspectRatio, - fallbackRule: AspectRatioStrategyFallbackRule.auto, - ); + final AspectRatioStrategy? aspectRatioStrategy = aspectRatio == null + ? null + : proxy.newAspectRatioStrategy( + preferredAspectRatio: aspectRatio, + fallbackRule: AspectRatioStrategyFallbackRule.auto, + ); return proxy.newResolutionSelector( resolutionStrategy: resolutionStrategy, resolutionFilter: resolutionFilter, @@ -1617,17 +1616,17 @@ class AndroidCameraCameraX extends CameraPlatform { // Remove metering point with specified meteringMode from current focus // and metering action, as only one focus or exposure point may be set // at once in this plugin. - final List<(MeteringPoint, MeteringMode)> newMeteringPointInfos = - originalMeteringPoints - .where( - ((MeteringPoint, MeteringMode) meteringPointInfo) => - // meteringPointInfo may technically include points without a - // mode specified, but this logic is safe because this plugin - // only uses points that explicitly have mode - // FocusMeteringAction.flagAe or FocusMeteringAction.flagAf. - meteringPointInfo.$2 != meteringMode, - ) - .toList(); + final List<(MeteringPoint, MeteringMode)> + newMeteringPointInfos = originalMeteringPoints + .where( + ((MeteringPoint, MeteringMode) meteringPointInfo) => + // meteringPointInfo may technically include points without a + // mode specified, but this logic is safe because this plugin + // only uses points that explicitly have mode + // FocusMeteringAction.flagAe or FocusMeteringAction.flagAf. + meteringPointInfo.$2 != meteringMode, + ) + .toList(); if (newMeteringPointInfos.isEmpty) { // If no other metering points were specified, cancel any previously @@ -1664,17 +1663,16 @@ class AndroidCameraCameraX extends CameraPlatform { final Iterable<(MeteringPoint, MeteringMode)> originalMeteringPoints = _combineMeteringPoints(currentFocusMeteringAction!); - newMeteringPointInfos = - originalMeteringPoints - .where( - ((MeteringPoint, MeteringMode) meteringPointInfo) => - // meteringPointInfo may technically include points without a - // mode specified, but this logic is safe because this plugin - // only uses points that explicitly have mode - // FocusMeteringAction.flagAe or FocusMeteringAction.flagAf. - meteringPointInfo.$2 != meteringMode, - ) - .toList(); + newMeteringPointInfos = originalMeteringPoints + .where( + ((MeteringPoint, MeteringMode) meteringPointInfo) => + // meteringPointInfo may technically include points without a + // mode specified, but this logic is safe because this plugin + // only uses points that explicitly have mode + // FocusMeteringAction.flagAe or FocusMeteringAction.flagAf. + meteringPointInfo.$2 != meteringMode, + ) + .toList(); } newMeteringPointInfos.add((meteringPoint, meteringMode)); diff --git a/packages/camera/camera_android_camerax/lib/src/camerax_library.dart b/packages/camera/camera_android_camerax/lib/src/camerax_library.dart index 2c0d0a43747..e692d408fa2 100644 --- a/packages/camera/camera_android_camerax/lib/src/camerax_library.dart +++ b/packages/camera/camera_android_camerax/lib/src/camerax_library.dart @@ -37,17 +37,15 @@ void setUpGenerics({ ); camerax.CameraInfo.pigeon_setUpMessageHandlers( - pigeon_newInstance: ( - int sensorRotationDegrees, - camerax.ExposureState exposureState, - ) { - return CameraInfo.detached( - sensorRotationDegrees: sensorRotationDegrees, - exposureState: exposureState, - pigeon_binaryMessenger: pigeonBinaryMessenger, - pigeon_instanceManager: pigeonInstanceManager, - ); - }, + pigeon_newInstance: + (int sensorRotationDegrees, camerax.ExposureState exposureState) { + return CameraInfo.detached( + sensorRotationDegrees: sensorRotationDegrees, + exposureState: exposureState, + pigeon_binaryMessenger: pigeonBinaryMessenger, + pigeon_instanceManager: pigeonInstanceManager, + ); + }, ); } diff --git a/packages/camera/camera_android_camerax/lib/src/camerax_library.g.dart b/packages/camera/camera_android_camerax/lib/src/camerax_library.g.dart index ddbdbcc94d3..b2f730b89c1 100644 --- a/packages/camera/camera_android_camerax/lib/src/camerax_library.g.dart +++ b/packages/camera/camera_android_camerax/lib/src/camerax_library.g.dart @@ -384,8 +384,8 @@ class PigeonInstanceManager { final PigeonInternalProxyApiBaseClass? strongInstance = _strongInstances[identifier]; if (strongInstance != null) { - final PigeonInternalProxyApiBaseClass copy = - strongInstance.pigeon_copy(); + final PigeonInternalProxyApiBaseClass copy = strongInstance + .pigeon_copy(); _identifiers[copy] = identifier; _weakInstances[identifier] = WeakReference(copy); diff --git a/packages/camera/camera_android_camerax/lib/src/image_reader_rotated_preview.dart b/packages/camera/camera_android_camerax/lib/src/image_reader_rotated_preview.dart index 2cb8f44bf1a..49cf6c48509 100644 --- a/packages/camera/camera_android_camerax/lib/src/image_reader_rotated_preview.dart +++ b/packages/camera/camera_android_camerax/lib/src/image_reader_rotated_preview.dart @@ -78,8 +78,9 @@ final class _ImageReaderRotatedPreviewState late StreamSubscription deviceOrientationSubscription; Future _getCurrentDefaultDisplayRotationDegrees() async { - final int currentDefaultDisplayRotationQuarterTurns = - await widget.deviceOrientationManager.getDefaultDisplayRotation(); + final int currentDefaultDisplayRotationQuarterTurns = await widget + .deviceOrientationManager + .getDefaultDisplayRotation(); return getQuarterTurnsFromSurfaceRotationConstant( currentDefaultDisplayRotationQuarterTurns, ) * diff --git a/packages/camera/camera_android_camerax/lib/src/rotated_preview_utils.dart b/packages/camera/camera_android_camerax/lib/src/rotated_preview_utils.dart index cfebe6976d5..ae3152d7ff4 100644 --- a/packages/camera/camera_android_camerax/lib/src/rotated_preview_utils.dart +++ b/packages/camera/camera_android_camerax/lib/src/rotated_preview_utils.dart @@ -15,10 +15,9 @@ int getQuarterTurnsFromSurfaceRotationConstant(int surfaceRotationConstant) { Surface.rotation90 => 3, Surface.rotation180 => 2, Surface.rotation270 => 1, - int() => - throw ArgumentError( - '$surfaceRotationConstant is an unknown Surface rotation constant, so counter-clockwise quarter turns cannot be determined.', - ), + int() => throw ArgumentError( + '$surfaceRotationConstant is an unknown Surface rotation constant, so counter-clockwise quarter turns cannot be determined.', + ), }; } diff --git a/packages/camera/camera_android_camerax/lib/src/surface_texture_rotated_preview.dart b/packages/camera/camera_android_camerax/lib/src/surface_texture_rotated_preview.dart index bdfa3f7d2bd..a69e0359812 100644 --- a/packages/camera/camera_android_camerax/lib/src/surface_texture_rotated_preview.dart +++ b/packages/camera/camera_android_camerax/lib/src/surface_texture_rotated_preview.dart @@ -57,8 +57,9 @@ final class _SurfaceTextureRotatedPreviewState late Future defaultDisplayRotationQuarterTurns; Future _getCurrentDefaultDisplayRotationQuarterTurns() async { - final int currentDefaultDisplayRotationQuarterTurns = - await widget.deviceOrientationManager.getDefaultDisplayRotation(); + final int currentDefaultDisplayRotationQuarterTurns = await widget + .deviceOrientationManager + .getDefaultDisplayRotation(); return getQuarterTurnsFromSurfaceRotationConstant( currentDefaultDisplayRotationQuarterTurns, ); diff --git a/packages/camera/camera_android_camerax/test/android_camera_camerax_test.dart b/packages/camera/camera_android_camerax/test/android_camera_camerax_test.dart index e9b1bb7598c..14141986808 100644 --- a/packages/camera/camera_android_camerax/test/android_camera_camerax_test.dart +++ b/packages/camera/camera_android_camerax/test/android_camera_camerax_test.dart @@ -159,33 +159,35 @@ void main() { final ResolutionStrategy highestAvailableStrategyResolutionStrategy = MockResolutionStrategy(); proxy = CameraXProxy( - getInstanceProcessCameraProvider: ({ - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) async { - return mockProcessCameraProvider; - }, - newCameraSelector: ({ - LensFacing? requireLensFacing, - CameraInfo? cameraInfoForFilter, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - switch (requireLensFacing) { - case LensFacing.front: - return MockCameraSelector(); - case LensFacing.back: - case LensFacing.external: - case LensFacing.unknown: - case null: - } + getInstanceProcessCameraProvider: + ({ + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) async { + return mockProcessCameraProvider; + }, + newCameraSelector: + ({ + LensFacing? requireLensFacing, + CameraInfo? cameraInfoForFilter, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + switch (requireLensFacing) { + case LensFacing.front: + return MockCameraSelector(); + case LensFacing.back: + case LensFacing.external: + case LensFacing.unknown: + case null: + } - return MockCameraSelector(); - }, + return MockCameraSelector(); + }, newPreview: newPreview ?? ({ @@ -203,101 +205,107 @@ void main() { when(mockPreview.resolutionSelector).thenReturn(resolutionSelector); return mockPreview; }, - newImageCapture: ({ - int? targetRotation, - CameraXFlashMode? flashMode, - ResolutionSelector? resolutionSelector, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockImageCapture mockImageCapture = MockImageCapture(); - when( - mockImageCapture.resolutionSelector, - ).thenReturn(resolutionSelector); - return mockImageCapture; - }, - newRecorder: ({ - int? aspectRatio, - int? targetVideoEncodingBitRate, - QualitySelector? qualitySelector, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockRecorder mockRecorder = MockRecorder(); - when( - mockRecorder.getQualitySelector(), - ).thenAnswer((_) async => qualitySelector ?? MockQualitySelector()); - return mockRecorder; - }, - withOutputVideoCapture: ({ - required VideoOutput videoOutput, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockVideoCapture(); - }, - newImageAnalysis: ({ - int? targetRotation, - ResolutionSelector? resolutionSelector, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockImageAnalysis mockImageAnalysis = MockImageAnalysis(); - when( - mockImageAnalysis.resolutionSelector, - ).thenReturn(resolutionSelector); - return mockImageAnalysis; - }, - newResolutionStrategy: ({ - required CameraSize boundSize, - required ResolutionStrategyFallbackRule fallbackRule, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockResolutionStrategy resolutionStrategy = - MockResolutionStrategy(); - when( - resolutionStrategy.getBoundSize(), - ).thenAnswer((_) async => boundSize); - when( - resolutionStrategy.getFallbackRule(), - ).thenAnswer((_) async => fallbackRule); - return resolutionStrategy; - }, - newResolutionSelector: ({ - AspectRatioStrategy? aspectRatioStrategy, - ResolutionStrategy? resolutionStrategy, - ResolutionFilter? resolutionFilter, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockResolutionSelector mockResolutionSelector = - MockResolutionSelector(); - when(mockResolutionSelector.getAspectRatioStrategy()).thenAnswer( - (_) async => - aspectRatioStrategy ?? - proxy.ratio_4_3FallbackAutoStrategyAspectRatioStrategy(), - ); - when( - mockResolutionSelector.resolutionStrategy, - ).thenReturn(resolutionStrategy); - when( - mockResolutionSelector.resolutionFilter, - ).thenReturn(resolutionFilter); - return mockResolutionSelector; - }, + newImageCapture: + ({ + int? targetRotation, + CameraXFlashMode? flashMode, + ResolutionSelector? resolutionSelector, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockImageCapture mockImageCapture = MockImageCapture(); + when( + mockImageCapture.resolutionSelector, + ).thenReturn(resolutionSelector); + return mockImageCapture; + }, + newRecorder: + ({ + int? aspectRatio, + int? targetVideoEncodingBitRate, + QualitySelector? qualitySelector, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockRecorder mockRecorder = MockRecorder(); + when( + mockRecorder.getQualitySelector(), + ).thenAnswer((_) async => qualitySelector ?? MockQualitySelector()); + return mockRecorder; + }, + withOutputVideoCapture: + ({ + required VideoOutput videoOutput, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockVideoCapture(); + }, + newImageAnalysis: + ({ + int? targetRotation, + ResolutionSelector? resolutionSelector, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockImageAnalysis mockImageAnalysis = MockImageAnalysis(); + when( + mockImageAnalysis.resolutionSelector, + ).thenReturn(resolutionSelector); + return mockImageAnalysis; + }, + newResolutionStrategy: + ({ + required CameraSize boundSize, + required ResolutionStrategyFallbackRule fallbackRule, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockResolutionStrategy resolutionStrategy = + MockResolutionStrategy(); + when( + resolutionStrategy.getBoundSize(), + ).thenAnswer((_) async => boundSize); + when( + resolutionStrategy.getFallbackRule(), + ).thenAnswer((_) async => fallbackRule); + return resolutionStrategy; + }, + newResolutionSelector: + ({ + AspectRatioStrategy? aspectRatioStrategy, + ResolutionStrategy? resolutionStrategy, + ResolutionFilter? resolutionFilter, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockResolutionSelector mockResolutionSelector = + MockResolutionSelector(); + when(mockResolutionSelector.getAspectRatioStrategy()).thenAnswer( + (_) async => + aspectRatioStrategy ?? + proxy.ratio_4_3FallbackAutoStrategyAspectRatioStrategy(), + ); + when( + mockResolutionSelector.resolutionStrategy, + ).thenReturn(resolutionStrategy); + when( + mockResolutionSelector.resolutionFilter, + ).thenReturn(resolutionFilter); + return mockResolutionSelector; + }, fromQualitySelector: fromQualitySelector ?? ({ @@ -310,62 +318,66 @@ void main() { }) { return MockQualitySelector(); }, - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, - newSystemServicesManager: ({ - required void Function(SystemServicesManager, String) onCameraError, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockSystemServicesManager(); - }, - newDeviceOrientationManager: ({ - required void Function(DeviceOrientationManager, String) - onDeviceOrientationChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockDeviceOrientationManager manager = - MockDeviceOrientationManager(); - when(manager.getUiOrientation()).thenAnswer((_) async { - return 'PORTRAIT_UP'; - }); - return manager; - }, - newAspectRatioStrategy: ({ - required AspectRatio preferredAspectRatio, - required AspectRatioStrategyFallbackRule fallbackRule, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockAspectRatioStrategy mockAspectRatioStrategy = - MockAspectRatioStrategy(); - when( - mockAspectRatioStrategy.getFallbackRule(), - ).thenAnswer((_) async => fallbackRule); - when( - mockAspectRatioStrategy.getPreferredAspectRatio(), - ).thenAnswer((_) async => preferredAspectRatio); - return mockAspectRatioStrategy; - }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, + newSystemServicesManager: + ({ + required void Function(SystemServicesManager, String) onCameraError, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockSystemServicesManager(); + }, + newDeviceOrientationManager: + ({ + required void Function(DeviceOrientationManager, String) + onDeviceOrientationChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockDeviceOrientationManager manager = + MockDeviceOrientationManager(); + when(manager.getUiOrientation()).thenAnswer((_) async { + return 'PORTRAIT_UP'; + }); + return manager; + }, + newAspectRatioStrategy: + ({ + required AspectRatio preferredAspectRatio, + required AspectRatioStrategyFallbackRule fallbackRule, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockAspectRatioStrategy mockAspectRatioStrategy = + MockAspectRatioStrategy(); + when( + mockAspectRatioStrategy.getFallbackRule(), + ).thenAnswer((_) async => fallbackRule); + when( + mockAspectRatioStrategy.getPreferredAspectRatio(), + ).thenAnswer((_) async => preferredAspectRatio); + return mockAspectRatioStrategy; + }, createWithOnePreferredSizeResolutionFilter: createWithOnePreferredSizeResolutionFilter ?? ({ @@ -377,35 +389,38 @@ void main() { }) { return MockResolutionFilter(); }, - fromCamera2CameraInfo: ({ - required CameraInfo cameraInfo, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockCamera2CameraInfo camera2cameraInfo = MockCamera2CameraInfo(); - when( - camera2cameraInfo.getCameraCharacteristic(any), - ).thenAnswer((_) async => 90); - return camera2cameraInfo; - }, - newCameraSize: ({ - required int width, - required int height, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return CameraSize.pigeon_detached( - width: width, - height: height, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + fromCamera2CameraInfo: + ({ + required CameraInfo cameraInfo, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockCamera2CameraInfo camera2cameraInfo = + MockCamera2CameraInfo(); + when( + camera2cameraInfo.getCameraCharacteristic(any), + ).thenAnswer((_) async => 90); + return camera2cameraInfo; + }, + newCameraSize: + ({ + required int width, + required int height, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return CameraSize.pigeon_detached( + width: width, + height: height, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, sensorOrientationCameraCharacteristics: () { return MockCameraCharacteristicsKey(); }, @@ -423,17 +438,18 @@ void main() { highestAvailableStrategyResolutionStrategy: () { return highestAvailableStrategyResolutionStrategy; }, - ratio_4_3FallbackAutoStrategyAspectRatioStrategy: - () => ratio_4_3FallbackAutoStrategyAspectRatioStrategy, - lowerQualityThanFallbackStrategy: ({ - required VideoQuality quality, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockFallbackStrategy(); - }, + ratio_4_3FallbackAutoStrategyAspectRatioStrategy: () => + ratio_4_3FallbackAutoStrategyAspectRatioStrategy, + lowerQualityThanFallbackStrategy: + ({ + required VideoQuality quality, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockFallbackStrategy(); + }, ); return proxy; @@ -603,28 +619,28 @@ void main() { BinaryMessenger? pigeon_binaryMessenger, // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, - }) => - cameraControl == cameraControlForComparison - ? camera2cameraControl - : Camera2CameraControl.pigeon_detached( - pigeon_instanceManager: testInstanceManager, - ); - proxy.newCaptureRequestOptions = ({ - required Map options, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockCaptureRequestOptions mockCaptureRequestOptions = - MockCaptureRequestOptions(); - options.forEach((CaptureRequestKey key, Object? value) { - when( - mockCaptureRequestOptions.getCaptureRequestOption(key), - ).thenAnswer((_) async => value); - }); - return mockCaptureRequestOptions; - }; + }) => cameraControl == cameraControlForComparison + ? camera2cameraControl + : Camera2CameraControl.pigeon_detached( + pigeon_instanceManager: testInstanceManager, + ); + proxy.newCaptureRequestOptions = + ({ + required Map options, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockCaptureRequestOptions mockCaptureRequestOptions = + MockCaptureRequestOptions(); + options.forEach((CaptureRequestKey key, Object? value) { + when( + mockCaptureRequestOptions.getCaptureRequestOption(key), + ).thenAnswer((_) async => value); + }); + return mockCaptureRequestOptions; + }; final CaptureRequestKey controlAeLock = CaptureRequestKey.pigeon_detached( pigeon_instanceManager: testInstanceManager, ); @@ -674,34 +690,37 @@ void main() { PigeonInstanceManager? pigeon_instanceManager, }) => Future.value(mockProcessCameraProvider), - newCameraSelector: ({ - LensFacing? requireLensFacing, - CameraInfo? cameraInfoForFilter, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - switch (requireLensFacing) { - case LensFacing.front: - return mockFrontCameraSelector; - case LensFacing.back: - case LensFacing.external: - case LensFacing.unknown: - case null: - } - - return mockBackCameraSelector; - }, - newSystemServicesManager: ({ - required void Function(SystemServicesManager, String) onCameraError, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockSystemServicesManager(); - }, + newCameraSelector: + ({ + LensFacing? requireLensFacing, + CameraInfo? cameraInfoForFilter, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + switch (requireLensFacing) { + case LensFacing.front: + return mockFrontCameraSelector; + case LensFacing.back: + case LensFacing.external: + case LensFacing.unknown: + case null: + } + + return mockBackCameraSelector; + }, + newSystemServicesManager: + ({ + required void Function(SystemServicesManager, String) + onCameraError, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockSystemServicesManager(); + }, ); // Mock calls to native platform @@ -723,8 +742,8 @@ void main() { when(mockBackCameraInfo.sensorRotationDegrees).thenReturn(0); when(mockFrontCameraInfo.sensorRotationDegrees).thenReturn(90); - final List cameraDescriptions = - await camera.availableCameras(); + final List cameraDescriptions = await camera + .availableCameras(); expect(cameraDescriptions.length, returnData.length); for (int i = 0; i < returnData.length; i++) { @@ -732,10 +751,9 @@ void main() { (returnData[i] as Map).cast(); final CameraDescription cameraDescription = CameraDescription( name: typedData['name']! as String, - lensDirection: - (typedData['lensFacing']! as String) == 'front' - ? CameraLensDirection.front - : CameraLensDirection.back, + lensDirection: (typedData['lensFacing']! as String) == 'front' + ? CameraLensDirection.front + : CameraLensDirection.back, sensorOrientation: typedData['sensorOrientation']! as int, ); expect(cameraDescriptions[i], cameraDescription); @@ -779,221 +797,240 @@ void main() { bool startedListeningForDeviceOrientationChanges = false; camera.proxy = CameraXProxy( - getInstanceProcessCameraProvider: ({ - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) async { - return mockProcessCameraProvider; - }, - newCameraSelector: ({ - LensFacing? requireLensFacing, - CameraInfo? cameraInfoForFilter, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - switch (requireLensFacing) { - case LensFacing.front: - return MockCameraSelector(); - case LensFacing.back: - case LensFacing.external: - case LensFacing.unknown: - case null: - } - - return mockBackCameraSelector; - }, - newPreview: ({ - int? targetRotation, - ResolutionSelector? resolutionSelector, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return mockPreview; - }, - newImageCapture: ({ - int? targetRotation, - CameraXFlashMode? flashMode, - ResolutionSelector? resolutionSelector, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return mockImageCapture; - }, - newRecorder: ({ - int? aspectRatio, - int? targetVideoEncodingBitRate, - QualitySelector? qualitySelector, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return mockRecorder; - }, - withOutputVideoCapture: ({ - required VideoOutput videoOutput, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return mockVideoCapture; - }, - newImageAnalysis: ({ - int? targetRotation, - ResolutionSelector? resolutionSelector, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return mockImageAnalysis; - }, - newResolutionStrategy: ({ - required CameraSize boundSize, - required ResolutionStrategyFallbackRule fallbackRule, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockResolutionStrategy(); - }, - newResolutionSelector: ({ - AspectRatioStrategy? aspectRatioStrategy, - ResolutionStrategy? resolutionStrategy, - ResolutionFilter? resolutionFilter, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockResolutionSelector(); - }, - fromQualitySelector: ({ - required VideoQuality quality, - FallbackStrategy? fallbackStrategy, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockQualitySelector(); - }, - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, - newSystemServicesManager: ({ - required void Function(SystemServicesManager, String) onCameraError, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - when( - mockSystemServicesManager.requestCameraPermissions(any), - ).thenAnswer((_) async { - cameraPermissionsRequested = true; - return null; - }); - return mockSystemServicesManager; - }, - newDeviceOrientationManager: ({ - required void Function(DeviceOrientationManager, String) - onDeviceOrientationChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockDeviceOrientationManager manager = - MockDeviceOrientationManager(); - when(manager.startListeningForDeviceOrientationChange()).thenAnswer(( - _, - ) async { - startedListeningForDeviceOrientationChanges = true; - }); - when(manager.getUiOrientation()).thenAnswer((_) async { - return 'PORTRAIT_UP'; - }); - return manager; - }, - newAspectRatioStrategy: ({ - required AspectRatio preferredAspectRatio, - required AspectRatioStrategyFallbackRule fallbackRule, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockAspectRatioStrategy(); - }, - createWithOnePreferredSizeResolutionFilter: ({ - required CameraSize preferredSize, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockResolutionFilter(); - }, - fromCamera2CameraInfo: ({ - required CameraInfo cameraInfo, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockCamera2CameraInfo camera2cameraInfo = - MockCamera2CameraInfo(); - when( - camera2cameraInfo.getCameraCharacteristic( - mockCameraCharacteristicsKey, - ), - ).thenAnswer((_) async => testSensorOrientation); - return camera2cameraInfo; - }, - newCameraSize: ({ - required int width, - required int height, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockCameraSize(); - }, + getInstanceProcessCameraProvider: + ({ + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) async { + return mockProcessCameraProvider; + }, + newCameraSelector: + ({ + LensFacing? requireLensFacing, + CameraInfo? cameraInfoForFilter, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + switch (requireLensFacing) { + case LensFacing.front: + return MockCameraSelector(); + case LensFacing.back: + case LensFacing.external: + case LensFacing.unknown: + case null: + } + + return mockBackCameraSelector; + }, + newPreview: + ({ + int? targetRotation, + ResolutionSelector? resolutionSelector, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return mockPreview; + }, + newImageCapture: + ({ + int? targetRotation, + CameraXFlashMode? flashMode, + ResolutionSelector? resolutionSelector, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return mockImageCapture; + }, + newRecorder: + ({ + int? aspectRatio, + int? targetVideoEncodingBitRate, + QualitySelector? qualitySelector, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return mockRecorder; + }, + withOutputVideoCapture: + ({ + required VideoOutput videoOutput, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return mockVideoCapture; + }, + newImageAnalysis: + ({ + int? targetRotation, + ResolutionSelector? resolutionSelector, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return mockImageAnalysis; + }, + newResolutionStrategy: + ({ + required CameraSize boundSize, + required ResolutionStrategyFallbackRule fallbackRule, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockResolutionStrategy(); + }, + newResolutionSelector: + ({ + AspectRatioStrategy? aspectRatioStrategy, + ResolutionStrategy? resolutionStrategy, + ResolutionFilter? resolutionFilter, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockResolutionSelector(); + }, + fromQualitySelector: + ({ + required VideoQuality quality, + FallbackStrategy? fallbackStrategy, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockQualitySelector(); + }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, + newSystemServicesManager: + ({ + required void Function(SystemServicesManager, String) + onCameraError, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + when( + mockSystemServicesManager.requestCameraPermissions(any), + ).thenAnswer((_) async { + cameraPermissionsRequested = true; + return null; + }); + return mockSystemServicesManager; + }, + newDeviceOrientationManager: + ({ + required void Function(DeviceOrientationManager, String) + onDeviceOrientationChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockDeviceOrientationManager manager = + MockDeviceOrientationManager(); + when( + manager.startListeningForDeviceOrientationChange(), + ).thenAnswer((_) async { + startedListeningForDeviceOrientationChanges = true; + }); + when(manager.getUiOrientation()).thenAnswer((_) async { + return 'PORTRAIT_UP'; + }); + return manager; + }, + newAspectRatioStrategy: + ({ + required AspectRatio preferredAspectRatio, + required AspectRatioStrategyFallbackRule fallbackRule, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockAspectRatioStrategy(); + }, + createWithOnePreferredSizeResolutionFilter: + ({ + required CameraSize preferredSize, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockResolutionFilter(); + }, + fromCamera2CameraInfo: + ({ + required CameraInfo cameraInfo, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockCamera2CameraInfo camera2cameraInfo = + MockCamera2CameraInfo(); + when( + camera2cameraInfo.getCameraCharacteristic( + mockCameraCharacteristicsKey, + ), + ).thenAnswer((_) async => testSensorOrientation); + return camera2cameraInfo; + }, + newCameraSize: + ({ + required int width, + required int height, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockCameraSize(); + }, sensorOrientationCameraCharacteristics: () { return mockCameraCharacteristicsKey; }, - lowerQualityOrHigherThanFallbackStrategy: ({ - required VideoQuality quality, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockFallbackStrategy(); - }, + lowerQualityOrHigherThanFallbackStrategy: + ({ + required VideoQuality quality, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockFallbackStrategy(); + }, ); camera.processCameraProvider = mockProcessCameraProvider; @@ -1094,208 +1131,227 @@ void main() { // Tell plugin to create mock/detached objects and stub method calls for the // testing of createCamera. camera.proxy = CameraXProxy( - getInstanceProcessCameraProvider: ({ - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) async { - return mockProcessCameraProvider; - }, - newCameraSelector: ({ - LensFacing? requireLensFacing, - CameraInfo? cameraInfoForFilter, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - switch (requireLensFacing) { - case LensFacing.front: - return MockCameraSelector(); - case LensFacing.back: - case LensFacing.external: - case LensFacing.unknown: - case null: - } - - return mockBackCameraSelector; - }, - newPreview: ({ - int? targetRotation, - ResolutionSelector? resolutionSelector, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return mockPreview; - }, - newImageCapture: ({ - int? targetRotation, - CameraXFlashMode? flashMode, - ResolutionSelector? resolutionSelector, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return mockImageCapture; - }, - newRecorder: ({ - int? aspectRatio, - int? targetVideoEncodingBitRate, - QualitySelector? qualitySelector, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return mockRecorder; - }, - withOutputVideoCapture: ({ - required VideoOutput videoOutput, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return mockVideoCapture; - }, - newImageAnalysis: ({ - int? targetRotation, - ResolutionSelector? resolutionSelector, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return mockImageAnalysis; - }, - newResolutionStrategy: ({ - required CameraSize boundSize, - required ResolutionStrategyFallbackRule fallbackRule, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockResolutionStrategy(); - }, - newResolutionSelector: ({ - AspectRatioStrategy? aspectRatioStrategy, - ResolutionStrategy? resolutionStrategy, - ResolutionFilter? resolutionFilter, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockResolutionSelector(); - }, - fromQualitySelector: ({ - required VideoQuality quality, - FallbackStrategy? fallbackStrategy, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockQualitySelector(); - }, - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, - newSystemServicesManager: ({ - required void Function(SystemServicesManager, String) onCameraError, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockSystemServicesManager(); - }, - newDeviceOrientationManager: ({ - required void Function(DeviceOrientationManager, String) - onDeviceOrientationChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockDeviceOrientationManager manager = - MockDeviceOrientationManager(); - when(manager.getUiOrientation()).thenAnswer((_) async { - return 'PORTRAIT_UP'; - }); - return manager; - }, - newAspectRatioStrategy: ({ - required AspectRatio preferredAspectRatio, - required AspectRatioStrategyFallbackRule fallbackRule, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockAspectRatioStrategy(); - }, - createWithOnePreferredSizeResolutionFilter: ({ - required CameraSize preferredSize, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockResolutionFilter(); - }, - fromCamera2CameraInfo: ({ - required CameraInfo cameraInfo, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - when( - mockCamera2CameraInfo.getCameraCharacteristic( - mockCameraCharacteristicsKey, - ), - ).thenAnswer((_) async => testSensorOrientation); - return mockCamera2CameraInfo; - }, - newCameraSize: ({ - required int width, - required int height, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockCameraSize(); - }, + getInstanceProcessCameraProvider: + ({ + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) async { + return mockProcessCameraProvider; + }, + newCameraSelector: + ({ + LensFacing? requireLensFacing, + CameraInfo? cameraInfoForFilter, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + switch (requireLensFacing) { + case LensFacing.front: + return MockCameraSelector(); + case LensFacing.back: + case LensFacing.external: + case LensFacing.unknown: + case null: + } + + return mockBackCameraSelector; + }, + newPreview: + ({ + int? targetRotation, + ResolutionSelector? resolutionSelector, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return mockPreview; + }, + newImageCapture: + ({ + int? targetRotation, + CameraXFlashMode? flashMode, + ResolutionSelector? resolutionSelector, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return mockImageCapture; + }, + newRecorder: + ({ + int? aspectRatio, + int? targetVideoEncodingBitRate, + QualitySelector? qualitySelector, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return mockRecorder; + }, + withOutputVideoCapture: + ({ + required VideoOutput videoOutput, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return mockVideoCapture; + }, + newImageAnalysis: + ({ + int? targetRotation, + ResolutionSelector? resolutionSelector, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return mockImageAnalysis; + }, + newResolutionStrategy: + ({ + required CameraSize boundSize, + required ResolutionStrategyFallbackRule fallbackRule, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockResolutionStrategy(); + }, + newResolutionSelector: + ({ + AspectRatioStrategy? aspectRatioStrategy, + ResolutionStrategy? resolutionStrategy, + ResolutionFilter? resolutionFilter, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockResolutionSelector(); + }, + fromQualitySelector: + ({ + required VideoQuality quality, + FallbackStrategy? fallbackStrategy, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockQualitySelector(); + }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, + newSystemServicesManager: + ({ + required void Function(SystemServicesManager, String) + onCameraError, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockSystemServicesManager(); + }, + newDeviceOrientationManager: + ({ + required void Function(DeviceOrientationManager, String) + onDeviceOrientationChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockDeviceOrientationManager manager = + MockDeviceOrientationManager(); + when(manager.getUiOrientation()).thenAnswer((_) async { + return 'PORTRAIT_UP'; + }); + return manager; + }, + newAspectRatioStrategy: + ({ + required AspectRatio preferredAspectRatio, + required AspectRatioStrategyFallbackRule fallbackRule, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockAspectRatioStrategy(); + }, + createWithOnePreferredSizeResolutionFilter: + ({ + required CameraSize preferredSize, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockResolutionFilter(); + }, + fromCamera2CameraInfo: + ({ + required CameraInfo cameraInfo, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + when( + mockCamera2CameraInfo.getCameraCharacteristic( + mockCameraCharacteristicsKey, + ), + ).thenAnswer((_) async => testSensorOrientation); + return mockCamera2CameraInfo; + }, + newCameraSize: + ({ + required int width, + required int height, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockCameraSize(); + }, sensorOrientationCameraCharacteristics: () { return mockCameraCharacteristicsKey; }, - lowerQualityOrHigherThanFallbackStrategy: ({ - required VideoQuality quality, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockFallbackStrategy(); - }, + lowerQualityOrHigherThanFallbackStrategy: + ({ + required VideoQuality quality, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockFallbackStrategy(); + }, ); when( @@ -1425,9 +1481,11 @@ void main() { continue; } - final CameraSize? previewSize = - await camera.preview!.resolutionSelector!.resolutionStrategy! - .getBoundSize(); + final CameraSize? previewSize = await camera + .preview! + .resolutionSelector! + .resolutionStrategy! + .getBoundSize(); expect(previewSize?.width, equals(expectedBoundSize.width)); expect(previewSize?.height, equals(expectedBoundSize.height)); expect( @@ -1436,9 +1494,11 @@ void main() { ResolutionStrategyFallbackRule.closestLowerThenHigher, ); - final CameraSize? imageCaptureSize = - await camera.imageCapture!.resolutionSelector!.resolutionStrategy! - .getBoundSize(); + final CameraSize? imageCaptureSize = await camera + .imageCapture! + .resolutionSelector! + .resolutionStrategy! + .getBoundSize(); expect(imageCaptureSize?.width, equals(expectedBoundSize.width)); expect(imageCaptureSize?.height, equals(expectedBoundSize.height)); expect( @@ -1447,9 +1507,11 @@ void main() { ResolutionStrategyFallbackRule.closestLowerThenHigher, ); - final CameraSize? imageAnalysisSize = - await camera.imageAnalysis!.resolutionSelector!.resolutionStrategy! - .getBoundSize(); + final CameraSize? imageAnalysisSize = await camera + .imageAnalysis! + .resolutionSelector! + .resolutionStrategy! + .getBoundSize(); expect(imageAnalysisSize?.width, equals(expectedBoundSize.width)); expect(imageAnalysisSize?.height, equals(expectedBoundSize.height)); expect( @@ -1512,16 +1574,17 @@ void main() { CameraSize? lastSetPreferredSize; camera.proxy = getProxyForTestingResolutionPreset( mockProcessCameraProvider, - createWithOnePreferredSizeResolutionFilter: ({ - required CameraSize preferredSize, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - lastSetPreferredSize = preferredSize; - return MockResolutionFilter(); - }, + createWithOnePreferredSizeResolutionFilter: + ({ + required CameraSize preferredSize, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + lastSetPreferredSize = preferredSize; + return MockResolutionFilter(); + }, ); when( @@ -1602,9 +1665,11 @@ void main() { equals(expectedPreferredResolution.height), ); - final CameraSize? imageCaptureSize = - await camera.imageCapture!.resolutionSelector!.resolutionStrategy! - .getBoundSize(); + final CameraSize? imageCaptureSize = await camera + .imageCapture! + .resolutionSelector! + .resolutionStrategy! + .getBoundSize(); expect( imageCaptureSize?.width, equals(expectedPreferredResolution.width), @@ -1614,9 +1679,11 @@ void main() { equals(expectedPreferredResolution.height), ); - final CameraSize? imageAnalysisSize = - await camera.imageAnalysis!.resolutionSelector!.resolutionStrategy! - .getBoundSize(); + final CameraSize? imageAnalysisSize = await camera + .imageAnalysis! + .resolutionSelector! + .resolutionStrategy! + .getBoundSize(); expect( imageAnalysisSize?.width, equals(expectedPreferredResolution.width), @@ -1718,14 +1785,18 @@ void main() { continue; } - final AspectRatioStrategy previewStrategy = - await camera.preview!.resolutionSelector!.getAspectRatioStrategy(); - final AspectRatioStrategy imageCaptureStrategy = - await camera.imageCapture!.resolutionSelector! - .getAspectRatioStrategy(); - final AspectRatioStrategy imageAnalysisStrategy = - await camera.imageCapture!.resolutionSelector! - .getAspectRatioStrategy(); + final AspectRatioStrategy previewStrategy = await camera + .preview! + .resolutionSelector! + .getAspectRatioStrategy(); + final AspectRatioStrategy imageCaptureStrategy = await camera + .imageCapture! + .resolutionSelector! + .getAspectRatioStrategy(); + final AspectRatioStrategy imageAnalysisStrategy = await camera + .imageCapture! + .resolutionSelector! + .getAspectRatioStrategy(); // Check aspect ratio. expect( @@ -1793,28 +1864,30 @@ void main() { final MockQualitySelector mockQualitySelector = MockQualitySelector(); camera.proxy = getProxyForTestingResolutionPreset( mockProcessCameraProvider, - lowerQualityOrHigherThanFallbackStrategy: ({ - required VideoQuality quality, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - fallbackStrategyVideoQuality = quality; - return mockFallbackStrategy; - }, - fromQualitySelector: ({ - required VideoQuality quality, - FallbackStrategy? fallbackStrategy, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - qualitySelectorVideoQuality = quality; - setFallbackStrategy = fallbackStrategy; - return mockQualitySelector; - }, + lowerQualityOrHigherThanFallbackStrategy: + ({ + required VideoQuality quality, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + fallbackStrategyVideoQuality = quality; + return mockFallbackStrategy; + }, + fromQualitySelector: + ({ + required VideoQuality quality, + FallbackStrategy? fallbackStrategy, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + qualitySelectorVideoQuality = quality; + setFallbackStrategy = fallbackStrategy; + return mockQualitySelector; + }, ); when( @@ -1897,21 +1970,24 @@ void main() { // UI orientation. camera.proxy = getProxyForTestingResolutionPreset( mockProcessCameraProvider, - newPreview: ({ - int? targetRotation, - ResolutionSelector? resolutionSelector, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockPreview mockPreview = MockPreview(); - when( - mockPreview.surfaceProducerHandlesCropAndRotation(), - ).thenAnswer((_) async => testHandlesCropAndRotation); - when(mockPreview.resolutionSelector).thenReturn(resolutionSelector); - return mockPreview; - }, + newPreview: + ({ + int? targetRotation, + ResolutionSelector? resolutionSelector, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockPreview mockPreview = MockPreview(); + when( + mockPreview.surfaceProducerHandlesCropAndRotation(), + ).thenAnswer((_) async => testHandlesCropAndRotation); + when( + mockPreview.resolutionSelector, + ).thenReturn(resolutionSelector); + return mockPreview; + }, ); when( @@ -1997,211 +2073,232 @@ void main() { BinaryMessenger? pigeonBinaryMessenger, PigeonInstanceManager? pigeonInstanceManager, }) {}, - getInstanceProcessCameraProvider: ({ - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Future.value(mockProcessCameraProvider); - }, - newCameraSelector: ({ - LensFacing? requireLensFacing, - CameraInfo? cameraInfoForFilter, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - switch (requireLensFacing) { - case LensFacing.front: - return mockFrontCameraSelector; - case LensFacing.back: - case LensFacing.external: - case LensFacing.unknown: - case null: - } - if (cameraInfoForFilter == mockBackCameraInfoOne) { - return mockChosenCameraInfoCameraSelector; - } - - return mockBackCameraSelector; - }, - newSystemServicesManager: ({ - required void Function(SystemServicesManager, String) onCameraError, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockSystemServicesManager(); - }, - newPreview: ({ - int? targetRotation, - ResolutionSelector? resolutionSelector, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return mockPreview; - }, - newImageCapture: ({ - int? targetRotation, - CameraXFlashMode? flashMode, - ResolutionSelector? resolutionSelector, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return mockImageCapture; - }, - newRecorder: ({ - int? aspectRatio, - int? targetVideoEncodingBitRate, - QualitySelector? qualitySelector, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return mockRecorder; - }, - withOutputVideoCapture: ({ - required VideoOutput videoOutput, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return mockVideoCapture; - }, - newImageAnalysis: ({ - int? targetRotation, - ResolutionSelector? resolutionSelector, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return mockImageAnalysis; - }, - newResolutionStrategy: ({ - required CameraSize boundSize, - required ResolutionStrategyFallbackRule fallbackRule, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockResolutionStrategy(); - }, - newResolutionSelector: ({ - AspectRatioStrategy? aspectRatioStrategy, - ResolutionStrategy? resolutionStrategy, - ResolutionFilter? resolutionFilter, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockResolutionSelector(); - }, - fromQualitySelector: ({ - required VideoQuality quality, - FallbackStrategy? fallbackStrategy, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockQualitySelector(); - }, - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, - newDeviceOrientationManager: ({ - required void Function(DeviceOrientationManager, String) - onDeviceOrientationChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockDeviceOrientationManager manager = - MockDeviceOrientationManager(); - when(manager.getUiOrientation()).thenAnswer((_) async { - return 'PORTRAIT_UP'; - }); - return manager; - }, - newAspectRatioStrategy: ({ - required AspectRatio preferredAspectRatio, - required AspectRatioStrategyFallbackRule fallbackRule, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockAspectRatioStrategy(); - }, - createWithOnePreferredSizeResolutionFilter: ({ - required CameraSize preferredSize, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockResolutionFilter(); - }, - fromCamera2CameraInfo: ({ - required CameraInfo cameraInfo, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - when( - mockCamera2CameraInfo.getCameraCharacteristic( - mockCameraCharacteristicsKey, - ), - ).thenAnswer((_) async => testSensorOrientation); - return mockCamera2CameraInfo; - }, - newCameraSize: ({ - required int width, - required int height, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockCameraSize(); - }, + getInstanceProcessCameraProvider: + ({ + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Future.value( + mockProcessCameraProvider, + ); + }, + newCameraSelector: + ({ + LensFacing? requireLensFacing, + CameraInfo? cameraInfoForFilter, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + switch (requireLensFacing) { + case LensFacing.front: + return mockFrontCameraSelector; + case LensFacing.back: + case LensFacing.external: + case LensFacing.unknown: + case null: + } + if (cameraInfoForFilter == mockBackCameraInfoOne) { + return mockChosenCameraInfoCameraSelector; + } + + return mockBackCameraSelector; + }, + newSystemServicesManager: + ({ + required void Function(SystemServicesManager, String) + onCameraError, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockSystemServicesManager(); + }, + newPreview: + ({ + int? targetRotation, + ResolutionSelector? resolutionSelector, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return mockPreview; + }, + newImageCapture: + ({ + int? targetRotation, + CameraXFlashMode? flashMode, + ResolutionSelector? resolutionSelector, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return mockImageCapture; + }, + newRecorder: + ({ + int? aspectRatio, + int? targetVideoEncodingBitRate, + QualitySelector? qualitySelector, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return mockRecorder; + }, + withOutputVideoCapture: + ({ + required VideoOutput videoOutput, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return mockVideoCapture; + }, + newImageAnalysis: + ({ + int? targetRotation, + ResolutionSelector? resolutionSelector, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return mockImageAnalysis; + }, + newResolutionStrategy: + ({ + required CameraSize boundSize, + required ResolutionStrategyFallbackRule fallbackRule, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockResolutionStrategy(); + }, + newResolutionSelector: + ({ + AspectRatioStrategy? aspectRatioStrategy, + ResolutionStrategy? resolutionStrategy, + ResolutionFilter? resolutionFilter, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockResolutionSelector(); + }, + fromQualitySelector: + ({ + required VideoQuality quality, + FallbackStrategy? fallbackStrategy, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockQualitySelector(); + }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, + newDeviceOrientationManager: + ({ + required void Function(DeviceOrientationManager, String) + onDeviceOrientationChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockDeviceOrientationManager manager = + MockDeviceOrientationManager(); + when(manager.getUiOrientation()).thenAnswer((_) async { + return 'PORTRAIT_UP'; + }); + return manager; + }, + newAspectRatioStrategy: + ({ + required AspectRatio preferredAspectRatio, + required AspectRatioStrategyFallbackRule fallbackRule, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockAspectRatioStrategy(); + }, + createWithOnePreferredSizeResolutionFilter: + ({ + required CameraSize preferredSize, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockResolutionFilter(); + }, + fromCamera2CameraInfo: + ({ + required CameraInfo cameraInfo, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + when( + mockCamera2CameraInfo.getCameraCharacteristic( + mockCameraCharacteristicsKey, + ), + ).thenAnswer((_) async => testSensorOrientation); + return mockCamera2CameraInfo; + }, + newCameraSize: + ({ + required int width, + required int height, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockCameraSize(); + }, sensorOrientationCameraCharacteristics: () { return mockCameraCharacteristicsKey; }, - lowerQualityOrHigherThanFallbackStrategy: ({ - required VideoQuality quality, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockFallbackStrategy(); - }, + lowerQualityOrHigherThanFallbackStrategy: + ({ + required VideoQuality quality, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockFallbackStrategy(); + }, ); // Mock calls to native platform @@ -2238,8 +2335,8 @@ void main() { mockFrontCameraSelector.filter([mockFrontCameraInfo]), ).thenAnswer((_) async => [mockFrontCameraInfo]); - final List cameraDescriptions = - await camera.availableCameras(); + final List cameraDescriptions = await camera + .availableCameras(); expect(cameraDescriptions.length, returnData.length); for (int i = 0; i < returnData.length; i++) { @@ -2250,10 +2347,9 @@ void main() { mockCameraInfosList[i]; final CameraDescription cameraDescription = CameraDescription( name: savedData['name']! as String, - lensDirection: - (savedData['lensFacing']! as String) == 'front' - ? CameraLensDirection.front - : CameraLensDirection.back, + lensDirection: (savedData['lensFacing']! as String) == 'front' + ? CameraLensDirection.front + : CameraLensDirection.back, sensorOrientation: savedData['sensorOrientation']! as int, ); expect(cameraDescriptions[i], cameraDescription); @@ -2354,21 +2450,22 @@ void main() { // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, }) => Future.value(mockProcessCameraProvider), - newCameraSelector: ({ - LensFacing? requireLensFacing, - CameraInfo? cameraInfoForFilter, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - switch (requireLensFacing) { - case LensFacing.front: - return mockFrontCameraSelector; - case _: - return mockBackCameraSelector; - } - }, + newCameraSelector: + ({ + LensFacing? requireLensFacing, + CameraInfo? cameraInfoForFilter, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + switch (requireLensFacing) { + case LensFacing.front: + return mockFrontCameraSelector; + case _: + return mockBackCameraSelector; + } + }, newPreview: ({ int? targetRotation, @@ -2451,20 +2548,21 @@ void main() { // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, }) => MockQualitySelector(), - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, newSystemServicesManager: ({ required void Function(SystemServicesManager, String) onCameraError, @@ -2473,21 +2571,22 @@ void main() { // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, }) => MockSystemServicesManager(), - newDeviceOrientationManager: ({ - required void Function(DeviceOrientationManager, String) - onDeviceOrientationChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockDeviceOrientationManager manager = - MockDeviceOrientationManager(); - when(manager.getUiOrientation()).thenAnswer((_) async { - return 'PORTRAIT_UP'; - }); - return manager; - }, + newDeviceOrientationManager: + ({ + required void Function(DeviceOrientationManager, String) + onDeviceOrientationChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockDeviceOrientationManager manager = + MockDeviceOrientationManager(); + when(manager.getUiOrientation()).thenAnswer((_) async { + return 'PORTRAIT_UP'; + }); + return manager; + }, newAspectRatioStrategy: ({ required AspectRatio preferredAspectRatio, @@ -2505,20 +2604,21 @@ void main() { // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, }) => MockResolutionFilter(), - fromCamera2CameraInfo: ({ - required CameraInfo cameraInfo, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockCamera2CameraInfo mockCamera2CameraInfo = - MockCamera2CameraInfo(); - when( - mockCamera2CameraInfo.getCameraCharacteristic(any), - ).thenAnswer((_) async => 90); - return mockCamera2CameraInfo; - }, + fromCamera2CameraInfo: + ({ + required CameraInfo cameraInfo, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockCamera2CameraInfo mockCamera2CameraInfo = + MockCamera2CameraInfo(); + when( + mockCamera2CameraInfo.getCameraCharacteristic(any), + ).thenAnswer((_) async => 90); + return mockCamera2CameraInfo; + }, newCameraSize: ({ required int width, @@ -2528,8 +2628,8 @@ void main() { // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, }) => MockCameraSize(), - sensorOrientationCameraCharacteristics: - () => MockCameraCharacteristicsKey(), + sensorOrientationCameraCharacteristics: () => + MockCameraCharacteristicsKey(), ); final CameraInitializedEvent testCameraInitializedEvent = @@ -2589,24 +2689,25 @@ void main() { bool stoppedListeningForDeviceOrientationChange = false; final AndroidCameraCameraX camera = AndroidCameraCameraX(); camera.proxy = CameraXProxy( - newDeviceOrientationManager: ({ - required void Function(DeviceOrientationManager, String) - onDeviceOrientationChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockDeviceOrientationManager mockDeviceOrientationManager = - MockDeviceOrientationManager(); - when( - mockDeviceOrientationManager - .stopListeningForDeviceOrientationChange(), - ).thenAnswer((_) async { - stoppedListeningForDeviceOrientationChange = true; - }); - return mockDeviceOrientationManager; - }, + newDeviceOrientationManager: + ({ + required void Function(DeviceOrientationManager, String) + onDeviceOrientationChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockDeviceOrientationManager mockDeviceOrientationManager = + MockDeviceOrientationManager(); + when( + mockDeviceOrientationManager + .stopListeningForDeviceOrientationChange(), + ).thenAnswer((_) async { + stoppedListeningForDeviceOrientationChange = true; + }); + return mockDeviceOrientationManager; + }, ); camera.preview = MockPreview(); @@ -2686,20 +2787,22 @@ void main() { StreamQueue(eventStream); camera.proxy = CameraXProxy( - newSystemServicesManager: ({ - required void Function(SystemServicesManager, String) onCameraError, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockSystemServicesManager mockSystemServicesManager = - MockSystemServicesManager(); - when( - mockSystemServicesManager.onCameraError, - ).thenReturn(onCameraError); - return mockSystemServicesManager; - }, + newSystemServicesManager: + ({ + required void Function(SystemServicesManager, String) + onCameraError, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockSystemServicesManager mockSystemServicesManager = + MockSystemServicesManager(); + when( + mockSystemServicesManager.onCameraError, + ).thenReturn(onCameraError); + return mockSystemServicesManager; + }, ); camera.systemServicesManager.onCameraError( @@ -2722,29 +2825,30 @@ void main() { 'onDeviceOrientationChanged stream emits changes in device orientation detected by system services', () async { final AndroidCameraCameraX camera = AndroidCameraCameraX(); - final Stream eventStream = - camera.onDeviceOrientationChanged(); + final Stream eventStream = camera + .onDeviceOrientationChanged(); final StreamQueue streamQueue = StreamQueue(eventStream); const DeviceOrientationChangedEvent testEvent = DeviceOrientationChangedEvent(DeviceOrientation.portraitDown); camera.proxy = CameraXProxy( - newDeviceOrientationManager: ({ - required void Function(DeviceOrientationManager, String) - onDeviceOrientationChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockDeviceOrientationManager mockDeviceOrientationManager = - MockDeviceOrientationManager(); - when( - mockDeviceOrientationManager.onDeviceOrientationChanged, - ).thenReturn(onDeviceOrientationChanged); - return mockDeviceOrientationManager; - }, + newDeviceOrientationManager: + ({ + required void Function(DeviceOrientationManager, String) + onDeviceOrientationChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockDeviceOrientationManager mockDeviceOrientationManager = + MockDeviceOrientationManager(); + when( + mockDeviceOrientationManager.onDeviceOrientationChanged, + ).thenReturn(onDeviceOrientationChanged); + return mockDeviceOrientationManager; + }, ); camera.deviceOrientationManager.onDeviceOrientationChanged( @@ -2856,20 +2960,21 @@ void main() { // track camera state once preview is bound to the lifecycle and needed to // test for expected updates. camera.proxy = CameraXProxy( - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, ); when( @@ -2964,20 +3069,21 @@ void main() { // Tell plugin to create detached Observer when camera info updated. const String outputPath = '/temp/REC123.temp'; camera.proxy = CameraXProxy( - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, fromCamera2CameraInfo: ({ required CameraInfo cameraInfo, @@ -2986,38 +3092,44 @@ void main() { // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, }) => mockCamera2CameraInfo, - newSystemServicesManager: ({ - required void Function(SystemServicesManager, String) onCameraError, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockSystemServicesManager mockSystemServicesManager = - MockSystemServicesManager(); - when( - mockSystemServicesManager.getTempFilePath( - camera.videoPrefix, - '.temp', - ), - ).thenAnswer((_) async => outputPath); - return mockSystemServicesManager; - }, - newVideoRecordEventListener: ({ - required void Function(VideoRecordEventListener, VideoRecordEvent) - onEvent, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return VideoRecordEventListener.pigeon_detached( - onEvent: onEvent, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newSystemServicesManager: + ({ + required void Function(SystemServicesManager, String) + onCameraError, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockSystemServicesManager mockSystemServicesManager = + MockSystemServicesManager(); + when( + mockSystemServicesManager.getTempFilePath( + camera.videoPrefix, + '.temp', + ), + ).thenAnswer((_) async => outputPath); + return mockSystemServicesManager; + }, + newVideoRecordEventListener: + ({ + required void Function( + VideoRecordEventListener, + VideoRecordEvent, + ) + onEvent, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return VideoRecordEventListener.pigeon_detached( + onEvent: onEvent, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, infoSupportedHardwareLevelCameraCharacteristics: () { return MockCameraCharacteristicsKey(); }, @@ -3123,20 +3235,21 @@ void main() { // Tell plugin to create detached Observer when camera info updated. const String outputPath = '/temp/REC123.temp'; camera.proxy = CameraXProxy( - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, fromCamera2CameraInfo: ({ required CameraInfo cameraInfo, @@ -3145,38 +3258,44 @@ void main() { // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, }) => mockCamera2CameraInfo, - newSystemServicesManager: ({ - required void Function(SystemServicesManager, String) onCameraError, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockSystemServicesManager mockSystemServicesManager = - MockSystemServicesManager(); - when( - mockSystemServicesManager.getTempFilePath( - camera.videoPrefix, - '.temp', - ), - ).thenAnswer((_) async => outputPath); - return mockSystemServicesManager; - }, - newVideoRecordEventListener: ({ - required void Function(VideoRecordEventListener, VideoRecordEvent) - onEvent, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return VideoRecordEventListener.pigeon_detached( - onEvent: onEvent, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newSystemServicesManager: + ({ + required void Function(SystemServicesManager, String) + onCameraError, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockSystemServicesManager mockSystemServicesManager = + MockSystemServicesManager(); + when( + mockSystemServicesManager.getTempFilePath( + camera.videoPrefix, + '.temp', + ), + ).thenAnswer((_) async => outputPath); + return mockSystemServicesManager; + }, + newVideoRecordEventListener: + ({ + required void Function( + VideoRecordEventListener, + VideoRecordEvent, + ) + onEvent, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return VideoRecordEventListener.pigeon_detached( + onEvent: onEvent, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, infoSupportedHardwareLevelCameraCharacteristics: () { return MockCameraCharacteristicsKey(); }, @@ -3282,20 +3401,21 @@ void main() { // Tell plugin to create detached Analyzer for testing. const String outputPath = '/temp/REC123.temp'; camera.proxy = CameraXProxy( - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, fromCamera2CameraInfo: ({ required CameraInfo cameraInfo, @@ -3304,50 +3424,57 @@ void main() { // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, }) => mockCamera2CameraInfo, - newSystemServicesManager: ({ - required void Function(SystemServicesManager, String) onCameraError, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockSystemServicesManager mockSystemServicesManager = - MockSystemServicesManager(); - when( - mockSystemServicesManager.getTempFilePath( - camera.videoPrefix, - '.temp', - ), - ).thenAnswer((_) async => outputPath); - return mockSystemServicesManager; - }, - newVideoRecordEventListener: ({ - required void Function(VideoRecordEventListener, VideoRecordEvent) - onEvent, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return VideoRecordEventListener.pigeon_detached( - onEvent: onEvent, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newSystemServicesManager: + ({ + required void Function(SystemServicesManager, String) + onCameraError, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockSystemServicesManager mockSystemServicesManager = + MockSystemServicesManager(); + when( + mockSystemServicesManager.getTempFilePath( + camera.videoPrefix, + '.temp', + ), + ).thenAnswer((_) async => outputPath); + return mockSystemServicesManager; + }, + newVideoRecordEventListener: + ({ + required void Function( + VideoRecordEventListener, + VideoRecordEvent, + ) + onEvent, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return VideoRecordEventListener.pigeon_detached( + onEvent: onEvent, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, infoSupportedHardwareLevelCameraCharacteristics: () { return MockCameraCharacteristicsKey(); }, - newAnalyzer: ({ - required void Function(Analyzer, ImageProxy) analyze, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockAnalyzer(); - }, + newAnalyzer: + ({ + required void Function(Analyzer, ImageProxy) analyze, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockAnalyzer(); + }, ); const int cameraId = 17; @@ -3355,9 +3482,8 @@ void main() { Completer(); final VideoCaptureOptions videoCaptureOptions = VideoCaptureOptions( cameraId, - streamCallback: - (CameraImageData imageData) => - imageDataCompleter.complete(imageData), + streamCallback: (CameraImageData imageData) => + imageDataCompleter.complete(imageData), ); // Mock method calls. @@ -3429,20 +3555,21 @@ void main() { // Tell plugin to mock call to get current video orientation and mock Camera2CameraInfo retrieval. const String outputPath = '/temp/REC123.temp'; camera.proxy = CameraXProxy( - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, fromCamera2CameraInfo: ({ required CameraInfo cameraInfo, @@ -3450,57 +3577,63 @@ void main() { BinaryMessenger? pigeon_binaryMessenger, // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, - }) => - cameraInfo == initialCameraInfo - ? mockCamera2CameraInfo - : MockCamera2CameraInfo(), - newSystemServicesManager: ({ - required void Function(SystemServicesManager, String) onCameraError, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockSystemServicesManager mockSystemServicesManager = - MockSystemServicesManager(); - when( - mockSystemServicesManager.getTempFilePath( - camera.videoPrefix, - '.temp', - ), - ).thenAnswer((_) async => outputPath); - return mockSystemServicesManager; - }, - newDeviceOrientationManager: ({ - required void Function(DeviceOrientationManager, String) - onDeviceOrientationChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockDeviceOrientationManager mockDeviceOrientationManager = - MockDeviceOrientationManager(); - when( - mockDeviceOrientationManager.getDefaultDisplayRotation(), - ).thenAnswer((_) async => defaultTargetRotation); - return mockDeviceOrientationManager; - }, - newVideoRecordEventListener: ({ - required void Function(VideoRecordEventListener, VideoRecordEvent) - onEvent, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return VideoRecordEventListener.pigeon_detached( - onEvent: onEvent, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + }) => cameraInfo == initialCameraInfo + ? mockCamera2CameraInfo + : MockCamera2CameraInfo(), + newSystemServicesManager: + ({ + required void Function(SystemServicesManager, String) + onCameraError, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockSystemServicesManager mockSystemServicesManager = + MockSystemServicesManager(); + when( + mockSystemServicesManager.getTempFilePath( + camera.videoPrefix, + '.temp', + ), + ).thenAnswer((_) async => outputPath); + return mockSystemServicesManager; + }, + newDeviceOrientationManager: + ({ + required void Function(DeviceOrientationManager, String) + onDeviceOrientationChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockDeviceOrientationManager + mockDeviceOrientationManager = MockDeviceOrientationManager(); + when( + mockDeviceOrientationManager.getDefaultDisplayRotation(), + ).thenAnswer((_) async => defaultTargetRotation); + return mockDeviceOrientationManager; + }, + newVideoRecordEventListener: + ({ + required void Function( + VideoRecordEventListener, + VideoRecordEvent, + ) + onEvent, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return VideoRecordEventListener.pigeon_detached( + onEvent: onEvent, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, infoSupportedHardwareLevelCameraCharacteristics: () { return MockCameraCharacteristicsKey(); }, @@ -3818,20 +3951,21 @@ void main() { // Tell plugin to create detached camera state observers. camera.proxy = CameraXProxy( - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, ); when( @@ -3874,21 +4008,22 @@ void main() { // Tell plugin to mock call to get current photo orientation. camera.proxy = CameraXProxy( - newDeviceOrientationManager: ({ - required void Function(DeviceOrientationManager, String) - onDeviceOrientationChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockDeviceOrientationManager mockDeviceOrientationManager = - MockDeviceOrientationManager(); - when( - mockDeviceOrientationManager.getDefaultDisplayRotation(), - ).thenAnswer((_) async => defaultTargetRotation); - return mockDeviceOrientationManager; - }, + newDeviceOrientationManager: + ({ + required void Function(DeviceOrientationManager, String) + onDeviceOrientationChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockDeviceOrientationManager mockDeviceOrientationManager = + MockDeviceOrientationManager(); + when( + mockDeviceOrientationManager.getDefaultDisplayRotation(), + ).thenAnswer((_) async => defaultTargetRotation); + return mockDeviceOrientationManager; + }, ); when( @@ -4223,20 +4358,21 @@ void main() { // Tell plugin to create detached Analyzer for testing. camera.proxy = CameraXProxy( - newAnalyzer: ({ - required void Function(Analyzer, ImageProxy) analyze, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Analyzer.pigeon_detached( - analyze: analyze, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newAnalyzer: + ({ + required void Function(Analyzer, ImageProxy) analyze, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Analyzer.pigeon_detached( + analyze: analyze, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, ); // Set directly for test versus calling createCamera. @@ -4283,20 +4419,21 @@ void main() { // Tell plugin to create detached Analyzer for testing. camera.proxy = CameraXProxy( - newAnalyzer: ({ - required void Function(Analyzer, ImageProxy) analyze, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Analyzer.pigeon_detached( - analyze: analyze, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newAnalyzer: + ({ + required void Function(Analyzer, ImageProxy) analyze, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Analyzer.pigeon_detached( + analyze: analyze, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, ); // Set directly for test versus calling createCamera. @@ -4357,34 +4494,36 @@ void main() { // Tell plugin to create detached Analyzer for testing. camera.proxy = CameraXProxy( - newAnalyzer: ({ - required void Function(Analyzer, ImageProxy) analyze, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Analyzer.pigeon_detached( - analyze: analyze, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newAnalyzer: + ({ + required void Function(Analyzer, ImageProxy) analyze, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Analyzer.pigeon_detached( + analyze: analyze, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, ); // Set directly for test versus calling createCamera. @@ -4516,21 +4655,22 @@ void main() { // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, }) => MockAnalyzer(), - newDeviceOrientationManager: ({ - required void Function(DeviceOrientationManager, String) - onDeviceOrientationChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockDeviceOrientationManager manager = - MockDeviceOrientationManager(); - when(manager.getDefaultDisplayRotation()).thenAnswer((_) async { - return defaultTargetRotation; - }); - return manager; - }, + newDeviceOrientationManager: + ({ + required void Function(DeviceOrientationManager, String) + onDeviceOrientationChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockDeviceOrientationManager manager = + MockDeviceOrientationManager(); + when(manager.getDefaultDisplayRotation()).thenAnswer((_) async { + return defaultTargetRotation; + }); + return manager; + }, ); when( @@ -4666,28 +4806,28 @@ void main() { BinaryMessenger? pigeon_binaryMessenger, // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, - }) => - cameraControl == mockCameraControl - ? mockCamera2CameraControl - : Camera2CameraControl.pigeon_detached( - pigeon_instanceManager: testInstanceManager, - ), - newCaptureRequestOptions: ({ - required Map options, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockCaptureRequestOptions mockCaptureRequestOptions = - MockCaptureRequestOptions(); - options.forEach((CaptureRequestKey key, Object? value) { - when( - mockCaptureRequestOptions.getCaptureRequestOption(key), - ).thenAnswer((_) async => value); - }); - return mockCaptureRequestOptions; - }, + }) => cameraControl == mockCameraControl + ? mockCamera2CameraControl + : Camera2CameraControl.pigeon_detached( + pigeon_instanceManager: testInstanceManager, + ), + newCaptureRequestOptions: + ({ + required Map options, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockCaptureRequestOptions mockCaptureRequestOptions = + MockCaptureRequestOptions(); + options.forEach((CaptureRequestKey key, Object? value) { + when( + mockCaptureRequestOptions.getCaptureRequestOption(key), + ).thenAnswer((_) async => value); + }); + return mockCaptureRequestOptions; + }, controlAELockCaptureRequest: () => controlAELockKey, ); @@ -4753,18 +4893,19 @@ void main() { MeteringMode? actionBuilderMeteringMode; MeteringPoint? actionBuilderMeteringPoint; camera.proxy = getProxyForExposureAndFocus( - withModeFocusMeteringActionBuilder: ({ - required MeteringMode mode, - required MeteringPoint point, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - actionBuilderMeteringMode = mode; - actionBuilderMeteringPoint = point; - return mockActionBuilder; - }, + withModeFocusMeteringActionBuilder: + ({ + required MeteringMode mode, + required MeteringPoint point, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + actionBuilderMeteringMode = mode; + actionBuilderMeteringPoint = point; + return mockActionBuilder; + }, ); // Verify nothing happens if no current focus and metering action has been @@ -4877,34 +5018,36 @@ void main() { ), ); camera.proxy = getProxyForExposureAndFocus( - newDisplayOrientedMeteringPointFactory: ({ - required CameraInfo cameraInfo, - required double width, - required double height, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockDisplayOrientedMeteringPointFactory mockFactory = - MockDisplayOrientedMeteringPointFactory(); - when( - mockFactory.createPoint(exposurePointX, exposurePointY), - ).thenAnswer((_) async => createdMeteringPoint); - return mockFactory; - }, - withModeFocusMeteringActionBuilder: ({ - required MeteringMode mode, - required MeteringPoint point, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - actionBuilderMeteringMode = mode; - actionBuilderMeteringPoint = point; - return mockActionBuilder; - }, + newDisplayOrientedMeteringPointFactory: + ({ + required CameraInfo cameraInfo, + required double width, + required double height, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockDisplayOrientedMeteringPointFactory mockFactory = + MockDisplayOrientedMeteringPointFactory(); + when( + mockFactory.createPoint(exposurePointX, exposurePointY), + ).thenAnswer((_) async => createdMeteringPoint); + return mockFactory; + }, + withModeFocusMeteringActionBuilder: + ({ + required MeteringMode mode, + required MeteringPoint point, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + actionBuilderMeteringMode = mode; + actionBuilderMeteringPoint = point; + return mockActionBuilder; + }, ); // Verify current auto-exposure metering point is removed if previously set. @@ -5016,34 +5159,36 @@ void main() { ), ); camera.proxy = getProxyForExposureAndFocus( - newDisplayOrientedMeteringPointFactory: ({ - required CameraInfo cameraInfo, - required double width, - required double height, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockDisplayOrientedMeteringPointFactory mockFactory = - MockDisplayOrientedMeteringPointFactory(); - when( - mockFactory.createPoint(exposurePointX, exposurePointY), - ).thenAnswer((_) async => createdMeteringPoint); - return mockFactory; - }, - withModeFocusMeteringActionBuilder: ({ - required MeteringMode mode, - required MeteringPoint point, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - actionBuilderMeteringMode = mode; - actionBuilderMeteringPoint = point; - return mockActionBuilder; - }, + newDisplayOrientedMeteringPointFactory: + ({ + required CameraInfo cameraInfo, + required double width, + required double height, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockDisplayOrientedMeteringPointFactory mockFactory = + MockDisplayOrientedMeteringPointFactory(); + when( + mockFactory.createPoint(exposurePointX, exposurePointY), + ).thenAnswer((_) async => createdMeteringPoint); + return mockFactory; + }, + withModeFocusMeteringActionBuilder: + ({ + required MeteringMode mode, + required MeteringPoint point, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + actionBuilderMeteringMode = mode; + actionBuilderMeteringPoint = point; + return mockActionBuilder; + }, ); await camera.setExposurePoint(cameraId, exposurePoint); @@ -5293,18 +5438,19 @@ void main() { MeteringMode? actionBuilderMeteringMode; MeteringPoint? actionBuilderMeteringPoint; camera.proxy = getProxyForExposureAndFocus( - withModeFocusMeteringActionBuilder: ({ - required MeteringMode mode, - required MeteringPoint point, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - actionBuilderMeteringMode = mode; - actionBuilderMeteringPoint = point; - return mockActionBuilder; - }, + withModeFocusMeteringActionBuilder: + ({ + required MeteringMode mode, + required MeteringPoint point, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + actionBuilderMeteringMode = mode; + actionBuilderMeteringPoint = point; + return mockActionBuilder; + }, ); // Verify nothing happens if no current focus and metering action has been @@ -5417,34 +5563,36 @@ void main() { ), ); camera.proxy = getProxyForExposureAndFocus( - newDisplayOrientedMeteringPointFactory: ({ - required CameraInfo cameraInfo, - required double width, - required double height, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockDisplayOrientedMeteringPointFactory mockFactory = - MockDisplayOrientedMeteringPointFactory(); - when( - mockFactory.createPoint(focusPointX, focusPointY), - ).thenAnswer((_) async => createdMeteringPoint); - return mockFactory; - }, - withModeFocusMeteringActionBuilder: ({ - required MeteringMode mode, - required MeteringPoint point, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - actionBuilderMeteringMode = mode; - actionBuilderMeteringPoint = point; - return mockActionBuilder; - }, + newDisplayOrientedMeteringPointFactory: + ({ + required CameraInfo cameraInfo, + required double width, + required double height, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockDisplayOrientedMeteringPointFactory mockFactory = + MockDisplayOrientedMeteringPointFactory(); + when( + mockFactory.createPoint(focusPointX, focusPointY), + ).thenAnswer((_) async => createdMeteringPoint); + return mockFactory; + }, + withModeFocusMeteringActionBuilder: + ({ + required MeteringMode mode, + required MeteringPoint point, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + actionBuilderMeteringMode = mode; + actionBuilderMeteringPoint = point; + return mockActionBuilder; + }, ); // Verify current auto-exposure metering point is removed if previously set. @@ -5549,34 +5697,36 @@ void main() { ), ); camera.proxy = getProxyForExposureAndFocus( - newDisplayOrientedMeteringPointFactory: ({ - required CameraInfo cameraInfo, - required double width, - required double height, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockDisplayOrientedMeteringPointFactory mockFactory = - MockDisplayOrientedMeteringPointFactory(); - when( - mockFactory.createPoint(focusPointX, focusPointY), - ).thenAnswer((_) async => createdMeteringPoint); - return mockFactory; - }, - withModeFocusMeteringActionBuilder: ({ - required MeteringMode mode, - required MeteringPoint point, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - actionBuilderMeteringMode = mode; - actionBuilderMeteringPoint = point; - return mockActionBuilder; - }, + newDisplayOrientedMeteringPointFactory: + ({ + required CameraInfo cameraInfo, + required double width, + required double height, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockDisplayOrientedMeteringPointFactory mockFactory = + MockDisplayOrientedMeteringPointFactory(); + when( + mockFactory.createPoint(focusPointX, focusPointY), + ).thenAnswer((_) async => createdMeteringPoint); + return mockFactory; + }, + withModeFocusMeteringActionBuilder: + ({ + required MeteringMode mode, + required MeteringPoint point, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + actionBuilderMeteringMode = mode; + actionBuilderMeteringPoint = point; + return mockActionBuilder; + }, ); await camera.setFocusPoint(cameraId, focusPoint); @@ -5714,39 +5864,40 @@ void main() { camera.proxy = getProxyForSettingFocusandExposurePoints( mockCameraControl, mockCamera2CameraControl, - newDisplayOrientedMeteringPointFactory: ({ - required CameraInfo cameraInfo, - required double width, - required double height, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockDisplayOrientedMeteringPointFactory mockFactory = - MockDisplayOrientedMeteringPointFactory(); - when( - mockFactory.createPoint(exposurePointX, exposurePointY), - ).thenAnswer((_) async { - final MeteringPoint createdMeteringPoint = - MeteringPoint.pigeon_detached( - pigeon_instanceManager: testInstanceManager, - ); - createdMeteringPoints.add(createdMeteringPoint); - return createdMeteringPoint; - }); - when(mockFactory.createPointWithSize(0.5, 0.5, 1)).thenAnswer(( - _, - ) async { - final MeteringPoint createdMeteringPoint = - MeteringPoint.pigeon_detached( - pigeon_instanceManager: testInstanceManager, - ); - createdMeteringPoints.add(createdMeteringPoint); - return createdMeteringPoint; - }); - return mockFactory; - }, + newDisplayOrientedMeteringPointFactory: + ({ + required CameraInfo cameraInfo, + required double width, + required double height, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockDisplayOrientedMeteringPointFactory mockFactory = + MockDisplayOrientedMeteringPointFactory(); + when( + mockFactory.createPoint(exposurePointX, exposurePointY), + ).thenAnswer((_) async { + final MeteringPoint createdMeteringPoint = + MeteringPoint.pigeon_detached( + pigeon_instanceManager: testInstanceManager, + ); + createdMeteringPoints.add(createdMeteringPoint); + return createdMeteringPoint; + }); + when(mockFactory.createPointWithSize(0.5, 0.5, 1)).thenAnswer(( + _, + ) async { + final MeteringPoint createdMeteringPoint = + MeteringPoint.pigeon_detached( + pigeon_instanceManager: testInstanceManager, + ); + createdMeteringPoints.add(createdMeteringPoint); + return createdMeteringPoint; + }); + return mockFactory; + }, ); // Make setting focus and metering action successful for test. @@ -6393,20 +6544,21 @@ void main() { // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, }) => MockAnalyzer(), - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, ); when( @@ -6465,20 +6617,21 @@ void main() { // Tell plugin to create detached Observer when camera info updated. const String outputPath = '/temp/REC123.temp'; camera.proxy = CameraXProxy( - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, fromCamera2CameraInfo: ({ required CameraInfo cameraInfo, @@ -6487,38 +6640,41 @@ void main() { // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, }) => mockCamera2CameraInfo, - newSystemServicesManager: ({ - required void Function(SystemServicesManager, String) onCameraError, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockSystemServicesManager mockSystemServicesManager = - MockSystemServicesManager(); - when( - mockSystemServicesManager.getTempFilePath( - camera.videoPrefix, - '.temp', - ), - ).thenAnswer((_) async => outputPath); - return mockSystemServicesManager; - }, - newVideoRecordEventListener: ({ - required void Function(VideoRecordEventListener, VideoRecordEvent) - onEvent, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return VideoRecordEventListener.pigeon_detached( - onEvent: onEvent, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newSystemServicesManager: + ({ + required void Function(SystemServicesManager, String) + onCameraError, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockSystemServicesManager mockSystemServicesManager = + MockSystemServicesManager(); + when( + mockSystemServicesManager.getTempFilePath( + camera.videoPrefix, + '.temp', + ), + ).thenAnswer((_) async => outputPath); + return mockSystemServicesManager; + }, + newVideoRecordEventListener: + ({ + required void Function(VideoRecordEventListener, VideoRecordEvent) + onEvent, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return VideoRecordEventListener.pigeon_detached( + onEvent: onEvent, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, infoSupportedHardwareLevelCameraCharacteristics: () { return MockCameraCharacteristicsKey(); }, @@ -6602,20 +6758,21 @@ void main() { // Tell plugin to create detached Observer when camera info updated. const String outputPath = '/temp/REC123.temp'; camera.proxy = CameraXProxy( - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, fromCamera2CameraInfo: ({ required CameraInfo cameraInfo, @@ -6624,38 +6781,41 @@ void main() { // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, }) => mockCamera2CameraInfo, - newSystemServicesManager: ({ - required void Function(SystemServicesManager, String) onCameraError, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockSystemServicesManager mockSystemServicesManager = - MockSystemServicesManager(); - when( - mockSystemServicesManager.getTempFilePath( - camera.videoPrefix, - '.temp', - ), - ).thenAnswer((_) async => outputPath); - return mockSystemServicesManager; - }, - newVideoRecordEventListener: ({ - required void Function(VideoRecordEventListener, VideoRecordEvent) - onEvent, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return VideoRecordEventListener.pigeon_detached( - onEvent: onEvent, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newSystemServicesManager: + ({ + required void Function(SystemServicesManager, String) + onCameraError, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockSystemServicesManager mockSystemServicesManager = + MockSystemServicesManager(); + when( + mockSystemServicesManager.getTempFilePath( + camera.videoPrefix, + '.temp', + ), + ).thenAnswer((_) async => outputPath); + return mockSystemServicesManager; + }, + newVideoRecordEventListener: + ({ + required void Function(VideoRecordEventListener, VideoRecordEvent) + onEvent, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return VideoRecordEventListener.pigeon_detached( + onEvent: onEvent, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, infoSupportedHardwareLevelCameraCharacteristics: () { return MockCameraCharacteristicsKey(); }, @@ -6739,20 +6899,21 @@ void main() { // Tell plugin to create detached Observer when camera info updated. const String outputPath = '/temp/REC123.temp'; camera.proxy = CameraXProxy( - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, fromCamera2CameraInfo: ({ required CameraInfo cameraInfo, @@ -6761,38 +6922,41 @@ void main() { // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, }) => mockCamera2CameraInfo, - newSystemServicesManager: ({ - required void Function(SystemServicesManager, String) onCameraError, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockSystemServicesManager mockSystemServicesManager = - MockSystemServicesManager(); - when( - mockSystemServicesManager.getTempFilePath( - camera.videoPrefix, - '.temp', - ), - ).thenAnswer((_) async => outputPath); - return mockSystemServicesManager; - }, - newVideoRecordEventListener: ({ - required void Function(VideoRecordEventListener, VideoRecordEvent) - onEvent, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return VideoRecordEventListener.pigeon_detached( - onEvent: onEvent, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newSystemServicesManager: + ({ + required void Function(SystemServicesManager, String) + onCameraError, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockSystemServicesManager mockSystemServicesManager = + MockSystemServicesManager(); + when( + mockSystemServicesManager.getTempFilePath( + camera.videoPrefix, + '.temp', + ), + ).thenAnswer((_) async => outputPath); + return mockSystemServicesManager; + }, + newVideoRecordEventListener: + ({ + required void Function(VideoRecordEventListener, VideoRecordEvent) + onEvent, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return VideoRecordEventListener.pigeon_detached( + onEvent: onEvent, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, infoSupportedHardwareLevelCameraCharacteristics: () { return MockCameraCharacteristicsKey(); }, @@ -6881,34 +7045,36 @@ void main() { // Tell plugin to create detached Observer when camera info updated. const String outputPath = '/temp/REC123.temp'; camera.proxy = CameraXProxy( - newAnalyzer: ({ - required void Function(Analyzer, ImageProxy) analyze, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Analyzer.pigeon_detached( - analyze: analyze, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newAnalyzer: + ({ + required void Function(Analyzer, ImageProxy) analyze, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Analyzer.pigeon_detached( + analyze: analyze, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, fromCamera2CameraInfo: ({ required CameraInfo cameraInfo, @@ -6917,38 +7083,41 @@ void main() { // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, }) => mockCamera2CameraInfo, - newSystemServicesManager: ({ - required void Function(SystemServicesManager, String) onCameraError, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockSystemServicesManager mockSystemServicesManager = - MockSystemServicesManager(); - when( - mockSystemServicesManager.getTempFilePath( - camera.videoPrefix, - '.temp', - ), - ).thenAnswer((_) async => outputPath); - return mockSystemServicesManager; - }, - newVideoRecordEventListener: ({ - required void Function(VideoRecordEventListener, VideoRecordEvent) - onEvent, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return VideoRecordEventListener.pigeon_detached( - onEvent: onEvent, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newSystemServicesManager: + ({ + required void Function(SystemServicesManager, String) + onCameraError, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockSystemServicesManager mockSystemServicesManager = + MockSystemServicesManager(); + when( + mockSystemServicesManager.getTempFilePath( + camera.videoPrefix, + '.temp', + ), + ).thenAnswer((_) async => outputPath); + return mockSystemServicesManager; + }, + newVideoRecordEventListener: + ({ + required void Function(VideoRecordEventListener, VideoRecordEvent) + onEvent, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return VideoRecordEventListener.pigeon_detached( + onEvent: onEvent, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, infoSupportedHardwareLevelCameraCharacteristics: () { return MockCameraCharacteristicsKey(); }, @@ -7041,34 +7210,36 @@ void main() { // Tell plugin to create detached Observer when camera info updated. const String outputPath = '/temp/REC123.temp'; camera.proxy = CameraXProxy( - newAnalyzer: ({ - required void Function(Analyzer, ImageProxy) analyze, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Analyzer.pigeon_detached( - analyze: analyze, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newAnalyzer: + ({ + required void Function(Analyzer, ImageProxy) analyze, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Analyzer.pigeon_detached( + analyze: analyze, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, fromCamera2CameraInfo: ({ required CameraInfo cameraInfo, @@ -7077,38 +7248,41 @@ void main() { // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, }) => mockCamera2CameraInfo, - newSystemServicesManager: ({ - required void Function(SystemServicesManager, String) onCameraError, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockSystemServicesManager mockSystemServicesManager = - MockSystemServicesManager(); - when( - mockSystemServicesManager.getTempFilePath( - camera.videoPrefix, - '.temp', - ), - ).thenAnswer((_) async => outputPath); - return mockSystemServicesManager; - }, - newVideoRecordEventListener: ({ - required void Function(VideoRecordEventListener, VideoRecordEvent) - onEvent, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return VideoRecordEventListener.pigeon_detached( - onEvent: onEvent, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newSystemServicesManager: + ({ + required void Function(SystemServicesManager, String) + onCameraError, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockSystemServicesManager mockSystemServicesManager = + MockSystemServicesManager(); + when( + mockSystemServicesManager.getTempFilePath( + camera.videoPrefix, + '.temp', + ), + ).thenAnswer((_) async => outputPath); + return mockSystemServicesManager; + }, + newVideoRecordEventListener: + ({ + required void Function(VideoRecordEventListener, VideoRecordEvent) + onEvent, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return VideoRecordEventListener.pigeon_detached( + onEvent: onEvent, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, infoSupportedHardwareLevelCameraCharacteristics: () { return MockCameraCharacteristicsKey(); }, @@ -7193,34 +7367,36 @@ void main() { // Tell plugin to create detached Observer when camera info updated. const String outputPath = '/temp/REC123.temp'; camera.proxy = CameraXProxy( - newAnalyzer: ({ - required void Function(Analyzer, ImageProxy) analyze, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Analyzer.pigeon_detached( - analyze: analyze, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newAnalyzer: + ({ + required void Function(Analyzer, ImageProxy) analyze, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Analyzer.pigeon_detached( + analyze: analyze, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, fromCamera2CameraInfo: ({ required CameraInfo cameraInfo, @@ -7229,38 +7405,41 @@ void main() { // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, }) => mockCamera2CameraInfo, - newSystemServicesManager: ({ - required void Function(SystemServicesManager, String) onCameraError, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockSystemServicesManager mockSystemServicesManager = - MockSystemServicesManager(); - when( - mockSystemServicesManager.getTempFilePath( - camera.videoPrefix, - '.temp', - ), - ).thenAnswer((_) async => outputPath); - return mockSystemServicesManager; - }, - newVideoRecordEventListener: ({ - required void Function(VideoRecordEventListener, VideoRecordEvent) - onEvent, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return VideoRecordEventListener.pigeon_detached( - onEvent: onEvent, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, + newSystemServicesManager: + ({ + required void Function(SystemServicesManager, String) + onCameraError, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockSystemServicesManager mockSystemServicesManager = + MockSystemServicesManager(); + when( + mockSystemServicesManager.getTempFilePath( + camera.videoPrefix, + '.temp', + ), + ).thenAnswer((_) async => outputPath); + return mockSystemServicesManager; + }, + newVideoRecordEventListener: + ({ + required void Function(VideoRecordEventListener, VideoRecordEvent) + onEvent, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return VideoRecordEventListener.pigeon_detached( + onEvent: onEvent, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, infoSupportedHardwareLevelCameraCharacteristics: () { return MockCameraCharacteristicsKey(); }, diff --git a/packages/camera/camera_android_camerax/test/android_camera_camerax_test.mocks.dart b/packages/camera/camera_android_camerax/test/android_camera_camerax_test.mocks.dart index ad9b05fbac0..4a2df856f15 100644 --- a/packages/camera/camera_android_camerax/test/android_camera_camerax_test.mocks.dart +++ b/packages/camera/camera_android_camerax/test/android_camera_camerax_test.mocks.dart @@ -2074,16 +2074,14 @@ class MockCameraXProxy extends _i1.Mock implements _i7.CameraXProxy { _i2.CameraSelector Function() get defaultBackCameraCameraSelector => (super.noSuchMethod( Invocation.getter(#defaultBackCameraCameraSelector), - returnValue: - () => _FakeCameraSelector_14( - this, - Invocation.getter(#defaultBackCameraCameraSelector), - ), - returnValueForMissingStub: - () => _FakeCameraSelector_14( - this, - Invocation.getter(#defaultBackCameraCameraSelector), - ), + returnValue: () => _FakeCameraSelector_14( + this, + Invocation.getter(#defaultBackCameraCameraSelector), + ), + returnValueForMissingStub: () => _FakeCameraSelector_14( + this, + Invocation.getter(#defaultBackCameraCameraSelector), + ), ) as _i2.CameraSelector Function()); @@ -2091,16 +2089,14 @@ class MockCameraXProxy extends _i1.Mock implements _i7.CameraXProxy { _i2.CameraSelector Function() get defaultFrontCameraCameraSelector => (super.noSuchMethod( Invocation.getter(#defaultFrontCameraCameraSelector), - returnValue: - () => _FakeCameraSelector_14( - this, - Invocation.getter(#defaultFrontCameraCameraSelector), - ), - returnValueForMissingStub: - () => _FakeCameraSelector_14( - this, - Invocation.getter(#defaultFrontCameraCameraSelector), - ), + returnValue: () => _FakeCameraSelector_14( + this, + Invocation.getter(#defaultFrontCameraCameraSelector), + ), + returnValueForMissingStub: () => _FakeCameraSelector_14( + this, + Invocation.getter(#defaultFrontCameraCameraSelector), + ), ) as _i2.CameraSelector Function()); @@ -2109,20 +2105,14 @@ class MockCameraXProxy extends _i1.Mock implements _i7.CameraXProxy { get highestAvailableStrategyResolutionStrategy => (super.noSuchMethod( Invocation.getter(#highestAvailableStrategyResolutionStrategy), - returnValue: - () => _FakeResolutionStrategy_24( - this, - Invocation.getter( - #highestAvailableStrategyResolutionStrategy, - ), - ), - returnValueForMissingStub: - () => _FakeResolutionStrategy_24( - this, - Invocation.getter( - #highestAvailableStrategyResolutionStrategy, - ), - ), + returnValue: () => _FakeResolutionStrategy_24( + this, + Invocation.getter(#highestAvailableStrategyResolutionStrategy), + ), + returnValueForMissingStub: () => _FakeResolutionStrategy_24( + this, + Invocation.getter(#highestAvailableStrategyResolutionStrategy), + ), ) as _i2.ResolutionStrategy Function()); @@ -2133,20 +2123,18 @@ class MockCameraXProxy extends _i1.Mock implements _i7.CameraXProxy { Invocation.getter( #ratio_16_9FallbackAutoStrategyAspectRatioStrategy, ), - returnValue: - () => _FakeAspectRatioStrategy_2( - this, - Invocation.getter( - #ratio_16_9FallbackAutoStrategyAspectRatioStrategy, - ), - ), - returnValueForMissingStub: - () => _FakeAspectRatioStrategy_2( - this, - Invocation.getter( - #ratio_16_9FallbackAutoStrategyAspectRatioStrategy, - ), - ), + returnValue: () => _FakeAspectRatioStrategy_2( + this, + Invocation.getter( + #ratio_16_9FallbackAutoStrategyAspectRatioStrategy, + ), + ), + returnValueForMissingStub: () => _FakeAspectRatioStrategy_2( + this, + Invocation.getter( + #ratio_16_9FallbackAutoStrategyAspectRatioStrategy, + ), + ), ) as _i2.AspectRatioStrategy Function()); @@ -2157,20 +2145,18 @@ class MockCameraXProxy extends _i1.Mock implements _i7.CameraXProxy { Invocation.getter( #ratio_4_3FallbackAutoStrategyAspectRatioStrategy, ), - returnValue: - () => _FakeAspectRatioStrategy_2( - this, - Invocation.getter( - #ratio_4_3FallbackAutoStrategyAspectRatioStrategy, - ), - ), - returnValueForMissingStub: - () => _FakeAspectRatioStrategy_2( - this, - Invocation.getter( - #ratio_4_3FallbackAutoStrategyAspectRatioStrategy, - ), - ), + returnValue: () => _FakeAspectRatioStrategy_2( + this, + Invocation.getter( + #ratio_4_3FallbackAutoStrategyAspectRatioStrategy, + ), + ), + returnValueForMissingStub: () => _FakeAspectRatioStrategy_2( + this, + Invocation.getter( + #ratio_4_3FallbackAutoStrategyAspectRatioStrategy, + ), + ), ) as _i2.AspectRatioStrategy Function()); @@ -2178,16 +2164,14 @@ class MockCameraXProxy extends _i1.Mock implements _i7.CameraXProxy { _i2.CaptureRequestKey Function() get controlAELockCaptureRequest => (super.noSuchMethod( Invocation.getter(#controlAELockCaptureRequest), - returnValue: - () => _FakeCaptureRequestKey_34( - this, - Invocation.getter(#controlAELockCaptureRequest), - ), - returnValueForMissingStub: - () => _FakeCaptureRequestKey_34( - this, - Invocation.getter(#controlAELockCaptureRequest), - ), + returnValue: () => _FakeCaptureRequestKey_34( + this, + Invocation.getter(#controlAELockCaptureRequest), + ), + returnValueForMissingStub: () => _FakeCaptureRequestKey_34( + this, + Invocation.getter(#controlAELockCaptureRequest), + ), ) as _i2.CaptureRequestKey Function()); @@ -2196,20 +2180,18 @@ class MockCameraXProxy extends _i1.Mock implements _i7.CameraXProxy { get infoSupportedHardwareLevelCameraCharacteristics => (super.noSuchMethod( Invocation.getter(#infoSupportedHardwareLevelCameraCharacteristics), - returnValue: - () => _FakeCameraCharacteristicsKey_9( - this, - Invocation.getter( - #infoSupportedHardwareLevelCameraCharacteristics, - ), - ), - returnValueForMissingStub: - () => _FakeCameraCharacteristicsKey_9( - this, - Invocation.getter( - #infoSupportedHardwareLevelCameraCharacteristics, - ), - ), + returnValue: () => _FakeCameraCharacteristicsKey_9( + this, + Invocation.getter( + #infoSupportedHardwareLevelCameraCharacteristics, + ), + ), + returnValueForMissingStub: () => _FakeCameraCharacteristicsKey_9( + this, + Invocation.getter( + #infoSupportedHardwareLevelCameraCharacteristics, + ), + ), ) as _i2.CameraCharacteristicsKey Function()); @@ -2218,16 +2200,14 @@ class MockCameraXProxy extends _i1.Mock implements _i7.CameraXProxy { get sensorOrientationCameraCharacteristics => (super.noSuchMethod( Invocation.getter(#sensorOrientationCameraCharacteristics), - returnValue: - () => _FakeCameraCharacteristicsKey_9( - this, - Invocation.getter(#sensorOrientationCameraCharacteristics), - ), - returnValueForMissingStub: - () => _FakeCameraCharacteristicsKey_9( - this, - Invocation.getter(#sensorOrientationCameraCharacteristics), - ), + returnValue: () => _FakeCameraCharacteristicsKey_9( + this, + Invocation.getter(#sensorOrientationCameraCharacteristics), + ), + returnValueForMissingStub: () => _FakeCameraCharacteristicsKey_9( + this, + Invocation.getter(#sensorOrientationCameraCharacteristics), + ), ) as _i2.CameraCharacteristicsKey Function()); diff --git a/packages/camera/camera_android_camerax/test/preview_rotation_test.dart b/packages/camera/camera_android_camerax/test/preview_rotation_test.dart index e427b971c15..6a9eff3d11d 100644 --- a/packages/camera/camera_android_camerax/test/preview_rotation_test.dart +++ b/packages/camera/camera_android_camerax/test/preview_rotation_test.dart @@ -107,20 +107,21 @@ void main() { PigeonInstanceManager? pigeon_instanceManager, }) async => mockProcessCameraProvider, newCameraSelector: createCameraSelector, - newPreview: ({ - int? targetRotation, - ResolutionSelector? resolutionSelector, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockPreview preview = MockPreview(); - when( - preview.surfaceProducerHandlesCropAndRotation(), - ).thenAnswer((_) async => handlesCropAndRotation); - return preview; - }, + newPreview: + ({ + int? targetRotation, + ResolutionSelector? resolutionSelector, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockPreview preview = MockPreview(); + when( + preview.surfaceProducerHandlesCropAndRotation(), + ).thenAnswer((_) async => handlesCropAndRotation); + return preview; + }, newImageCapture: ({ int? targetRotation, @@ -141,110 +142,121 @@ void main() { // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, }) => MockRecorder(), - withOutputVideoCapture: ({ - required VideoOutput videoOutput, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockVideoCapture(); - }, - newImageAnalysis: ({ - int? targetRotation, - ResolutionSelector? resolutionSelector, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockImageAnalysis(); - }, - newResolutionStrategy: ({ - required CameraSize boundSize, - required ResolutionStrategyFallbackRule fallbackRule, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockResolutionStrategy(); - }, - newResolutionSelector: ({ - AspectRatioStrategy? aspectRatioStrategy, - ResolutionStrategy? resolutionStrategy, - ResolutionFilter? resolutionFilter, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockResolutionSelector(); - }, - lowerQualityOrHigherThanFallbackStrategy: ({ - required VideoQuality quality, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockFallbackStrategy(); - }, - lowerQualityThanFallbackStrategy: ({ - required VideoQuality quality, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockFallbackStrategy(); - }, - fromCamera2CameraInfo: ({ - required CameraInfo cameraInfo, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockCamera2CameraInfo camera2cameraInfo = MockCamera2CameraInfo(); - when( - camera2cameraInfo.getCameraCharacteristic(any), - ).thenAnswer((_) async => 90); - return camera2cameraInfo; - }, - fromQualitySelector: ({ - required VideoQuality quality, - FallbackStrategy? fallbackStrategy, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockQualitySelector(); - }, - newObserver: ({ - required void Function(Observer, T) onChanged, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return Observer.detached( - onChanged: onChanged, - pigeon_instanceManager: PigeonInstanceManager( - onWeakReferenceRemoved: (_) {}, - ), - ); - }, - newSystemServicesManager: ({ - required void Function(SystemServicesManager, String) onCameraError, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockSystemServicesManager(); - }, + withOutputVideoCapture: + ({ + required VideoOutput videoOutput, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockVideoCapture(); + }, + newImageAnalysis: + ({ + int? targetRotation, + ResolutionSelector? resolutionSelector, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockImageAnalysis(); + }, + newResolutionStrategy: + ({ + required CameraSize boundSize, + required ResolutionStrategyFallbackRule fallbackRule, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockResolutionStrategy(); + }, + newResolutionSelector: + ({ + AspectRatioStrategy? aspectRatioStrategy, + ResolutionStrategy? resolutionStrategy, + ResolutionFilter? resolutionFilter, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockResolutionSelector(); + }, + lowerQualityOrHigherThanFallbackStrategy: + ({ + required VideoQuality quality, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockFallbackStrategy(); + }, + lowerQualityThanFallbackStrategy: + ({ + required VideoQuality quality, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockFallbackStrategy(); + }, + fromCamera2CameraInfo: + ({ + required CameraInfo cameraInfo, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockCamera2CameraInfo camera2cameraInfo = + MockCamera2CameraInfo(); + when( + camera2cameraInfo.getCameraCharacteristic(any), + ).thenAnswer((_) async => 90); + return camera2cameraInfo; + }, + fromQualitySelector: + ({ + required VideoQuality quality, + FallbackStrategy? fallbackStrategy, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockQualitySelector(); + }, + newObserver: + ({ + required void Function(Observer, T) onChanged, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return Observer.detached( + onChanged: onChanged, + pigeon_instanceManager: PigeonInstanceManager( + onWeakReferenceRemoved: (_) {}, + ), + ); + }, + newSystemServicesManager: + ({ + required void Function(SystemServicesManager, String) onCameraError, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockSystemServicesManager(); + }, newDeviceOrientationManager: ({ required void Function(DeviceOrientationManager, String) @@ -254,33 +266,35 @@ void main() { // ignore: non_constant_identifier_names PigeonInstanceManager? pigeon_instanceManager, }) => deviceOrientationManager, - newAspectRatioStrategy: ({ - required AspectRatio preferredAspectRatio, - required AspectRatioStrategyFallbackRule fallbackRule, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - final MockAspectRatioStrategy mockAspectRatioStrategy = - MockAspectRatioStrategy(); - when( - mockAspectRatioStrategy.getFallbackRule(), - ).thenAnswer((_) async => fallbackRule); - when( - mockAspectRatioStrategy.getPreferredAspectRatio(), - ).thenAnswer((_) async => preferredAspectRatio); - return mockAspectRatioStrategy; - }, - createWithOnePreferredSizeResolutionFilter: ({ - required CameraSize preferredSize, - // ignore: non_constant_identifier_names - BinaryMessenger? pigeon_binaryMessenger, - // ignore: non_constant_identifier_names - PigeonInstanceManager? pigeon_instanceManager, - }) { - return MockResolutionFilter(); - }, + newAspectRatioStrategy: + ({ + required AspectRatio preferredAspectRatio, + required AspectRatioStrategyFallbackRule fallbackRule, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + final MockAspectRatioStrategy mockAspectRatioStrategy = + MockAspectRatioStrategy(); + when( + mockAspectRatioStrategy.getFallbackRule(), + ).thenAnswer((_) async => fallbackRule); + when( + mockAspectRatioStrategy.getPreferredAspectRatio(), + ).thenAnswer((_) async => preferredAspectRatio); + return mockAspectRatioStrategy; + }, + createWithOnePreferredSizeResolutionFilter: + ({ + required CameraSize preferredSize, + // ignore: non_constant_identifier_names + BinaryMessenger? pigeon_binaryMessenger, + // ignore: non_constant_identifier_names + PigeonInstanceManager? pigeon_instanceManager, + }) { + return MockResolutionFilter(); + }, ); /// Returns CameraXProxy used to mock all calls to native Android in @@ -500,16 +514,15 @@ void main() { mockProcessCameraProvider: mockProcessCameraProvider, createCameraSelector: fakeCreateCameraSelector, handlesCropAndRotation: true, - getUiOrientation: - () async => - _serializeDeviceOrientation(testInitialDeviceOrientation), - getDefaultDisplayRotation: - () => Future.value(Surface.rotation0), + getUiOrientation: () async => + _serializeDeviceOrientation(testInitialDeviceOrientation), + getDefaultDisplayRotation: () => + Future.value(Surface.rotation0), ); // Get and create test camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -554,16 +567,15 @@ void main() { mockProcessCameraProvider: mockProcessCameraProvider, createCameraSelector: fakeCreateCameraSelector, handlesCropAndRotation: true, - getUiOrientation: - () async => - _serializeDeviceOrientation(testInitialDeviceOrientation), - getDefaultDisplayRotation: - () => Future.value(Surface.rotation90), + getUiOrientation: () async => + _serializeDeviceOrientation(testInitialDeviceOrientation), + getDefaultDisplayRotation: () => + Future.value(Surface.rotation90), ); // Get and create test camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -606,16 +618,15 @@ void main() { mockProcessCameraProvider: mockProcessCameraProvider, createCameraSelector: fakeCreateCameraSelector, handlesCropAndRotation: true, - getUiOrientation: - () async => - _serializeDeviceOrientation(testInitialDeviceOrientation), - getDefaultDisplayRotation: - () => Future.value(Surface.rotation180), + getUiOrientation: () async => + _serializeDeviceOrientation(testInitialDeviceOrientation), + getDefaultDisplayRotation: () => + Future.value(Surface.rotation180), ); // Get and create test camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -658,16 +669,15 @@ void main() { mockProcessCameraProvider: mockProcessCameraProvider, createCameraSelector: fakeCreateCameraSelector, handlesCropAndRotation: true, - getUiOrientation: - () async => - _serializeDeviceOrientation(testInitialDeviceOrientation), - getDefaultDisplayRotation: - () => Future.value(Surface.rotation270), + getUiOrientation: () async => + _serializeDeviceOrientation(testInitialDeviceOrientation), + getDefaultDisplayRotation: () => + Future.value(Surface.rotation270), ); // Get and create test camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -751,16 +761,15 @@ void main() { mockProcessCameraProvider: mockProcessCameraProvider, createCameraSelector: fakeCreateCameraSelector, handlesCropAndRotation: true, - getUiOrientation: - () async => - _serializeDeviceOrientation(DeviceOrientation.portraitUp), - getDefaultDisplayRotation: - () => Future.value(testInitialDefaultDisplayRotation), + getUiOrientation: () async => + _serializeDeviceOrientation(DeviceOrientation.portraitUp), + getDefaultDisplayRotation: () => + Future.value(testInitialDefaultDisplayRotation), ); // Get and create test camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -803,17 +812,15 @@ void main() { mockProcessCameraProvider: mockProcessCameraProvider, createCameraSelector: fakeCreateCameraSelector, handlesCropAndRotation: true, - getUiOrientation: - () async => _serializeDeviceOrientation( - DeviceOrientation.landscapeLeft, - ), - getDefaultDisplayRotation: - () => Future.value(testInitialDefaultDisplayRotation), + getUiOrientation: () async => + _serializeDeviceOrientation(DeviceOrientation.landscapeLeft), + getDefaultDisplayRotation: () => + Future.value(testInitialDefaultDisplayRotation), ); // Get and create test camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -856,16 +863,15 @@ void main() { mockProcessCameraProvider: mockProcessCameraProvider, createCameraSelector: fakeCreateCameraSelector, handlesCropAndRotation: true, - getUiOrientation: - () async => - _serializeDeviceOrientation(DeviceOrientation.portraitDown), - getDefaultDisplayRotation: - () => Future.value(testInitialDefaultDisplayRotation), + getUiOrientation: () async => + _serializeDeviceOrientation(DeviceOrientation.portraitDown), + getDefaultDisplayRotation: () => + Future.value(testInitialDefaultDisplayRotation), ); // Get and create test camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -908,17 +914,15 @@ void main() { mockProcessCameraProvider: mockProcessCameraProvider, createCameraSelector: fakeCreateCameraSelector, handlesCropAndRotation: true, - getUiOrientation: - () async => _serializeDeviceOrientation( - DeviceOrientation.landscapeRight, - ), - getDefaultDisplayRotation: - () => Future.value(testInitialDefaultDisplayRotation), + getUiOrientation: () async => + _serializeDeviceOrientation(DeviceOrientation.landscapeRight), + getDefaultDisplayRotation: () => + Future.value(testInitialDefaultDisplayRotation), ); // Get and create test camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -1006,8 +1010,8 @@ void main() { ); // Get and create test front camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -1049,10 +1053,9 @@ void main() { final RotatedBox rotatedBox = tester.widget( find.byType(RotatedBox), ); - final int clockwiseQuarterTurns = - rotatedBox.quarterTurns < 0 - ? rotatedBox.quarterTurns + 4 - : rotatedBox.quarterTurns; + final int clockwiseQuarterTurns = rotatedBox.quarterTurns < 0 + ? rotatedBox.quarterTurns + 4 + : rotatedBox.quarterTurns; expect(rotatedBox.child, isA()); expect((rotatedBox.child! as Texture).textureId, cameraId); expect( @@ -1103,13 +1106,13 @@ void main() { getUiOrientation: /* initial device orientation is irrelevant */ () async => _serializeDeviceOrientation(DeviceOrientation.portraitUp), - getDefaultDisplayRotation: - () => Future.value(testInitialDefaultDisplayRotation), + getDefaultDisplayRotation: () => + Future.value(testInitialDefaultDisplayRotation), ); // Get and create test front camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -1147,10 +1150,9 @@ void main() { final RotatedBox rotatedBox = tester.widget( find.byType(RotatedBox), ); - final int clockwiseQuarterTurns = - rotatedBox.quarterTurns < 0 - ? rotatedBox.quarterTurns + 4 - : rotatedBox.quarterTurns; + final int clockwiseQuarterTurns = rotatedBox.quarterTurns < 0 + ? rotatedBox.quarterTurns + 4 + : rotatedBox.quarterTurns; expect(rotatedBox.child, isA()); expect((rotatedBox.child! as Texture).textureId, cameraId); expect( @@ -1200,8 +1202,8 @@ void main() { mockCameraSelector: mockFrontCameraSelector, sensorRotationDegrees: 270, ); - proxyGetDefaultDisplayRotation = - () => Future.value(Surface.rotation0); + proxyGetDefaultDisplayRotation = () => + Future.value(Surface.rotation0); // Media settings to create camera; irrelevant for test. testMediaSettings = const MediaSettings(); @@ -1218,14 +1220,13 @@ void main() { createCameraSelector: proxyCreateCameraSelectorForFrontCamera, getDefaultDisplayRotation: proxyGetDefaultDisplayRotation, handlesCropAndRotation: false, - getUiOrientation: - () async => - _serializeDeviceOrientation(DeviceOrientation.portraitUp), + getUiOrientation: () async => + _serializeDeviceOrientation(DeviceOrientation.portraitUp), ); // Get and create test front camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -1278,15 +1279,13 @@ void main() { createCameraSelector: proxyCreateCameraSelectorForFrontCamera, getDefaultDisplayRotation: proxyGetDefaultDisplayRotation, handlesCropAndRotation: false, - getUiOrientation: - () async => _serializeDeviceOrientation( - DeviceOrientation.landscapeRight, - ), + getUiOrientation: () async => + _serializeDeviceOrientation(DeviceOrientation.landscapeRight), ); // Get and create test front camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -1339,15 +1338,13 @@ void main() { createCameraSelector: proxyCreateCameraSelectorForFrontCamera, getDefaultDisplayRotation: proxyGetDefaultDisplayRotation, handlesCropAndRotation: false, - getUiOrientation: - () async => _serializeDeviceOrientation( - DeviceOrientation.portraitDown, - ), + getUiOrientation: () async => + _serializeDeviceOrientation(DeviceOrientation.portraitDown), ); // Get and create test front camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -1400,15 +1397,13 @@ void main() { createCameraSelector: proxyCreateCameraSelectorForFrontCamera, getDefaultDisplayRotation: proxyGetDefaultDisplayRotation, handlesCropAndRotation: false, - getUiOrientation: - () async => _serializeDeviceOrientation( - DeviceOrientation.landscapeLeft, - ), + getUiOrientation: () async => + _serializeDeviceOrientation(DeviceOrientation.landscapeLeft), ); // Get and create test front camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -1487,9 +1482,8 @@ void main() { mockCameraSelector: mockFrontCameraSelector, sensorRotationDegrees: 270, ); - proxyGetUiOrientation = - () async => - _serializeDeviceOrientation(DeviceOrientation.landscapeLeft); + proxyGetUiOrientation = () async => + _serializeDeviceOrientation(DeviceOrientation.landscapeLeft); // Media settings to create camera; irrelevant for test. testMediaSettings = const MediaSettings(); @@ -1504,15 +1498,15 @@ void main() { mockProcessCameraProvider: mockProcessCameraProviderForFrontCamera, createCameraSelector: proxyCreateCameraSelectorForFrontCamera, - getDefaultDisplayRotation: - () => Future.value(Surface.rotation0), + getDefaultDisplayRotation: () => + Future.value(Surface.rotation0), handlesCropAndRotation: false, getUiOrientation: proxyGetUiOrientation, ); // Get and create test front camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -1563,15 +1557,15 @@ void main() { mockProcessCameraProvider: mockProcessCameraProviderForFrontCamera, createCameraSelector: proxyCreateCameraSelectorForFrontCamera, - getDefaultDisplayRotation: - () => Future.value(Surface.rotation90), + getDefaultDisplayRotation: () => + Future.value(Surface.rotation90), handlesCropAndRotation: false, getUiOrientation: proxyGetUiOrientation, ); // Get and create test front camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -1626,15 +1620,15 @@ void main() { mockProcessCameraProvider: mockProcessCameraProviderForFrontCamera, createCameraSelector: proxyCreateCameraSelectorForFrontCamera, - getDefaultDisplayRotation: - () => Future.value(Surface.rotation180), + getDefaultDisplayRotation: () => + Future.value(Surface.rotation180), handlesCropAndRotation: false, getUiOrientation: proxyGetUiOrientation, ); // Get and create test front camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -1687,15 +1681,15 @@ void main() { mockProcessCameraProvider: mockProcessCameraProviderForFrontCamera, createCameraSelector: proxyCreateCameraSelectorForFrontCamera, - getDefaultDisplayRotation: - () => Future.value(Surface.rotation270), + getDefaultDisplayRotation: () => + Future.value(Surface.rotation270), handlesCropAndRotation: false, getUiOrientation: proxyGetUiOrientation, ); // Get and create test front camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -1794,8 +1788,8 @@ void main() { ); // Get and create test front camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -1851,10 +1845,9 @@ void main() { checkXAxisIsMirrored(transformedPreviewMatrix); expect((transformedPreview.child! as Texture).textureId, cameraId); - final int clockwiseQuarterTurns = - rotatedBox.quarterTurns < 0 - ? rotatedBox.quarterTurns + 4 - : rotatedBox.quarterTurns; + final int clockwiseQuarterTurns = rotatedBox.quarterTurns < 0 + ? rotatedBox.quarterTurns + 4 + : rotatedBox.quarterTurns; expect( clockwiseQuarterTurns, expectedQuarterTurns, @@ -1905,13 +1898,13 @@ void main() { getUiOrientation: /* initial device orientation irrelevant for test */ () async => _serializeDeviceOrientation(DeviceOrientation.landscapeLeft), - getDefaultDisplayRotation: - () => Future.value(Surface.rotation90), + getDefaultDisplayRotation: () => + Future.value(Surface.rotation90), ); // Get and create test front camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -1968,10 +1961,9 @@ void main() { checkYAxisIsMirrored(transformedPreviewMatrix); } expect((transformedPreview.child! as Texture).textureId, cameraId); - final int clockwiseQuarterTurns = - rotatedBox.quarterTurns < 0 - ? rotatedBox.quarterTurns + 4 - : rotatedBox.quarterTurns; + final int clockwiseQuarterTurns = rotatedBox.quarterTurns < 0 + ? rotatedBox.quarterTurns + 4 + : rotatedBox.quarterTurns; expect( clockwiseQuarterTurns, expectedQuarterTurns, @@ -2015,8 +2007,8 @@ void main() { mockBackCameraSelector = MockCameraSelector(); proxyCreateCameraSelectorForBackCamera = createCameraSelectorForBackCamera(mockBackCameraSelector); - proxyGetDefaultDisplayRotation = - () => Future.value(Surface.rotation270); + proxyGetDefaultDisplayRotation = () => + Future.value(Surface.rotation270); testMediaSettings = const MediaSettings(); }); @@ -2040,14 +2032,13 @@ void main() { createCameraSelector: proxyCreateCameraSelectorForBackCamera, getDefaultDisplayRotation: proxyGetDefaultDisplayRotation, handlesCropAndRotation: false, - getUiOrientation: - () async => - _serializeDeviceOrientation(testInitialDeviceOrientation), + getUiOrientation: () async => + _serializeDeviceOrientation(testInitialDeviceOrientation), ); // Get and create test back camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -2099,14 +2090,13 @@ void main() { createCameraSelector: proxyCreateCameraSelectorForBackCamera, getDefaultDisplayRotation: proxyGetDefaultDisplayRotation, handlesCropAndRotation: false, - getUiOrientation: - () async => - _serializeDeviceOrientation(testInitialDeviceOrientation), + getUiOrientation: () async => + _serializeDeviceOrientation(testInitialDeviceOrientation), ); // Get and create test back camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -2161,8 +2151,8 @@ void main() { testSensorOrientation = 90; // Create mock for seting initial default display rotation to 180 degrees. - proxyGetDefaultDisplayRotation = - () => Future.value(Surface.rotation90); + proxyGetDefaultDisplayRotation = () => + Future.value(Surface.rotation90); // Media settings to create camera; irrelevant for test. testMediaSettings = const MediaSettings(); @@ -2195,14 +2185,13 @@ void main() { createCameraSelector: proxyCreateCameraSelectorForFrontCamera, getDefaultDisplayRotation: proxyGetDefaultDisplayRotation, handlesCropAndRotation: false, - getUiOrientation: - () async => - _serializeDeviceOrientation(testInitialDeviceOrientation), + getUiOrientation: () async => + _serializeDeviceOrientation(testInitialDeviceOrientation), ); // Get and create test camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first, @@ -2274,14 +2263,13 @@ void main() { createCameraSelector: proxyCreateCameraSelectorForFrontCamera, getDefaultDisplayRotation: proxyGetDefaultDisplayRotation, handlesCropAndRotation: false, - getUiOrientation: - () async => - _serializeDeviceOrientation(testInitialDeviceOrientation), + getUiOrientation: () async => + _serializeDeviceOrientation(testInitialDeviceOrientation), ); // Get and create test camera. - final List availableCameras = - await camera.availableCameras(); + final List availableCameras = await camera + .availableCameras(); expect(availableCameras.length, 1); await camera.createCameraWithSettings( availableCameras.first,