Move diagnostics into settings, remove the app-local notification module, unify the global theme switcher, refine privacy copy and the instance detail experience, and rebuild the app icon.
27 lines
802 B
Swift
27 lines
802 B
Swift
import XCTest
|
|
|
|
@testable import MultiSimAdmin
|
|
|
|
final class ThemeModeTests: XCTestCase {
|
|
@MainActor
|
|
func testLoadsPersistedThemeMode() throws {
|
|
let defaults = try XCTUnwrap(UserDefaults(suiteName: "ThemeModeTests-\(UUID().uuidString)"))
|
|
defaults.set(ThemeMode.dark.rawValue, forKey: "aiThemeMode")
|
|
|
|
XCTAssertEqual(ThemeStore(defaults: defaults).mode, .dark)
|
|
}
|
|
|
|
@MainActor
|
|
func testSelectionPersistsThemeMode() throws {
|
|
let suiteName = "ThemeModeTests-\(UUID().uuidString)"
|
|
let defaults = try XCTUnwrap(UserDefaults(suiteName: suiteName))
|
|
let store = ThemeStore(defaults: defaults)
|
|
|
|
store.set(.light)
|
|
store.set(.system)
|
|
|
|
XCTAssertEqual(ThemeMode(rawValue: defaults.string(forKey: "aiThemeMode") ?? ""), .system)
|
|
XCTAssertEqual(store.mode, .system)
|
|
}
|
|
}
|