Skip to content

Commit cb757c6

Browse files
committed
Allow to filter pending
1 parent 8c812d6 commit cb757c6

File tree

5 files changed

+63
-46
lines changed

5 files changed

+63
-46
lines changed

backend/internal/testdata/lint.go

+8
Original file line numberDiff line numberDiff line change
@@ -175,6 +175,14 @@ func BehavesLikeBackend(data *BehavesLikeBackendData) func() {
175175
})).To(Ω.Succeed())
176176
Ω.Expect(results).To(Ω.HaveLen(2))
177177

178+
// List pending
179+
results = results[:0]
180+
Ω.Expect(subject.List(ctx, &rpc.ListRequest{Filter: &rpc.ListRequest_Filter{Status: rpc.ListRequest_Filter_PENDING}}, func(h *backend.HandleData) error {
181+
results = append(results, h)
182+
return nil
183+
})).To(Ω.Succeed())
184+
Ω.Expect(results).To(Ω.HaveLen(1))
185+
178186
// With namespace
179187
results = results[:0]
180188
Ω.Expect(subject.List(ctx, &rpc.ListRequest{Filter: &rpc.ListRequest_Filter{Prefix: "a/b"}}, func(h *backend.HandleData) error {

backend/mock/mock.go

+2
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,8 @@ func (*Backend) Close() error { return nil }
138138
func isSelected(filter *rpc.ListRequest_Filter, handle *backend.HandleData) bool {
139139
if filter.Status == rpc.ListRequest_Filter_DONE && !handle.IsDone() {
140140
return false
141+
} else if filter.Status == rpc.ListRequest_Filter_PENDING && handle.IsDone() {
142+
return false
141143
}
142144

143145
if filter.Prefix != "" && !strings.HasPrefix(handle.Namespace, filter.Prefix) {

backend/postgres/postgres.go

+2
Original file line numberDiff line numberDiff line change
@@ -152,6 +152,8 @@ func (b *postgres) List(ctx context.Context, req *rpc.ListRequest, iter backend.
152152
if f := req.GetFilter(); f != nil {
153153
if f.Status == rpc.ListRequest_Filter_DONE {
154154
stmt = stmt.Where(sq.NotEq{"done_at": nil})
155+
} else if f.Status == rpc.ListRequest_Filter_PENDING {
156+
stmt = stmt.Where(sq.Eq{"done_at": nil})
155157
}
156158
if f.Prefix != "" {
157159
stmt = stmt.Where(sq.Like{"namespace": f.Prefix + "%"})

rpc/accord.pb.go

+50-46
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

rpc/accord.proto

+1
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,7 @@ message ListRequest {
107107
enum Status {
108108
ALL = 0;
109109
DONE = 1;
110+
PENDING = 2;
110111
}
111112

112113
// Namespace prefix.

0 commit comments

Comments
 (0)