From 6ee77021e58b2ca0b1a106eedc991daeb33d03f7 Mon Sep 17 00:00:00 2001 From: camsim99 Date: Fri, 10 Feb 2023 12:25:41 -0800 Subject: [PATCH 1/2] Add integration test --- .../integration_test/integration_test.dart | 18 +++++++++++++++++- .../camera/camera_android_camerax/pubspec.yaml | 2 ++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/packages/camera/camera_android_camerax/example/integration_test/integration_test.dart b/packages/camera/camera_android_camerax/example/integration_test/integration_test.dart index 2b82b4bda5e4..b05d14a9cc79 100644 --- a/packages/camera/camera_android_camerax/example/integration_test/integration_test.dart +++ b/packages/camera/camera_android_camerax/example/integration_test/integration_test.dart @@ -2,11 +2,27 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. +import 'package:camera_android_camerax/camera_android_camerax.dart'; +import 'package:camera_platform_interface/camera_platform_interface.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:integration_test/integration_test.dart'; void main() { IntegrationTestWidgetsFlutterBinding.ensureInitialized(); - testWidgets('placeholder test', (WidgetTester tester) async {}); + setUpAll(() async { + CameraPlatform.instance = AndroidCameraCameraX(); + }); + + testWidgets('availableCameras only supports valid back or front cameras', + (WidgetTester tester) async { + final List availableCameras = + await CameraPlatform.instance.availableCameras(); + + for (final CameraDescription cameraDescription in availableCameras) { + expect( + cameraDescription.lensDirection, isNot(CameraLensDirection.external)); + expect(cameraDescription.sensorOrientation, anyOf(0, 90, 180, 270)); + } + }); } diff --git a/packages/camera/camera_android_camerax/pubspec.yaml b/packages/camera/camera_android_camerax/pubspec.yaml index 7f81ecbd4f71..45d5a2c66abd 100644 --- a/packages/camera/camera_android_camerax/pubspec.yaml +++ b/packages/camera/camera_android_camerax/pubspec.yaml @@ -21,6 +21,8 @@ dependencies: camera_platform_interface: ^2.2.0 flutter: sdk: flutter + integration_test: + sdk: flutter stream_transform: ^2.1.0 dev_dependencies: From cc10b878016e5b0fe1219331dfda33d0d9755409 Mon Sep 17 00:00:00 2001 From: camsim99 Date: Fri, 10 Feb 2023 12:35:28 -0800 Subject: [PATCH 2/2] Add integration test --- packages/camera/camera_android_camerax/CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/camera/camera_android_camerax/CHANGELOG.md b/packages/camera/camera_android_camerax/CHANGELOG.md index 50fdf586c5e7..06f41a68a146 100644 --- a/packages/camera/camera_android_camerax/CHANGELOG.md +++ b/packages/camera/camera_android_camerax/CHANGELOG.md @@ -10,3 +10,4 @@ * Changes instance manager to allow the separate creation of identical objects. * Adds Preview and Surface classes, along with other methods needed to implement camera preview. * Adds implementation of availableCameras() +* Adds integration test to plugin.