MCPcopy
hub / github.com/grafana/dskit / TestDesc_TokensFor

Function TestDesc_TokensFor

ring/model_test.go:235–273  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

233}
234
235func TestDesc_TokensFor(t *testing.T) {
236 tests := map[string]struct {
237 desc *Desc
238 expectedMine Tokens
239 expectedAll Tokens
240 }{
241 "empty ring": {
242 desc: &Desc{Ingesters: map[string]InstanceDesc{}},
243 expectedMine: Tokens(nil),
244 expectedAll: Tokens{},
245 },
246 "single zone": {
247 desc: &Desc{Ingesters: map[string]InstanceDesc{
248 "instance-1": {Addr: "127.0.0.1", Tokens: []uint32{1, 5}, Zone: ""},
249 "instance-2": {Addr: "127.0.0.1", Tokens: []uint32{2, 4}, Zone: ""},
250 "instance-3": {Addr: "127.0.0.1", Tokens: []uint32{3, 6}, Zone: ""},
251 }},
252 expectedMine: Tokens{1, 5},
253 expectedAll: Tokens{1, 2, 3, 4, 5, 6},
254 },
255 "multiple zones": {
256 desc: &Desc{Ingesters: map[string]InstanceDesc{
257 "instance-1": {Addr: "127.0.0.1", Tokens: []uint32{1, 5}, Zone: "zone-1"},
258 "instance-2": {Addr: "127.0.0.1", Tokens: []uint32{2, 4}, Zone: "zone-1"},
259 "instance-3": {Addr: "127.0.0.1", Tokens: []uint32{3, 6}, Zone: "zone-2"},
260 }},
261 expectedMine: Tokens{1, 5},
262 expectedAll: Tokens{1, 2, 3, 4, 5, 6},
263 },
264 }
265
266 for testName, testData := range tests {
267 t.Run(testName, func(t *testing.T) {
268 actualMine, actualAll := testData.desc.TokensFor("instance-1")
269 assert.Equal(t, testData.expectedMine, actualMine)
270 assert.Equal(t, testData.expectedAll, actualAll)
271 })
272 }
273}
274
275func TestDesc_RingsCompare(t *testing.T) {
276 tests := map[string]struct {

Callers

nothing calls this directly

Calls 4

TokensTypeAlias · 0.85
RunMethod · 0.80
TokensForMethod · 0.80
EqualMethod · 0.45

Tested by

no test coverage detected