Files
2026-07-13 12:22:33 +08:00

233 lines
7.0 KiB
Swift

import Foundation
import Testing
@testable import CodexBarCore
struct FactoryProviderDescriptorTests {
@Test
func `descriptor keeps legacy labels by default`() {
let metadata = FactoryProviderDescriptor.descriptor.metadata
#expect(metadata.sessionLabel == "Standard")
#expect(metadata.weeklyLabel == "Premium")
#expect(metadata.opusLabel == nil)
#expect(!metadata.supportsOpus)
}
}
struct FactoryStatusSnapshotTests {
@Test
func `maps usage snapshot windows and login method`() {
let periodEnd = Date(timeIntervalSince1970: 1_738_368_000) // Feb 1, 2025
let snapshot = FactoryStatusSnapshot(
standardUserTokens: 50,
standardOrgTokens: 0,
standardAllowance: 100,
premiumUserTokens: 25,
premiumOrgTokens: 0,
premiumAllowance: 50,
periodStart: nil,
periodEnd: periodEnd,
planName: "Pro",
tier: "enterprise",
organizationName: "Acme",
accountEmail: "user@example.com",
userId: "user-1",
rawJSON: nil)
let usage = snapshot.toUsageSnapshot()
#expect(usage.primary?.usedPercent == 50)
#expect(usage.primary?.resetsAt == periodEnd)
#expect(usage.primary?.resetDescription?.hasPrefix("Resets ") == true)
#expect(usage.secondary?.usedPercent == 50)
#expect(usage.loginMethod(for: .factory) == "Factory Enterprise - Pro")
}
@Test
func `treats large allowances as unlimited`() {
let snapshot = FactoryStatusSnapshot(
standardUserTokens: 50_000_000,
standardOrgTokens: 0,
standardAllowance: 2_000_000_000_000,
premiumUserTokens: 0,
premiumOrgTokens: 0,
premiumAllowance: 0,
periodStart: nil,
periodEnd: nil,
planName: nil,
tier: nil,
organizationName: nil,
accountEmail: nil,
userId: nil,
rawJSON: nil)
let usage = snapshot.toUsageSnapshot()
#expect(usage.primary?.usedPercent == 50)
}
@Test
func `prefers API used ratio when allowance missing`() {
let snapshot = FactoryStatusSnapshot(
standardUserTokens: 72_311_737,
standardOrgTokens: 72_311_737,
standardAllowance: 0,
standardUsedRatio: 0.3615586850,
premiumUserTokens: 0,
premiumOrgTokens: 0,
premiumAllowance: 0,
premiumUsedRatio: 0.0,
periodStart: nil,
periodEnd: nil,
planName: "Max",
tier: nil,
organizationName: nil,
accountEmail: nil,
userId: nil,
rawJSON: nil)
let usage = snapshot.toUsageSnapshot()
#expect(usage.primary?.usedPercent ?? 0 > 36)
#expect(usage.primary?.usedPercent ?? 0 < 37)
}
@Test
func `uses percent scale ratio when allowance missing`() {
let snapshot = FactoryStatusSnapshot(
standardUserTokens: 0,
standardOrgTokens: 0,
standardAllowance: 0,
standardUsedRatio: 10.0,
premiumUserTokens: 0,
premiumOrgTokens: 0,
premiumAllowance: 0,
premiumUsedRatio: nil,
periodStart: nil,
periodEnd: nil,
planName: nil,
tier: nil,
organizationName: nil,
accountEmail: nil,
userId: nil,
rawJSON: nil)
let usage = snapshot.toUsageSnapshot()
#expect(usage.primary?.usedPercent == 10)
}
@Test
func `falls back to calculation when API ratio is zero but usage and allowance are present`() {
let snapshot = FactoryStatusSnapshot(
standardUserTokens: 5_826_293,
standardOrgTokens: 0,
standardAllowance: 20_000_000,
standardUsedRatio: 0,
premiumUserTokens: 0,
premiumOrgTokens: 0,
premiumAllowance: 0,
premiumUsedRatio: 0,
periodStart: nil,
periodEnd: nil,
planName: nil,
tier: nil,
organizationName: nil,
accountEmail: nil,
userId: nil,
rawJSON: nil)
let usage = snapshot.toUsageSnapshot()
#expect(usage.primary?.usedPercent ?? 0 > 29)
#expect(usage.primary?.usedPercent ?? 0 < 30)
#expect(usage.secondary?.usedPercent == 0)
}
@Test
func `falls back to calculation when API ratio missing`() {
let snapshot = FactoryStatusSnapshot(
standardUserTokens: 50_000_000,
standardOrgTokens: 0,
standardAllowance: 100_000_000,
standardUsedRatio: nil,
premiumUserTokens: 0,
premiumOrgTokens: 0,
premiumAllowance: 0,
premiumUsedRatio: nil,
periodStart: nil,
periodEnd: nil,
planName: nil,
tier: nil,
organizationName: nil,
accountEmail: nil,
userId: nil,
rawJSON: nil)
let usage = snapshot.toUsageSnapshot()
#expect(usage.primary?.usedPercent == 50)
}
@Test
func `falls back when API ratio is invalid`() {
let snapshot = FactoryStatusSnapshot(
standardUserTokens: 50_000_000,
standardOrgTokens: 0,
standardAllowance: 100_000_000,
standardUsedRatio: 1.5,
premiumUserTokens: 0,
premiumOrgTokens: 0,
premiumAllowance: 0,
premiumUsedRatio: -0.5,
periodStart: nil,
periodEnd: nil,
planName: nil,
tier: nil,
organizationName: nil,
accountEmail: nil,
userId: nil,
rawJSON: nil)
let usage = snapshot.toUsageSnapshot()
#expect(usage.primary?.usedPercent == 50)
}
@Test
func `clamps slightly out of range ratios`() {
let snapshot = FactoryStatusSnapshot(
standardUserTokens: 100_000_000,
standardOrgTokens: 0,
standardAllowance: 100_000_000,
standardUsedRatio: 1.0005,
premiumUserTokens: 0,
premiumOrgTokens: 0,
premiumAllowance: 0,
premiumUsedRatio: nil,
periodStart: nil,
periodEnd: nil,
planName: nil,
tier: nil,
organizationName: nil,
accountEmail: nil,
userId: nil,
rawJSON: nil)
let usage = snapshot.toUsageSnapshot()
#expect(usage.primary?.usedPercent == 100)
}
}
struct FactoryStatusProbeWorkOSTests {
@Test
func `detects missing refresh token payload`() {
let payload = Data("""
{"error":"invalid_request","error_description":"Missing refresh token."}
""".utf8)
#expect(FactoryStatusProbe.isMissingWorkOSRefreshToken(payload))
}
}