FakeCameraSession class

A CameraSession that never touches a device.

Drives the same state a real session does — recording flag, elapsed timer, facing and flash — so a composer's viewfinder chrome can be exercised in a widget test, including the auto-stop at the cap.

Implemented types

Constructors

FakeCameraSession({CameraAccess access = CameraAccess.granted, CapturedImage? photo, CapturedVideo? video})

Properties

access ↔ CameraAccess
What initialize reports. Set to a denial to render a permission state.
getter/setter pair
facing → CameraFacing
no setteroverride
flash → CameraFlash
no setteroverride
flipCount ↔ int
getter/setter pair
hashCode → int
The hash code for this object.
no setterinherited
initializeCount ↔ int
getter/setter pair
isDisposed ↔ bool
getter/setter pair
isInitialized → bool
no setteroverride
isRecording → ValueListenable<bool>
True while a recording is running. Also the auto-stop signal: the session clears this on its own when startVideoRecording's cap is reached, and the host then calls stopVideoRecording to collect the file.
no setteroverride
lastMaxDuration ↔ Duration?
getter/setter pair
mode → CameraCaptureMode
no setteroverride
photoCount ↔ int
getter/setter pair
preview → PreviewTexture?
The texture and geometry to render, or null before initialize completes.
no setteroverride
recordedDuration → ValueListenable<Duration>
How long the running recording has been going, for an on-screen timer. Resets to zero when recording stops.
no setteroverride
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

capturePhoto() → Future<CapturedImage>
override
cycleFlash() → Future<void>
override
dispose() → Future<void>
override
flip() → Future<void>
override
initialize(CameraCaptureMode mode) → Future<CameraAccess>
Opens the device for mode, claiming the microphone only when mode is CameraCaptureMode.video. Safe to call again to switch mode.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
pausePreview() → Future<void>
Releases the device when the app backgrounds or an edit step opens; resumePreview reopens it.
override
resumePreview() → Future<void>
override
startVideoRecording({Duration? maxDuration}) → Future<void>
Starts recording, auto-stopping at maxDuration so a capped composer never has to police the length after the fact.
override
stopVideoRecording() → Future<CapturedVideo>
override
tick(Duration elapsed) → void
Advances the on-screen timer without a real clock, and fires the auto-stop once the cap is reached — the same signal the real session sends.
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited