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

Function TestTenantIDs

tenant/resolver_test.go:29–271  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

27}
28
29func TestTenantIDs(t *testing.T) {
30 for _, tc := range []resolverTestCase{
31 {
32 name: "no-header",
33 errTenantID: user.ErrNoOrgID,
34 errTenantIDs: user.ErrNoOrgID,
35 errMetadata: user.ErrNoOrgID,
36 },
37 {
38 name: "empty",
39 headerValue: strptr(""),
40 tenantIDs: []string{""},
41 },
42 {
43 name: "single-tenant",
44 headerValue: strptr("tenant-a"),
45 tenantID: "tenant-a",
46 tenantIDs: []string{"tenant-a"},
47 },
48 {
49 name: "parent-dir",
50 headerValue: strptr(".."),
51 errTenantID: errUnsafeTenantID,
52 errTenantIDs: errUnsafeTenantID,
53 errMetadata: errUnsafeTenantID,
54 },
55 {
56 name: "current-dir",
57 headerValue: strptr("."),
58 errTenantID: errUnsafeTenantID,
59 errTenantIDs: errUnsafeTenantID,
60 errMetadata: errUnsafeTenantID,
61 },
62 {
63 name: "multi-tenant",
64 headerValue: strptr("tenant-a|tenant-b"),
65 errTenantID: user.ErrTooManyOrgIDs,
66 tenantIDs: []string{"tenant-a", "tenant-b"},
67 errMetadata: user.ErrTooManyOrgIDs,
68 },
69 {
70 name: "multi-tenant-wrong-order",
71 headerValue: strptr("tenant-b|tenant-a"),
72 errTenantID: user.ErrTooManyOrgIDs,
73 tenantIDs: []string{"tenant-a", "tenant-b"},
74 errMetadata: user.ErrTooManyOrgIDs,
75 },
76 {
77 name: "multi-tenant-duplicate-order",
78 headerValue: strptr("tenant-b|tenant-b|tenant-a"),
79 errTenantID: user.ErrTooManyOrgIDs,
80 tenantIDs: []string{"tenant-a", "tenant-b"},
81 errMetadata: user.ErrTooManyOrgIDs,
82 },
83 {
84 // Duplicated single tenant should return that tenant (backward compatible)
85 name: "multi-tenant-same-tenant-duplicated",
86 headerValue: strptr("tenant-a|tenant-a"),

Callers

nothing calls this directly

Calls 9

InjectOrgIDFunction · 0.92
strptrFunction · 0.85
TenantIDFunction · 0.85
TenantIDsFunction · 0.85
ExtractWithMetadataFunction · 0.85
WithMethod · 0.80
RunMethod · 0.80
EqualMethod · 0.45
ErrorMethod · 0.45

Tested by

no test coverage detected