Files
iccery-v2-mac/Tests/ICCeryCoreTests/SpotReadArgsTests.swift
gronodandDevin <158243242+devin-ai-integration[bot]@users.noreply.github.com> d40932f4cf feat(spotread): spot-read console for live Lab (#148)
Refs #148

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-13 01:03:57 +01:00

47 lines
1.5 KiB
Swift

import XCTest
@testable import ICCeryCore
/// `SpotReadArgs` goldens (issue #148):
/// `spotread -v -e [-c port] [-Y l]` — never `-u`, never a basename,
/// `-c` only for ports > 1, `-Y l` only when the LED setting is on.
final class SpotReadArgsTests: XCTestCase {
func testAutoOmitsPort() {
let args = SpotReadArgs.build(config: SpotReadConfig())
XCTAssertEqual(args, ["-v", "-e"])
}
func testPort1OmitsC() {
let args = SpotReadArgs.build(config: SpotReadConfig(selectedPort: 1))
XCTAssertEqual(args, ["-v", "-e"])
}
func testPort2IncludesC() {
let args = SpotReadArgs.build(config: SpotReadConfig(selectedPort: 2))
XCTAssertEqual(args, ["-v", "-e", "-c", "2"])
}
func testLedFlag() {
let args = SpotReadArgs.build(config: SpotReadConfig(enableLEDs: true))
XCTAssertEqual(args, ["-v", "-e", "-Y", "l"])
}
func testPortAndLeds() {
let args = SpotReadArgs.build(
config: SpotReadConfig(selectedPort: 2, enableLEDs: true))
XCTAssertEqual(args, ["-v", "-e", "-c", "2", "-Y", "l"])
}
func testNeverU() {
for config in [
SpotReadConfig(),
SpotReadConfig(selectedPort: 2),
SpotReadConfig(enableLEDs: true),
SpotReadConfig(selectedPort: 3, enableLEDs: true),
] {
XCTAssertFalse(SpotReadArgs.build(config: config).contains("-u"))
XCTAssertFalse(SpotReadArgs.build(config: config).contains("-d"))
}
}
}