Skip to content

Commit fa3c522

Browse files
authored
CLOUDP-61850: Fix listing project events type filter (#146)
1 parent 7d542b7 commit fa3c522

File tree

6 files changed

+32
-30
lines changed

6 files changed

+32
-30
lines changed

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ require (
1010
github.com/golang/mock v1.4.3
1111
github.com/mattn/go-colorable v0.1.6 // indirect
1212
github.com/mitchellh/go-homedir v1.1.0
13-
github.com/mongodb/go-client-mongodb-atlas v0.2.1-0.20200427191133-b5e334932f44
13+
github.com/mongodb/go-client-mongodb-atlas v0.2.1-0.20200501091934-11d1f6e5cf4c
1414
github.com/mongodb/go-client-mongodb-ops-manager v0.2.2
1515
github.com/pelletier/go-toml v1.6.0 // indirect
1616
github.com/spf13/afero v1.2.2

go.sum

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,8 @@ github.com/mitchellh/mapstructure v1.1.2 h1:fmNYVwqnSfB9mZU6OS2O6GsXM+wcskZDuKQz
102102
github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=
103103
github.com/mongodb/go-client-mongodb-atlas v0.2.1-0.20200427191133-b5e334932f44 h1:PUOc5BwUVOqGVQqX5vs2MPiJJ6PEZ+jA7TYtna1gOLo=
104104
github.com/mongodb/go-client-mongodb-atlas v0.2.1-0.20200427191133-b5e334932f44/go.mod h1:LS8O0YLkA+sbtOb3fZLF10yY3tJM+1xATXMJ3oU35LU=
105+
github.com/mongodb/go-client-mongodb-atlas v0.2.1-0.20200501091934-11d1f6e5cf4c h1:TSM5e3DYHvTGSCPvTDiPV/iHPQuz0+l+7C5Kx1jP6II=
106+
github.com/mongodb/go-client-mongodb-atlas v0.2.1-0.20200501091934-11d1f6e5cf4c/go.mod h1:LS8O0YLkA+sbtOb3fZLF10yY3tJM+1xATXMJ3oU35LU=
105107
github.com/mongodb/go-client-mongodb-ops-manager v0.2.2 h1:xQoyeLjRJmOjvCkjCwbnkzIvugpm6eNozDw4Auk84to=
106108
github.com/mongodb/go-client-mongodb-ops-manager v0.2.2/go.mod h1:RrXnfBx3CyKN64jXkXFEO07CnMBEYa5CdlHOQ/30a5A=
107109
github.com/mwielbut/pointy v1.1.0 h1:U5/YEfoIkaGCHv0St3CgjduqXID4FNRoyZgLM1kY9vg=

internal/cli/atlas_events_list.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
package cli
1515

1616
import (
17-
"errors"
17+
"fmt"
1818

1919
atlas "github.com/mongodb/go-client-mongodb-atlas/mongodbatlas"
2020
"github.com/mongodb/mongocli/internal/description"
@@ -29,10 +29,10 @@ type atlasEventsListOpts struct {
2929
listOpts
3030
orgID string
3131
projectID string
32-
eventType string
32+
eventType []string
3333
minDate string
3434
maxDate string
35-
store store.EventsStore
35+
store store.EventLister
3636
}
3737

3838
func (opts *atlasEventsListOpts) initStore() error {
@@ -50,9 +50,9 @@ func (opts *atlasEventsListOpts) Run() error {
5050
if opts.orgID != "" {
5151
result, err = opts.store.OrganizationEvents(opts.orgID, listOpts)
5252
} else if opts.projectID != "" {
53-
result, err = opts.store.ProjectEvents(opts.projectID, &listOpts.ListOptions)
53+
result, err = opts.store.ProjectEvents(opts.projectID, listOpts)
5454
} else {
55-
return errors.New("--projectID or --orgID must be set")
55+
return fmt.Errorf("--%s or --%s must be set", flags.ProjectID, flags.OrgID)
5656
}
5757

5858
if err != nil {
@@ -93,7 +93,7 @@ func AtlasEventsListBuilder() *cobra.Command {
9393
cmd.Flags().IntVar(&opts.pageNum, flags.Page, 0, usage.Page)
9494
cmd.Flags().IntVar(&opts.itemsPerPage, flags.Limit, 0, usage.Limit)
9595

96-
cmd.Flags().StringVar(&opts.eventType, flags.Type, "", usage.Event)
96+
cmd.Flags().StringSliceVar(&opts.eventType, flags.Type, nil, usage.Event)
9797
cmd.Flags().StringVar(&opts.maxDate, flags.MaxDate, "", usage.MaxDate)
9898
cmd.Flags().StringVar(&opts.minDate, flags.MinDate, "", usage.MinDate)
9999

internal/cli/atlas_events_list_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ import (
2424

2525
func TestAtlasEventsList_Run(t *testing.T) {
2626
ctrl := gomock.NewController(t)
27-
mockStore := mocks.NewMockEventsStore(ctrl)
27+
mockStore := mocks.NewMockEventLister(ctrl)
2828

2929
defer ctrl.Finish()
3030

@@ -53,7 +53,7 @@ func TestAtlasEventsList_Run(t *testing.T) {
5353

5454
listOpts.projectID = "1"
5555
mockStore.
56-
EXPECT().ProjectEvents(listOpts.projectID, &listOpts.newEventListOptions().ListOptions).
56+
EXPECT().ProjectEvents(listOpts.projectID, listOpts.newEventListOptions()).
5757
Return(expected, nil).
5858
Times(1)
5959

internal/mocks/mock_events.go

Lines changed: 18 additions & 18 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

internal/store/events.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,16 +28,16 @@ type OrganizationEventLister interface {
2828
}
2929

3030
type ProjectEventLister interface {
31-
ProjectEvents(string, *atlas.ListOptions) (*atlas.EventResponse, error)
31+
ProjectEvents(string, *atlas.EventListOptions) (*atlas.EventResponse, error)
3232
}
3333

34-
type EventsStore interface {
34+
type EventLister interface {
3535
OrganizationEventLister
3636
ProjectEventLister
3737
}
3838

3939
// ProjectEvents encapsulate the logic to manage different cloud providers
40-
func (s *Store) ProjectEvents(projectID string, opts *atlas.ListOptions) (*atlas.EventResponse, error) {
40+
func (s *Store) ProjectEvents(projectID string, opts *atlas.EventListOptions) (*atlas.EventResponse, error) {
4141
switch s.service {
4242
case config.CloudService:
4343
result, _, err := s.client.(*atlas.Client).Events.ListProjectEvents(context.Background(), projectID, opts)

0 commit comments

Comments
 (0)