forked from grafana/grafana
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathsilences.go
58 lines (49 loc) · 2.51 KB
/
silences.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
package fakes
import (
"context"
"github.com/grafana/grafana/pkg/apimachinery/identity"
"github.com/grafana/grafana/pkg/services/ngalert/models"
)
type FakeSilenceService struct {
FilterByAccessFunc func(ctx context.Context, user identity.Requester, silences ...*models.Silence) ([]*models.Silence, error)
AuthorizeReadSilenceFunc func(ctx context.Context, user identity.Requester, silence *models.Silence) error
AuthorizeCreateSilenceFunc func(ctx context.Context, user identity.Requester, silence *models.Silence) error
AuthorizeUpdateSilenceFunc func(ctx context.Context, user identity.Requester, silence *models.Silence) error
SilenceAccessFunc func(ctx context.Context, user identity.Requester, silences []*models.Silence) (map[*models.Silence]models.SilencePermissionSet, error)
Calls []Call
}
func (s *FakeSilenceService) FilterByAccess(ctx context.Context, user identity.Requester, silences ...*models.Silence) ([]*models.Silence, error) {
s.Calls = append(s.Calls, Call{"FilterByAccess", []interface{}{ctx, user, silences}})
if s.FilterByAccessFunc != nil {
return s.FilterByAccessFunc(ctx, user, silences...)
}
return nil, nil
}
func (s *FakeSilenceService) AuthorizeReadSilence(ctx context.Context, user identity.Requester, silence *models.Silence) error {
s.Calls = append(s.Calls, Call{"AuthorizeReadSilence", []interface{}{ctx, user, silence}})
if s.AuthorizeReadSilenceFunc != nil {
return s.AuthorizeReadSilenceFunc(ctx, user, silence)
}
return nil
}
func (s *FakeSilenceService) AuthorizeCreateSilence(ctx context.Context, user identity.Requester, silence *models.Silence) error {
s.Calls = append(s.Calls, Call{"AuthorizeCreateSilence", []interface{}{ctx, user, silence}})
if s.AuthorizeCreateSilenceFunc != nil {
return s.AuthorizeCreateSilenceFunc(ctx, user, silence)
}
return nil
}
func (s *FakeSilenceService) AuthorizeUpdateSilence(ctx context.Context, user identity.Requester, silence *models.Silence) error {
s.Calls = append(s.Calls, Call{"AuthorizeUpdateSilence", []interface{}{ctx, user, silence}})
if s.AuthorizeUpdateSilenceFunc != nil {
return s.AuthorizeUpdateSilenceFunc(ctx, user, silence)
}
return nil
}
func (s *FakeSilenceService) SilenceAccess(ctx context.Context, user identity.Requester, silences []*models.Silence) (map[*models.Silence]models.SilencePermissionSet, error) {
s.Calls = append(s.Calls, Call{"SilenceAccess", []interface{}{ctx, user, silences}})
if s.SilenceAccessFunc != nil {
return s.SilenceAccessFunc(ctx, user, silences)
}
return nil, nil
}