MCPcopy
hub / github.com/grafana/tempo / TestOverridesWithObjectStorage

Function TestOverridesWithObjectStorage

integration/api/overrides_api_test.go:23–157  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

21)
22
23func TestOverridesWithObjectStorage(t *testing.T) {
24 util.RunIntegrationTests(t, util.TestHarnessConfig{
25 Backends: util.BackendObjectStorageAll,
26 DeploymentMode: util.DeploymentModeSingleBinary,
27 ConfigOverlay: configOverrides,
28 }, func(h *util.TempoHarness) {
29 apiClient := h.APIClientHTTP("single-tenant")
30
31 // Create overrides
32 initialLimits := &client.Limits{
33 MetricsGenerator: client.LimitsMetricsGenerator{
34 DisableCollection: boolPtr(true),
35 },
36 }
37
38 fmt.Println("* Creating overrides with non-0 version")
39 _, err := apiClient.SetOverrides(initialLimits, "123")
40 assert.ErrorContains(t, err, "412") // precondition failed
41
42 fmt.Println("* Creating overrides")
43 _, err = apiClient.SetOverrides(initialLimits, "0")
44 assert.NoError(t, err)
45
46 limits, version, err := apiClient.GetOverrides()
47 assert.NoError(t, err)
48 EnableInstanceLabel, EnableInstanceLabelIsSet := limits.GetMetricsGenerator().GetProcessor().GetSpanMetrics().GetEnableInstanceLabel()
49 assert.True(t, EnableInstanceLabel)
50 assert.False(t, EnableInstanceLabelIsSet)
51 printLimits(limits, version)
52
53 disableCollection, ok := limits.GetMetricsGenerator().GetDisableCollection()
54 assert.True(t, ok)
55 assert.True(t, disableCollection)
56
57 // Update overrides - POST
58 updatedLimits := &client.Limits{
59 MetricsGenerator: client.LimitsMetricsGenerator{
60 DisableCollection: nil,
61 Processors: &listtomap.ListToMap{"span-metrics": {}},
62 },
63 }
64
65 fmt.Println("* Update overrides with bogus version number")
66 _, err = apiClient.SetOverrides(updatedLimits, "abc")
67 assert.ErrorContains(t, err, "412") // precondition failed
68
69 fmt.Println("* Update overrides with backend.VersionNew")
70 _, err = apiClient.SetOverrides(updatedLimits, "0")
71 assert.ErrorContains(t, err, "412") // precondition failed
72
73 fmt.Println("* Update overrides with wrong version number")
74 _, err = apiClient.SetOverrides(updatedLimits, "123")
75 assert.ErrorContains(t, err, "412") // precondition failed
76
77 fmt.Println("* Update overrides")
78 _, err = apiClient.SetOverrides(updatedLimits, version)
79 assert.NoError(t, err)
80

Callers

nothing calls this directly

Calls 15

RunIntegrationTestsFunction · 0.92
printLimitsFunction · 0.85
keysFunction · 0.85
APIClientHTTPMethod · 0.80
GetSpanMetricsMethod · 0.80
GetProcessorMethod · 0.80
GetMetricsGeneratorMethod · 0.80
GetDisableCollectionMethod · 0.80
GetProcessorsMethod · 0.80
GetMapMethod · 0.80

Tested by

no test coverage detected