43 lines
1.3 KiB
Swift
43 lines
1.3 KiB
Swift
import SwiftUI
|
|
import XCTest
|
|
|
|
@testable import MultiSimAdmin
|
|
|
|
final class AIThemeTests: XCTestCase {
|
|
func testControlDimensionsMatchIOS() {
|
|
XCTAssertEqual(AITheme.buttonHeight, 44, accuracy: 0.1)
|
|
XCTAssertEqual(AITheme.compactButtonHeight, 40, accuracy: 0.1)
|
|
XCTAssertEqual(AITheme.largeButtonHeight, 50, accuracy: 0.1)
|
|
XCTAssertEqual(AITheme.buttonRadius, 12, accuracy: 0.1)
|
|
XCTAssertEqual(AITheme.iconButtonSize, 44, accuracy: 0.1)
|
|
}
|
|
|
|
func testButtonKindsHaveDistinctBaseColors() {
|
|
let colors = [
|
|
AIButtonStyle.Kind.primary,
|
|
.secondary,
|
|
.danger
|
|
].map(\.backgroundColor)
|
|
XCTAssertEqual(Set(colors).count, 3)
|
|
}
|
|
|
|
func testDisabledKindsUseReducedButVisibleRendering() {
|
|
let disabledKinds = [
|
|
AIButtonStyle.Kind.primary,
|
|
.secondary,
|
|
.danger
|
|
]
|
|
let disabledColors = disabledKinds.map { $0.backgroundColor(isEnabled: false) }
|
|
|
|
XCTAssertEqual(Set(disabledColors).count, disabledKinds.count)
|
|
XCTAssertEqual(
|
|
disabledKinds.map { $0.foregroundColor(isEnabled: false) },
|
|
[
|
|
.white.opacity(0.72),
|
|
AITheme.muted,
|
|
.white.opacity(0.72)
|
|
]
|
|
)
|
|
}
|
|
}
|