zitare-native/Tests/UnitTests/AppConfigTests.swift
Till 0bd59ed148 ζ-0 Setup: Repo-Skelett, iOS-Build grün, Healthz live
- project.yml mit Bundle ev.mana.zitare + Widget + ShareExt-Targets
- ManaSwiftCore (ManaCore + ManaTokens) + ManaSwiftUI (ManaAuthUI)
  als Package-Dependencies via path:
- Pure SwiftUI für Native-Surfaces, WKWebView nur für Lese-Tabs
  (Hybrid-Sonderfall vs cards/memoro/manaspur, dokumentiert im
  Playbook ZITARE_NATIVE_GREENFIELD.md)
- Theme: paper-Variant aus @mana/themes
- ZitareAPI.healthCheck via direct URLSession (öffentlicher
  Endpoint, kein AuthenticatedTransport-Gate)
- 6/6 AppConfigTests + 1/1 UI-Smoke grün auf iPhone 16e Simulator
- Live: zitare-api.mana.how/healthz → HTTP/2 200

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 12:15:22 +02:00

34 lines
1.1 KiB
Swift

import XCTest
@testable import ZitareNative
/// Phase ζ-0 Basis-Tests: Konfigurations-Konstanten sind konsistent
/// mit dem mana-Plattform-Setup (Bundle-ID, Keychain-Service,
/// Endpoint-Domains).
final class AppConfigTests: XCTestCase {
func test_authBaseURL_pointsToManaAuth() {
XCTAssertEqual(
AppConfig.manaAppConfig.authBaseURL.absoluteString,
"https://auth.mana.how"
)
}
func test_keychainService_matchesBundle() {
XCTAssertEqual(AppConfig.manaAppConfig.keychainService, "ev.mana.zitare")
}
func test_apiBaseURL_pointsToZitareApi() {
XCTAssertEqual(AppConfig.apiBaseURL.absoluteString, "https://zitare-api.mana.how")
}
func test_webBaseURL_isPublicSurface() {
XCTAssertEqual(AppConfig.webBaseURL.absoluteString, "https://zitare.com")
}
func test_appBaseURL_isManaHowSurface() {
XCTAssertEqual(AppConfig.appBaseURL.absoluteString, "https://zitare.mana.how")
}
func test_appGroup_matchesEntitlement() {
XCTAssertEqual(AppConfig.appGroup, "group.ev.mana.zitare")
}
}