Files
MacMonitor/Tests/MMDisplayTests.swift
gronod 6473a1a4b2
MacMonitor CI/CD Pipeline / Build & Test (Intel x86_64) (push) Successful in 2m37s
feat(display): implement MMDisplayManager for brightness and display specs (Issue #13)
2026-09-08 13:13:04 +01:00

47 lines
1.5 KiB
Swift

import XCTest
@testable import MacMonitor
final class MMDisplayTests: XCTestCase {
func testDisplayManagerActiveDisplays() {
let manager = MMDisplayManager.shared()
XCTAssertNotNil(manager, "MMDisplayManager instance should not be nil")
let displays = manager.activeDisplays()
XCTAssertNotNil(displays, "Active displays array should not be nil")
// In CI or headless/headless VM or real Mac, online display list can be checked
for display in displays {
XCTAssertGreaterThan(display.displayID, 0)
XCTAssertFalse(display.name.isEmpty)
if display.isOnline {
XCTAssertGreaterThan(display.width, 0)
XCTAssertGreaterThan(display.height, 0)
}
}
}
func testDisplayInfoInitialization() {
let info = MMDisplayInfo(
displayID: 1001,
name: "Test Display",
isBuiltin: true,
isMain: true,
isOnline: true,
width: 2560,
height: 1600,
refreshRate: 60.0,
brightness: 0.75
)
XCTAssertEqual(info.displayID, 1001)
XCTAssertEqual(info.name, "Test Display")
XCTAssertTrue(info.isBuiltin)
XCTAssertTrue(info.isMain)
XCTAssertTrue(info.isOnline)
XCTAssertEqual(info.width, 2560)
XCTAssertEqual(info.height, 1600)
XCTAssertEqual(info.refreshRate, 60.0)
XCTAssertEqual(info.brightness, 0.75, accuracy: 0.001)
}
}