From 6ae10a3144f637507281d2eae2a89c3341788d16 Mon Sep 17 00:00:00 2001 From: "Alexis (AJ) Jasso" Date: Thu, 25 Apr 2024 15:35:15 -0700 Subject: [PATCH] feedback --- pager/opsgenie.go | 2 +- pager/opsgenie_test.go | 6 +++++ .../TestOpsgenie/LoadTeamMembers.golden.json | 25 ++++++++++++++++++- ...0-8a4b-10156d9408c8-identifiertype-id.json | 22 ++++++++++++++++ store/queries.sql | 2 +- store/queries.sql.go | 6 ++--- 6 files changed, 57 insertions(+), 6 deletions(-) create mode 100644 pager/testdata/TestOpsgenie/apiserver/v2-teams-b7acbc33-9853-4150-8a4b-10156d9408c8-identifiertype-id.json diff --git a/pager/opsgenie.go b/pager/opsgenie.go index 561b826..da9d0e7 100644 --- a/pager/opsgenie.go +++ b/pager/opsgenie.go @@ -480,7 +480,7 @@ func (o *Opsgenie) saveEscalationPolicyStepToDB(ctx context.Context, policyID st // review should certainly be required here. if t.TargetType == store.TARGET_TYPE_SCHEDULE { - schedules, err := store.UseQueries(ctx).ListExtSchedulesByPrefix(ctx, fmt.Sprintf(`%s%%`, rule.Recipient.Id)) + schedules, err := store.UseQueries(ctx).ListExtSchedulesLikeID(ctx, fmt.Sprintf(`%s%%`, rule.Recipient.Id)) if err != nil { return fmt.Errorf("getting schedules starting with ID %s: %w", rule.Recipient.Id, err) } diff --git a/pager/opsgenie_test.go b/pager/opsgenie_test.go index a09d07d..c0b7c52 100644 --- a/pager/opsgenie_test.go +++ b/pager/opsgenie_test.go @@ -57,6 +57,12 @@ func TestOpsgenie(t *testing.T) { t.Run("LoadTeamMembers", func(t *testing.T) { ctx, og := setup(t) + if err := og.LoadUsers(ctx); err != nil { + t.Fatalf("error loading users: %s", err) + } + if err := og.LoadTeams(ctx); err != nil { + t.Fatalf("error loading teams: %s", err) + } if err := og.LoadTeamMembers(ctx); err != nil { t.Fatalf("error loading team members: %s", err) } diff --git a/pager/testdata/TestOpsgenie/LoadTeamMembers.golden.json b/pager/testdata/TestOpsgenie/LoadTeamMembers.golden.json index 19765bd..cc969b3 100644 --- a/pager/testdata/TestOpsgenie/LoadTeamMembers.golden.json +++ b/pager/testdata/TestOpsgenie/LoadTeamMembers.golden.json @@ -1 +1,24 @@ -null +[ + { + "ext_team": { + "id": "b7acbc33-9853-4150-8a4b-10156d9408c8", + "name": "Customer Success", + "slug": "customer-success", + "fh_team_id": { + "String": "", + "Valid": false + }, + "is_group": 0, + "to_import": 0 + }, + "ext_user": { + "id": "b5b92115-bfe7-43eb-8c2a-e467f2e5ddc4", + "name": "john doe", + "email": "john.doe@opsgenie.com", + "fh_user_id": { + "String": "", + "Valid": false + } + } + } +] diff --git a/pager/testdata/TestOpsgenie/apiserver/v2-teams-b7acbc33-9853-4150-8a4b-10156d9408c8-identifiertype-id.json b/pager/testdata/TestOpsgenie/apiserver/v2-teams-b7acbc33-9853-4150-8a4b-10156d9408c8-identifiertype-id.json new file mode 100644 index 0000000..43f1765 --- /dev/null +++ b/pager/testdata/TestOpsgenie/apiserver/v2-teams-b7acbc33-9853-4150-8a4b-10156d9408c8-identifiertype-id.json @@ -0,0 +1,22 @@ +{ + "data": { + "id": "b7acbc33-9853-4150-8a4b-10156d9408c8", + "name": "Customer Success", + "description": "", + "members": [ + { + "user": { + "id": "b5b92115-bfe7-43eb-8c2a-e467f2e5ddc4", + "username": "john.doe@opsgenie.com" + }, + "role": "admin" + } + ], + "links": { + "web": "https://app.opsgenie.com/teams/dashboard/b7acbc33-9853-4150-8a4b-10156d9408c8/main", + "api": "https://api.opsgenie.com/v2/teams/b7acbc33-9853-4150-8a4b-10156d9408c8" + } + }, + "took": 0.029, + "requestId": "5a53826f-7864-4bf2-ada3-2979784d1e98" +} \ No newline at end of file diff --git a/store/queries.sql b/store/queries.sql index fd806b7..90e8a07 100644 --- a/store/queries.sql +++ b/store/queries.sql @@ -101,7 +101,7 @@ SELECT * FROM ext_schedules WHERE id = ?; -- name: ListExtSchedules :many SELECT * FROM ext_schedules; --- name: ListExtSchedulesByPrefix :many +-- name: ListExtSchedulesLikeID :many SELECT * FROM ext_schedules WHERE id LIKE ?; -- name: InsertExtSchedule :exec diff --git a/store/queries.sql.go b/store/queries.sql.go index ce79e37..5247f53 100644 --- a/store/queries.sql.go +++ b/store/queries.sql.go @@ -547,12 +547,12 @@ func (q *Queries) ListExtSchedules(ctx context.Context) ([]ExtSchedule, error) { return items, nil } -const listExtSchedulesByPrefix = `-- name: ListExtSchedulesByPrefix :many +const listExtSchedulesLikeID = `-- name: ListExtSchedulesLikeID :many SELECT id, name, description, timezone, strategy, shift_duration, start_time, handoff_time, handoff_day FROM ext_schedules WHERE id LIKE ? ` -func (q *Queries) ListExtSchedulesByPrefix(ctx context.Context, id string) ([]ExtSchedule, error) { - rows, err := q.db.QueryContext(ctx, listExtSchedulesByPrefix, id) +func (q *Queries) ListExtSchedulesLikeID(ctx context.Context, id string) ([]ExtSchedule, error) { + rows, err := q.db.QueryContext(ctx, listExtSchedulesLikeID, id) if err != nil { return nil, err }