MCPcopy Create free account
hub / github.com/cortexproject/cortex / TestShardedScanner_ScanUsers

Function TestShardedScanner_ScanUsers

pkg/util/users/scanner_test.go:214–290  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

212}
213
214func TestShardedScanner_ScanUsers(t *testing.T) {
215 t.Parallel()
216
217 ctx := context.Background()
218 logger := log.NewNopLogger()
219
220 tests := map[string]struct {
221 baseScanner Scanner
222 isOwned func(string) (bool, error)
223 expectedActive []string
224 expectedDeleting []string
225 expectedDeleted []string
226 expectErr bool
227 }{
228 "successful scan with ownership check": {
229 baseScanner: &mockScanner{
230 active: []string{"user-1", "user-2", "user-3"},
231 deleting: []string{"user-4", "user-5"},
232 deleted: []string{"user-6", "user-7"},
233 },
234 isOwned: func(userID string) (bool, error) {
235 return userID == "user-1" || userID == "user-4" || userID == "user-6", nil
236 },
237 expectedActive: []string{"user-1"},
238 expectedDeleting: []string{"user-4"},
239 expectedDeleted: []string{"user-6"},
240 expectErr: false,
241 },
242 "ownership check error": {
243 baseScanner: &mockScanner{
244 active: []string{"user-1"},
245 deleting: []string{},
246 deleted: []string{},
247 },
248 isOwned: func(userID string) (bool, error) {
249 return false, errors.New("failed to check ownership")
250 },
251 expectedActive: []string{},
252 expectedDeleting: []string{},
253 expectedDeleted: []string{},
254 expectErr: false,
255 },
256 "base scanner error": {
257 baseScanner: &mockScanner{
258 err: errors.New("base scanner error"),
259 },
260 isOwned: func(userID string) (bool, error) {
261 return true, nil
262 },
263 expectErr: true,
264 },
265 }
266
267 for testName, testData := range tests {
268 t.Run(testName, func(t *testing.T) {
269 t.Parallel()
270
271 scanner := &shardedScanner{

Callers

nothing calls this directly

Calls 3

ScanUsersMethod · 0.95
RunMethod · 0.65
ErrorMethod · 0.45

Tested by

no test coverage detected