Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit9e8bf7e

Browse files
committed
chore: restore deleted test cases
Signed-off-by: Danny Kopping <dannykopping@gmail.com>
1 parent4c1c469 commit9e8bf7e

File tree

1 file changed

+56
-0
lines changed

1 file changed

+56
-0
lines changed

‎enterprise/coderd/prebuilds/metricscollector_test.go

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,26 @@ func TestMetricsCollector(t *testing.T) {
164164
templateDeleted: []bool{false},
165165
eligible: []bool{false},
166166
},
167+
{
168+
name:"deleted templates never desire prebuilds",
169+
transitions:allTransitions,
170+
jobStatuses:allJobStatuses,
171+
initiatorIDs: []uuid.UUID{agplprebuilds.SystemUserID},
172+
ownerIDs: []uuid.UUID{agplprebuilds.SystemUserID,uuid.New()},
173+
metrics:nil,
174+
templateDeleted: []bool{true},
175+
eligible: []bool{false},
176+
},
177+
{
178+
name:"running prebuilds for deleted templates are still counted, so that they can be deleted",
179+
transitions: []database.WorkspaceTransition{database.WorkspaceTransitionStart},
180+
jobStatuses: []database.ProvisionerJobStatus{database.ProvisionerJobStatusSucceeded},
181+
initiatorIDs: []uuid.UUID{agplprebuilds.SystemUserID},
182+
ownerIDs: []uuid.UUID{agplprebuilds.SystemUserID},
183+
metrics:nil,
184+
templateDeleted: []bool{true},
185+
eligible: []bool{false},
186+
},
167187
}
168188
for_,test:=rangetests {
169189
test:=test// capture for parallel
@@ -256,6 +276,12 @@ func TestMetricsCollector(t *testing.T) {
256276
"organization_name":org.Name,
257277
}
258278

279+
// If no expected metrics have been defined, ensure we don't find any metric series (i.e. metrics with given labels).
280+
iftest.metrics==nil {
281+
series:=findAllMetricSeries(metricsFamilies,labels)
282+
require.Empty(t,series)
283+
}
284+
259285
for_,check:=rangetest.metrics {
260286
metric:=findMetric(metricsFamilies,check.name,labels)
261287
ifcheck.value==nil {
@@ -430,3 +456,33 @@ func findMetric(metricsFamilies []*prometheus_client.MetricFamily, name string,
430456
}
431457
returnnil
432458
}
459+
460+
// findAllMetricSeries finds all metrics with a given set of labels.
461+
funcfindAllMetricSeries(metricsFamilies []*prometheus_client.MetricFamily,labelsmap[string]string)map[string]*prometheus_client.Metric {
462+
series:=make(map[string]*prometheus_client.Metric)
463+
for_,metricFamily:=rangemetricsFamilies {
464+
for_,metric:=rangemetricFamily.GetMetric() {
465+
labelPairs:=metric.GetLabel()
466+
467+
iflen(labelPairs)!=len(labels) {
468+
continue
469+
}
470+
471+
// Convert label pairs to map for easier lookup
472+
metricLabels:=make(map[string]string,len(labelPairs))
473+
for_,label:=rangelabelPairs {
474+
metricLabels[label.GetName()]=label.GetValue()
475+
}
476+
477+
// Check if all requested labels match
478+
forwantName,wantValue:=rangelabels {
479+
ifmetricLabels[wantName]!=wantValue {
480+
continue
481+
}
482+
}
483+
484+
series[metricFamily.GetName()]=metric
485+
}
486+
}
487+
returnseries
488+
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp