Skip to content

Commit 2933cf5

Browse files
committed
update mock and collect mockGCP log
1 parent c5fe1d5 commit 2933cf5

File tree

7 files changed

+307
-278
lines changed

7 files changed

+307
-278
lines changed

mockgcp/mockcompute/networkedgesecurityservice.go mockgcp/mockcompute/networkedgesecurityservicev1.go

+27-13
Original file line numberDiff line numberDiff line change
@@ -32,12 +32,12 @@ import (
3232
pb "github.com/GoogleCloudPlatform/k8s-config-connector/mockgcp/generated/mockgcp/cloud/compute/v1"
3333
)
3434

35-
type networkEdgeSecurityServices struct {
35+
type networkEdgeSecurityServicesV1 struct {
3636
*MockService
3737
pb.UnimplementedNetworkEdgeSecurityServicesServer
3838
}
3939

40-
func (s *networkEdgeSecurityServices) Get(ctx context.Context, req *pb.GetNetworkEdgeSecurityServiceRequest) (*pb.NetworkEdgeSecurityService, error) {
40+
func (s *networkEdgeSecurityServicesV1) Get(ctx context.Context, req *pb.GetNetworkEdgeSecurityServiceRequest) (*pb.NetworkEdgeSecurityService, error) {
4141
reqName := fmt.Sprintf("projects/%s/regions/%s/networkEdgeSecurityServices/%s", req.GetProject(), req.GetRegion(), req.GetNetworkEdgeSecurityService())
4242
name, err := s.parseNetworkEdgeSecurityServiceName(reqName)
4343
if err != nil {
@@ -48,36 +48,39 @@ func (s *networkEdgeSecurityServices) Get(ctx context.Context, req *pb.GetNetwor
4848
obj := &pb.NetworkEdgeSecurityService{}
4949
if err := s.storage.Get(ctx, fqn, obj); err != nil {
5050
if status.Code(err) == codes.NotFound {
51-
return nil, status.Errorf(codes.NotFound, "NetworkEdgeSecurityService %q not found", name)
51+
return nil, status.Errorf(codes.NotFound, "The resource '%s' was not found", name)
5252
}
5353
return nil, err
5454
}
5555

5656
return obj, nil
5757
}
5858

59-
func (s *networkEdgeSecurityServices) Insert(ctx context.Context, req *pb.InsertNetworkEdgeSecurityServiceRequest) (*pb.Operation, error) {
59+
func (s *networkEdgeSecurityServicesV1) Insert(ctx context.Context, req *pb.InsertNetworkEdgeSecurityServiceRequest) (*pb.Operation, error) {
6060
reqName := fmt.Sprintf("projects/%s/regions/%s/networkEdgeSecurityServices/%s", req.GetProject(), req.GetRegion(), req.GetNetworkEdgeSecurityServiceResource().GetName())
6161
name, err := s.parseNetworkEdgeSecurityServiceName(reqName)
6262
if err != nil {
6363
return nil, err
6464
}
6565
fqn := name.String()
66+
id := s.generateID()
6667

6768
obj := proto.Clone(req.GetNetworkEdgeSecurityServiceResource()).(*pb.NetworkEdgeSecurityService)
6869
obj.Id = proto.Uint64(s.generateID())
6970
obj.SelfLink = PtrTo(buildComputeSelfLink(ctx, fqn))
71+
obj.SelfLinkWithId = PtrTo(buildComputeSelfLink(ctx, fmt.Sprintf("projects/%s/regions/%s/networkEdgeSecurityServices/%d", name.Project.ID, name.Region, id)))
7072
obj.Kind = PtrTo("compute#networkEdgeSecurityService")
7173
obj.CreationTimestamp = PtrTo(s.nowString())
7274
obj.Region = PtrTo(fmt.Sprintf("https://www.googleapis.com/compute/v1/projects/%s/regions/%s", name.Project.ID, name.Region))
73-
obj.Fingerprint = PtrTo(computeCRC32C(obj))
75+
// hard-code generated fingerprint
76+
obj.Fingerprint = PtrTo("abcdef0123A=")
7477

7578
if err := s.storage.Create(ctx, fqn, obj); err != nil {
7679
return nil, err
7780
}
7881

7982
op := &pb.Operation{
80-
OperationType: PtrTo("insert"),
83+
OperationType: PtrTo("createNetworkEdgeSecurityService"),
8184
TargetId: obj.Id,
8285
TargetLink: obj.SelfLink,
8386
User: PtrTo("[email protected]"),
@@ -87,7 +90,7 @@ func (s *networkEdgeSecurityServices) Insert(ctx context.Context, req *pb.Insert
8790
})
8891
}
8992

90-
func (s *networkEdgeSecurityServices) Patch(ctx context.Context, req *pb.PatchNetworkEdgeSecurityServiceRequest) (*pb.Operation, error) {
93+
func (s *networkEdgeSecurityServicesV1) Patch(ctx context.Context, req *pb.PatchNetworkEdgeSecurityServiceRequest) (*pb.Operation, error) {
9194
reqName := fmt.Sprintf("projects/%s/regions/%s/networkEdgeSecurityServices/%s", req.GetProject(), req.GetRegion(), req.GetNetworkEdgeSecurityService())
9295
name, err := s.parseNetworkEdgeSecurityServiceName(reqName)
9396
if err != nil {
@@ -99,17 +102,28 @@ func (s *networkEdgeSecurityServices) Patch(ctx context.Context, req *pb.PatchNe
99102
if err := s.storage.Get(ctx, fqn, obj); err != nil {
100103
return nil, err
101104
}
102-
103-
// TODO: Apply field mask.
104105
proto.Merge(obj, req.GetNetworkEdgeSecurityServiceResource())
105-
obj.Fingerprint = PtrTo(computeCRC32C(obj))
106+
// hard-code generated fingerprint
107+
obj.Fingerprint = PtrTo("abcdef0123A=")
108+
109+
paths := strings.Split(req.GetUpdateMask(), ",")
110+
for _, path := range paths {
111+
switch path {
112+
case "description":
113+
obj.Description = req.GetNetworkEdgeSecurityServiceResource().Description
114+
case "security_policy":
115+
obj.SecurityPolicy = req.GetNetworkEdgeSecurityServiceResource().SecurityPolicy
116+
default:
117+
return nil, status.Errorf(codes.InvalidArgument, "update_mask path %q not valid", path)
118+
}
119+
}
106120

107121
if err := s.storage.Update(ctx, fqn, obj); err != nil {
108122
return nil, err
109123
}
110124

111125
op := &pb.Operation{
112-
OperationType: PtrTo("patch"),
126+
OperationType: PtrTo("updateNetworkEdgeSecurityService"),
113127
TargetId: obj.Id,
114128
TargetLink: obj.SelfLink,
115129
User: PtrTo("[email protected]"),
@@ -119,7 +133,7 @@ func (s *networkEdgeSecurityServices) Patch(ctx context.Context, req *pb.PatchNe
119133
})
120134
}
121135

122-
func (s *networkEdgeSecurityServices) Delete(ctx context.Context, req *pb.DeleteNetworkEdgeSecurityServiceRequest) (*pb.Operation, error) {
136+
func (s *networkEdgeSecurityServicesV1) Delete(ctx context.Context, req *pb.DeleteNetworkEdgeSecurityServiceRequest) (*pb.Operation, error) {
123137
reqName := fmt.Sprintf("projects/%s/regions/%s/networkEdgeSecurityServices/%s", req.GetProject(), req.GetRegion(), req.GetNetworkEdgeSecurityService())
124138
name, err := s.parseNetworkEdgeSecurityServiceName(reqName)
125139
if err != nil {
@@ -133,7 +147,7 @@ func (s *networkEdgeSecurityServices) Delete(ctx context.Context, req *pb.Delete
133147
}
134148

135149
op := &pb.Operation{
136-
OperationType: PtrTo("delete"),
150+
OperationType: PtrTo("deleteNetworkEdgeSecurityService"),
137151
TargetId: deleted.Id,
138152
TargetLink: deleted.SelfLink,
139153
User: PtrTo("[email protected]"),

0 commit comments

Comments
 (0)