summaryrefslogtreecommitdiff
path: root/internal/service/admin_test.go
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-04-30 23:03:39 +0300
committerPaul Buetow <paul@buetow.org>2026-04-30 23:03:39 +0300
commitcfbffc5e8911f0f4bdd63c0fcf4953372a990ac0 (patch)
tree37dd46ae6cc1a9cd735aa7e4d2239c315735385c /internal/service/admin_test.go
parentdfa05f2f78911c8817ff15e0c4f3806ddabdc32e (diff)
pa: raise aggregate test coverage to 81.5%
Diffstat (limited to 'internal/service/admin_test.go')
-rw-r--r--internal/service/admin_test.go39
1 files changed, 39 insertions, 0 deletions
diff --git a/internal/service/admin_test.go b/internal/service/admin_test.go
index bc6e9c5..d6dbfeb 100644
--- a/internal/service/admin_test.go
+++ b/internal/service/admin_test.go
@@ -252,3 +252,42 @@ func TestAdminService_RevokePermission(t *testing.T) {
t.Fatal("expected revoke called")
}
}
+
+func TestAdminService_ListPermissions_Error(t *testing.T) {
+ ctx := context.Background()
+
+ t.Run("list sets error", func(t *testing.T) {
+ store := &repository.MockStore{
+ SetRepo: repository.MockSetRepo{
+ ListSetsFunc: func(ctx context.Context) ([]model.Set, error) {
+ return nil, errors.New("boom")
+ },
+ },
+ }
+ svc := NewAdminService(store, newMockClock(), &fakeHasher{fixed: "hash"}, nil, "")
+ _, err := svc.ListPermissions(ctx)
+ if err == nil {
+ t.Fatal("expected error")
+ }
+ })
+
+ t.Run("list permissions by set error", func(t *testing.T) {
+ store := &repository.MockStore{
+ SetRepo: repository.MockSetRepo{
+ ListSetsFunc: func(ctx context.Context) ([]model.Set, error) {
+ return []model.Set{{ID: 1}}, nil
+ },
+ },
+ SetPermissionRepo: repository.MockSetPermissionRepo{
+ ListPermissionsBySetFunc: func(ctx context.Context, setID int64) ([]model.SetPermission, error) {
+ return nil, errors.New("boom")
+ },
+ },
+ }
+ svc := NewAdminService(store, newMockClock(), &fakeHasher{fixed: "hash"}, nil, "")
+ _, err := svc.ListPermissions(ctx)
+ if err == nil {
+ t.Fatal("expected error")
+ }
+ })
+}