mirror of
https://github.com/kubernetes-sigs/prometheus-adapter.git
synced 2026-04-06 17:57:51 +00:00
Moving the query building logic, adding first unit test.
Moving it into its own type to better organize and separate concerns. Also makes unit testing easier.
This commit is contained in:
parent
e9af0455ba
commit
3727f99343
3 changed files with 124 additions and 76 deletions
23
pkg/custom-provider/external_metric_query_builder_test.go
Normal file
23
pkg/custom-provider/external_metric_query_builder_test.go
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
package provider
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"k8s.io/apimachinery/pkg/labels"
|
||||
"k8s.io/apimachinery/pkg/selection"
|
||||
)
|
||||
|
||||
var queryBuilder = NewExternalMetricQueryBuilder()
|
||||
|
||||
func TestBuildPrometheusQuery(t *testing.T) {
|
||||
fakeSelector := labels.NewSelector()
|
||||
requirement, _ := labels.NewRequirement("queue_name", selection.Equals, []string{"processing"})
|
||||
fakeSelector = fakeSelector.Add(*requirement)
|
||||
|
||||
result := queryBuilder.BuildPrometheusQuery("default", "queue_length", fakeSelector)
|
||||
|
||||
expectedResult := "queue_length{namespace=\"default\", queue_name=\"processing\"}"
|
||||
if result != expectedResult {
|
||||
t.Errorf("Incorrect query generated. Expected: %s | Actual %s", result, expectedResult)
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue