Skip to content

Commit

Permalink
feat: Replace LatestScheduleActionRecords to LatestScheduleActionReco…
Browse files Browse the repository at this point in the history
…rdsByJobName

- Replaced LatestScheduleActionRecords API to LatestScheduleActionRecordsByJobName
- Fixed typos

Signed-off-by: Jack Chen <jack@iotechsys.com>
  • Loading branch information
jackchenjc committed Aug 20, 2024
1 parent 424ac31 commit bd66c46
Show file tree
Hide file tree
Showing 7 changed files with 30 additions and 28 deletions.
10 changes: 5 additions & 5 deletions clients/http/scheduleactionrecord.go
Original file line number Diff line number Diff line change
Expand Up @@ -47,12 +47,12 @@ func (client *ScheduleActionRecordClient) AllScheduleActionRecords(ctx context.C
return res, nil
}

// LatestScheduleActionRecords query the latest schedule action records of each schedule job with offset, and limit
func (client *ScheduleActionRecordClient) LatestScheduleActionRecords(ctx context.Context, offset, limit int) (res responses.MultiScheduleActionRecordsResponse, err errors.EdgeX) {
// LatestScheduleActionRecordsByJobName query the latest schedule action records by job name
func (client *ScheduleActionRecordClient) LatestScheduleActionRecordsByJobName(ctx context.Context, jobName string) (res responses.MultiScheduleActionRecordsResponse, err errors.EdgeX) {
requestPath := path.Join(common.ApiScheduleActionRecordRoute, common.Latest, common.Job, common.Name, jobName)
requestParams := url.Values{}
requestParams.Set(common.Offset, strconv.Itoa(offset))
requestParams.Set(common.Limit, strconv.Itoa(limit))
err = utils.GetRequest(ctx, &res, client.baseUrl, common.ApiLatestScheduleActionRecordRoute, requestParams, client.authInjector)
requestParams.Set(common.Name, jobName)
err = utils.GetRequest(ctx, &res, client.baseUrl, requestPath, requestParams, client.authInjector)
if err != nil {
return res, errors.NewCommonEdgeXWrapper(err)
}
Expand Down
8 changes: 5 additions & 3 deletions clients/http/scheduleactionrecord_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,13 @@ func TestScheduleActionRecordClient_AllScheduleActionRecords(t *testing.T) {
require.IsType(t, responses.MultiScheduleActionRecordsResponse{}, res)
}

func TestScheduleActionRecordClient_LatestScheduleActionRecords(t *testing.T) {
ts := newTestServer(http.MethodGet, common.ApiLatestScheduleActionRecordRoute, responses.MultiScheduleActionRecordsResponse{})
func TestScheduleActionRecordClient_LatestScheduleActionRecordsByJobName(t *testing.T) {
jobName := TestScheduleJobName
urlPath := path.Join(common.ApiScheduleActionRecordRoute, common.Latest, common.Job, common.Name, jobName)
ts := newTestServer(http.MethodGet, urlPath, responses.MultiScheduleActionRecordsResponse{})
defer ts.Close()
client := NewScheduleActionRecordClient(ts.URL, NewNullAuthenticationInjector(), false)
res, err := client.LatestScheduleActionRecords(context.Background(), 0, 10)
res, err := client.LatestScheduleActionRecordsByJobName(context.Background(), jobName)
require.NoError(t, err)
require.IsType(t, responses.MultiScheduleActionRecordsResponse{}, res)
}
Expand Down
20 changes: 10 additions & 10 deletions clients/interfaces/mocks/ScheduleActionRecordClient.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions clients/interfaces/scheduleactionrecord.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ import (
type ScheduleActionRecordClient interface {
// AllScheduleActionRecords query schedule action records with start, end, offset, and limit
AllScheduleActionRecords(ctx context.Context, start, end int64, offset, limit int) (responses.MultiScheduleActionRecordsResponse, errors.EdgeX)
// LatestScheduleActionRecords query the latest schedule action records of each schedule job with offset, and limit
LatestScheduleActionRecords(ctx context.Context, offset, limit int) (responses.MultiScheduleActionRecordsResponse, errors.EdgeX)
// LatestScheduleActionRecordsByJobName query the latest schedule action records by job name
LatestScheduleActionRecordsByJobName(ctx context.Context, jobName string) (responses.MultiScheduleActionRecordsResponse, errors.EdgeX)
// ScheduleActionRecordsByStatus queries schedule action records with status, start, end, offset, and limit
ScheduleActionRecordsByStatus(ctx context.Context, status string, start, end int64, offset, limit int) (responses.MultiScheduleActionRecordsResponse, errors.EdgeX)
// ScheduleActionRecordsByJobName query schedule action records with jobName, start, end, offset, and limit
Expand Down
2 changes: 1 addition & 1 deletion common/constants.go
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ const (

ApiScheduleActionRecordRoute = ApiBase + "/scheduleactionrecord"
ApiAllScheduleActionRecordRoute = ApiScheduleActionRecordRoute + "/" + All
ApiLatestScheduleActionRecordRoute = ApiScheduleActionRecordRoute + "/" + Latest
ApiLatestScheduleActionRecordByJobNameRoute = ApiScheduleActionRecordRoute + "/" + Latest + "/" + Job + "/" + Name + "/{" + Name + "}"
ApiScheduleActionRecordRouteByStatusRoute = ApiScheduleActionRecordRoute + "/" + Status + "/{" + Status + "}"
ApiScheduleActionRecordRouteByJobNameRoute = ApiScheduleActionRecordRoute + "/" + Job + "/" + Name + "/{" + Name + "}"
ApiScheduleActionRecordByJobNameAndStatusRoute = ApiScheduleActionRecordRoute + "/" + Job + "/" + Name + "/{" + Name + "}/" + Status + "/{" + Status + "}"
Expand Down
4 changes: 2 additions & 2 deletions common/echo_api_constants.go
Original file line number Diff line number Diff line change
Expand Up @@ -91,8 +91,8 @@ const (

ApiScheduleActionRecordEchoRoute = ApiBase + "/scheduleactionrecord"
ApiAllScheduleActionRecordEchoRoute = ApiScheduleActionRecordRoute + "/" + All
ApiLatestScheduleActionRecordEchoRoute = ApiScheduleActionRecordRoute + "/" + Latest
ApiLatestScheduleActionRecordByJobNameEchoRoute = ApiScheduleActionRecordRoute + "/" + Latest + "/" + Job + "/" + Name + "/:" + Name
ApiScheduleActionRecordRouteByStatusEchoRoute = ApiScheduleActionRecordRoute + "/" + Status + "/:" + Status
ApiScheduleActionRecordRouteByJobNameEchoRoute = ApiScheduleActionRecordRoute + "/" + Job + "/" + Name + "/:" + Name
ApiScheduleActionRecordRouteByJobNameAndStatusEchoRoute = ApiScheduleActionRecordRoute + "/" + Job + "/" + Name + "/:" + Name + Status + "/:" + Status
ApiScheduleActionRecordRouteByJobNameAndStatusEchoRoute = ApiScheduleActionRecordRoute + "/" + Job + "/" + Name + "/:" + Name + "/" + Status + "/:" + Status
)
10 changes: 5 additions & 5 deletions dtos/requests/schedulejob_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ import (
)

var (
testScheduleJonName = "jobName"
testScheduleJobName = "jobName"
testScheduleJobLabels = []string{"label"}
testScheduleDef = dtos.ScheduleDef{
Type: common.DefInterval,
Expand Down Expand Up @@ -50,7 +50,7 @@ var (

func addScheduleJobRequestData() AddScheduleJobRequest {
return NewAddScheduleJobRequest(dtos.ScheduleJob{
Name: testScheduleJonName,
Name: testScheduleJobName,
Definition: testScheduleDef,
Actions: testScheduleActions,
AdminState: models.Unlocked,
Expand All @@ -60,7 +60,7 @@ func addScheduleJobRequestData() AddScheduleJobRequest {

func updateScheduleJobData() dtos.UpdateScheduleJob {
id := ExampleUUID
name := testScheduleJonName
name := testScheduleJobName
definition := testScheduleDef
actions := testScheduleActions
labels := testScheduleJobLabels
Expand Down Expand Up @@ -252,15 +252,15 @@ func TestUpdateScheduleJobRequest_UnmarshalJSON(t *testing.T) {
func TestReplaceScheduleJobModelFieldsWithDTO(t *testing.T) {
job := models.ScheduleJob{
Id: "7a1707f0-166f-4c4b-bc9d-1d54c74e0137",
Name: testScheduleJonName,
Name: testScheduleJobName,
}
patch := updateScheduleJobData()

ReplaceScheduleJobModelFieldsWithDTO(&job, patch)

expectedActions := dtos.ToScheduleActionModels(patch.Actions)
expectedDef := dtos.ToScheduleDefModel(*patch.Definition)
assert.Equal(t, testScheduleJonName, job.Name)
assert.Equal(t, testScheduleJobName, job.Name)
assert.Equal(t, expectedActions, job.Actions)
assert.Equal(t, expectedDef, job.Definition)
}

0 comments on commit bd66c46

Please sign in to comment.