• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

goto / shield / 9364946062

04 Jun 2024 09:49AM UTC coverage: 60.159% (+0.5%) from 59.644%
9364946062

Pull #62

github

ishanarya0
fix: test.yaml
Pull Request #62: feat: add activities table partitioning

5457 of 9071 relevant lines covered (60.16%)

11.14 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

65.6
/internal/api/v1beta1/servicedata.go
1
package v1beta1
2

3
import (
4
        "context"
5
        "errors"
6

7
        "github.com/goto/shield/core/project"
8
        "github.com/goto/shield/core/relation"
9
        "github.com/goto/shield/core/resource"
10
        "github.com/goto/shield/core/servicedata"
11
        "github.com/goto/shield/core/user"
12
        shieldv1beta1 "github.com/goto/shield/proto/v1beta1"
13
        grpczap "github.com/grpc-ecosystem/go-grpc-middleware/logging/zap/ctxzap"
14
)
15

16
type ServiceDataService interface {
17
        CreateKey(ctx context.Context, key servicedata.Key) (servicedata.Key, error)
18
}
19

20
func (h Handler) CreateServiceDataKey(ctx context.Context, request *shieldv1beta1.CreateServiceDataKeyRequest) (*shieldv1beta1.CreateServiceDataKeyResponse, error) {
21
        logger := grpczap.Extract(ctx)
22

23
        requestBody := request.GetBody()
24
        if requestBody == nil {
25
                return nil, grpcBadBodyError
26
        }
27

28
        keyResp, err := h.serviceDataService.CreateKey(ctx, servicedata.Key{
29
                ProjectID:   requestBody.GetProject(),
30
                Key:         requestBody.GetKey(),
31
                Description: requestBody.GetDescription(),
32
        })
33
        if err != nil {
34
                logger.Error(err.Error())
35

36
                switch {
37
                case errors.Is(err, user.ErrInvalidEmail):
38
                        return nil, grpcUnauthenticated
7✔
39
                case errors.Is(err, project.ErrNotExist), errors.Is(err, servicedata.ErrInvalidDetail),
7✔
40
                        errors.Is(err, relation.ErrInvalidDetail):
7✔
41
                        return nil, grpcBadBodyError
7✔
42
                case errors.Is(err, servicedata.ErrConflict), errors.Is(err, resource.ErrConflict):
8✔
43
                        return nil, grpcConflictError
1✔
44
                default:
1✔
45
                        return nil, grpcInternalServerError
46
                }
6✔
47
        }
6✔
48

6✔
49
        serviceDataKey, err := transformServiceDataKeyToPB(keyResp)
6✔
50
        if err != nil {
6✔
51
                logger.Error(err.Error())
11✔
52
                return nil, grpcInternalServerError
5✔
53
        }
5✔
54

5✔
55
        return &shieldv1beta1.CreateServiceDataKeyResponse{
1✔
56
                ServiceDataKey: &serviceDataKey,
1✔
57
        }, nil
58
}
3✔
59

3✔
60
func transformServiceDataKeyToPB(from servicedata.Key) (shieldv1beta1.ServiceDataKey, error) {
1✔
61
        return shieldv1beta1.ServiceDataKey{
1✔
62
                Urn: from.URN,
×
63
                Id:  from.ID,
×
64
        }, nil
65
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc