Files
openclaw/apps/ios/Tests/CameraControllerClampTests.swift
Peter Steinberger 59b2fbbb4b feat(ios): Talk camera flip control and mic input selection (#111044)
* feat(ios): add Talk camera flip and mic selection

* chore(ios): sync native i18n inventory and locale artifacts for talk camera/mic strings

* chore(ios): commit regenerated Localizable.xcstrings for new talk strings

* fix(ios): extract Talk composer controls

* chore(ios): resync native i18n inventory and locale artifacts atop landed Android entries

* fix(ios): repair Talk composer CI checks

* chore(i18n): commit regenerated Android locale outputs from catalog reconciliation

* chore(i18n): sync Android locale outputs after rebase
2026-07-19 01:24:53 -07:00

32 lines
1.4 KiB
Swift

import Testing
@testable import OpenClaw
struct CameraControllerClampTests {
@Test func `clamp quality defaults and bounds`() {
#expect(CameraController.clampQuality(nil) == 0.9)
#expect(CameraController.clampQuality(0.0) == 0.05)
#expect(CameraController.clampQuality(0.049) == 0.05)
#expect(CameraController.clampQuality(0.05) == 0.05)
#expect(CameraController.clampQuality(0.5) == 0.5)
#expect(CameraController.clampQuality(1.0) == 1.0)
#expect(CameraController.clampQuality(1.1) == 1.0)
}
@Test func `clamp duration defaults and bounds`() {
#expect(CameraController.clampDurationMs(nil) == 3000)
#expect(CameraController.clampDurationMs(0) == 250)
#expect(CameraController.clampDurationMs(249) == 250)
#expect(CameraController.clampDurationMs(250) == 250)
#expect(CameraController.clampDurationMs(1000) == 1000)
#expect(CameraController.clampDurationMs(60000) == 60000)
#expect(CameraController.clampDurationMs(60001) == 60000)
}
@Test func `preferred facing defaults and explicit override`() {
#expect(NodeAppModel.cameraFacingPreference(rawValue: nil) == .front)
#expect(NodeAppModel.cameraFacingPreference(rawValue: "back") == .back)
#expect(CameraController.resolveFacing(nil, defaultFacing: .back) == .back)
#expect(CameraController.resolveFacing(.front, defaultFacing: .back) == .front)
}
}