server: infer archive collected_at from source events

This commit is contained in:
2026-02-28 22:18:47 +03:00
parent 0252264ddc
commit 736b77f055
3 changed files with 90 additions and 1 deletions

View File

@@ -30,6 +30,36 @@ func TestApplyArchiveSourceMetadata(t *testing.T) {
}
}
func TestApplyArchiveSourceMetadata_PreservesExistingCollectedAt(t *testing.T) {
expected := time.Date(2026, 2, 10, 15, 30, 0, 0, time.UTC)
result := &models.AnalysisResult{
CollectedAt: expected,
}
applyArchiveSourceMetadata(result)
if !result.CollectedAt.Equal(expected) {
t.Fatalf("expected collected_at to be preserved: got %s want %s", result.CollectedAt, expected)
}
}
func TestApplyArchiveSourceMetadata_InferCollectedAtFromEvents(t *testing.T) {
oldTs := time.Date(2026, 2, 10, 13, 0, 0, 0, time.UTC)
newTs := time.Date(2026, 2, 10, 15, 30, 0, 0, time.UTC)
result := &models.AnalysisResult{
Events: []models.Event{
{Timestamp: oldTs},
{Timestamp: newTs},
},
}
applyArchiveSourceMetadata(result)
if !result.CollectedAt.Equal(newTs) {
t.Fatalf("expected collected_at from latest event: got %s want %s", result.CollectedAt, newTs)
}
}
func TestApplyCollectSourceMetadata(t *testing.T) {
req := CollectRequest{
Host: "bmc-api.local",