package degraded_continuity_test import ( "testing" "git.cin.su/m/Assistant/contracts/capability" "git.cin.su/m/Assistant/modules/capability/domain" "git.cin.su/m/Assistant/platform/ids" ) func TestCognitiveProviderLossIsExplicitDegradedCapability(t *testing.T) { observed := int64(1) status := capability.Health{ CapabilityID: capability.CapabilityID(ids.ID("cognitive-proposal")), State: capability.HealthDegraded, Reason: capability.ReasonCognitiveProvidersUnavailable, Revision: 1, SemanticVersion: capability.HealthV2, ObservedAtUnixMillis: &observed, } if err := domain.ValidateHealth(status); err != nil { t.Fatalf("valid degraded health rejected: %v", err) } } func TestAvailableCapabilityCannotClaimDegradedReason(t *testing.T) { observed := int64(1) status := capability.Health{ CapabilityID: capability.CapabilityID(ids.ID("cognitive-proposal")), State: capability.HealthAvailable, Reason: capability.ReasonCognitiveProvidersUnavailable, Revision: 1, SemanticVersion: capability.HealthV2, ObservedAtUnixMillis: &observed, } if err := domain.ValidateHealth(status); err == nil { t.Fatal("available status with degraded reason was accepted") } }