@@ -13,6 +13,7 @@ import (
13
13
"github.com/bufbuild/connect-go"
14
14
db "github.com/gitpod-io/gitpod/components/gitpod-db/go"
15
15
"github.com/gitpod-io/gitpod/components/gitpod-db/go/dbtest"
16
+ experimental_v1 "github.com/gitpod-io/gitpod/components/public-api/go/experimental/v1"
16
17
"github.com/gitpod-io/gitpod/components/public-api/go/experimental/v1/v1connect"
17
18
v1 "github.com/gitpod-io/gitpod/usage-api/v1"
18
19
"github.com/gitpod-io/gitpod/usage/pkg/stripe"
@@ -32,15 +33,19 @@ func TestBillingService_OnChargeDispute(t *testing.T) {
32
33
}, client )
33
34
require .NoError (t , err )
34
35
36
+ stubUserService := & StubUserService {}
35
37
svc := & BillingService {
36
38
stripeClient : stripeClient ,
39
+ teamsService : & StubTeamsService {},
40
+ userService : stubUserService ,
37
41
}
38
42
39
- resp , err : = svc .OnChargeDispute (context .Background (), & v1.OnChargeDisputeRequest {
43
+ _ , err = svc .OnChargeDispute (context .Background (), & v1.OnChargeDisputeRequest {
40
44
DisputeId : "dp_1MrLJpAyBDPbWrhawbWHEIDL" ,
41
45
})
42
- fmt .Println (resp )
43
46
require .NoError (t , err )
47
+
48
+ require .Equal (t , stubUserService .blockedUsers , []string {"owner_id" })
44
49
}
45
50
46
51
func NewStripeRecorder (t * testing.T , name string ) * recorder.Recorder {
@@ -68,33 +73,86 @@ func NewStripeRecorder(t *testing.T, name string) *recorder.Recorder {
68
73
}
69
74
70
75
type StubTeamsService struct {
71
- t * testing.T
72
76
v1connect.TeamsServiceClient
73
77
}
74
78
75
- func (s * StubTeamsService ) CreateTeam (context.Context , * connect.Request [v1.CreateTeamRequest ]) (* connect.Response [v1.CreateTeamResponse ], error ) {
79
+ func (s * StubTeamsService ) CreateTeam (context.Context , * connect.Request [experimental_v1.CreateTeamRequest ]) (* connect.Response [experimental_v1.CreateTeamResponse ], error ) {
80
+ return nil , nil
81
+ }
82
+
83
+ func (s * StubTeamsService ) GetTeam (ctx context.Context , req * connect.Request [experimental_v1.GetTeamRequest ]) (* connect.Response [experimental_v1.GetTeamResponse ], error ) {
84
+ // generate a stub which returns a team
85
+ team := & experimental_v1.Team {
86
+ Id : req .Msg .GetTeamId (),
87
+ Members : []* experimental_v1.TeamMember {
88
+ {
89
+ UserId : "owner_id" ,
90
+ Role : experimental_v1 .TeamRole_TEAM_ROLE_OWNER ,
91
+ },
92
+ {
93
+ UserId : "non_owner_id" ,
94
+ Role : experimental_v1 .TeamRole_TEAM_ROLE_MEMBER ,
95
+ },
96
+ },
97
+ }
76
98
99
+ return connect .NewResponse (& experimental_v1.GetTeamResponse {
100
+ Team : team ,
101
+ }), nil
77
102
}
78
- func (s * StubTeamsService ) GetTeam (context.Context , * connect.Request [v1.GetTeamRequest ]) (* connect.Response [v1.GetTeamResponse ], error ) {
79
103
104
+ func (s * StubTeamsService ) ListTeams (context.Context , * connect.Request [experimental_v1.ListTeamsRequest ]) (* connect.Response [experimental_v1.ListTeamsResponse ], error ) {
105
+ return nil , nil
106
+ }
107
+ func (s * StubTeamsService ) DeleteTeam (context.Context , * connect.Request [experimental_v1.DeleteTeamRequest ]) (* connect.Response [experimental_v1.DeleteTeamResponse ], error ) {
108
+ return nil , nil
109
+ }
110
+ func (s * StubTeamsService ) JoinTeam (context.Context , * connect.Request [experimental_v1.JoinTeamRequest ]) (* connect.Response [experimental_v1.JoinTeamResponse ], error ) {
111
+ return nil , nil
112
+ }
113
+ func (s * StubTeamsService ) ResetTeamInvitation (context.Context , * connect.Request [experimental_v1.ResetTeamInvitationRequest ]) (* connect.Response [experimental_v1.ResetTeamInvitationResponse ], error ) {
114
+ return nil , nil
115
+ }
116
+ func (s * StubTeamsService ) UpdateTeamMember (context.Context , * connect.Request [experimental_v1.UpdateTeamMemberRequest ]) (* connect.Response [experimental_v1.UpdateTeamMemberResponse ], error ) {
117
+ return nil , nil
118
+ }
119
+ func (s * StubTeamsService ) DeleteTeamMember (context.Context , * connect.Request [experimental_v1.DeleteTeamMemberRequest ]) (* connect.Response [experimental_v1.DeleteTeamMemberResponse ], error ) {
120
+ return nil , nil
80
121
}
81
- func (s * StubTeamsService ) ListTeams (context.Context , * connect.Request [v1.ListTeamsRequest ]) (* connect.Response [v1.ListTeamsResponse ], error ) {
82
122
123
+ type StubUserService struct {
124
+ blockedUsers []string
83
125
}
84
- func (s * StubTeamsService ) DeleteTeam (context.Context , * connect.Request [v1.DeleteTeamRequest ]) (* connect.Response [v1.DeleteTeamResponse ], error ) {
85
126
127
+ func (s * StubUserService ) GetAuthenticatedUser (context.Context , * connect.Request [experimental_v1.GetAuthenticatedUserRequest ]) (* connect.Response [experimental_v1.GetAuthenticatedUserResponse ], error ) {
128
+ return nil , nil
86
129
}
87
- func (s * StubTeamsService ) JoinTeam (context.Context , * connect.Request [v1.JoinTeamRequest ]) (* connect.Response [v1.JoinTeamResponse ], error ) {
88
130
131
+ // ListSSHKeys lists the public SSH keys.
132
+ func (s * StubUserService ) ListSSHKeys (context.Context , * connect.Request [experimental_v1.ListSSHKeysRequest ]) (* connect.Response [experimental_v1.ListSSHKeysResponse ], error ) {
133
+ return nil , nil
89
134
}
90
- func (s * StubTeamsService ) ResetTeamInvitation (context.Context , * connect.Request [v1.ResetTeamInvitationRequest ]) (* connect.Response [v1.ResetTeamInvitationResponse ], error ) {
91
135
136
+ // CreateSSHKey adds a public SSH key.
137
+ func (s * StubUserService ) CreateSSHKey (context.Context , * connect.Request [experimental_v1.CreateSSHKeyRequest ]) (* connect.Response [experimental_v1.CreateSSHKeyResponse ], error ) {
138
+ return nil , nil
92
139
}
93
- func (s * StubTeamsService ) UpdateTeamMember (context.Context , * connect.Request [v1.UpdateTeamMemberRequest ]) (* connect.Response [v1.UpdateTeamMemberResponse ], error ) {
94
140
141
+ // GetSSHKey retrieves an ssh key by ID.
142
+ func (s * StubUserService ) GetSSHKey (context.Context , * connect.Request [experimental_v1.GetSSHKeyRequest ]) (* connect.Response [experimental_v1.GetSSHKeyResponse ], error ) {
143
+ return nil , nil
95
144
}
96
- func (s * StubTeamsService ) DeleteTeamMember (context.Context , * connect.Request [v1.DeleteTeamMemberRequest ]) (* connect.Response [v1.DeleteTeamMemberResponse ], error ) {
97
145
146
+ // DeleteSSHKey removes a public SSH key.
147
+ func (s * StubUserService ) DeleteSSHKey (context.Context , * connect.Request [experimental_v1.DeleteSSHKeyRequest ]) (* connect.Response [experimental_v1.DeleteSSHKeyResponse ], error ) {
148
+ return nil , nil
149
+ }
150
+ func (s * StubUserService ) GetGitToken (context.Context , * connect.Request [experimental_v1.GetGitTokenRequest ]) (* connect.Response [experimental_v1.GetGitTokenResponse ], error ) {
151
+ return nil , nil
152
+ }
153
+ func (s * StubUserService ) BlockUser (ctx context.Context , req * connect.Request [experimental_v1.BlockUserRequest ]) (* connect.Response [experimental_v1.BlockUserResponse ], error ) {
154
+ s .blockedUsers = append (s .blockedUsers , req .Msg .GetUserId ())
155
+ return connect .NewResponse (& experimental_v1.BlockUserResponse {}), nil
98
156
}
99
157
100
158
func TestBalancesForStripeCostCenters (t * testing.T ) {
0 commit comments