From 28bd7944b132c637c19d0245b8f309869209aa4f Mon Sep 17 00:00:00 2001 From: Karel Suta Date: Tue, 22 Aug 2023 15:19:21 +0200 Subject: [PATCH] Test support: return error if Ray API response code doesn't match --- test/support/ray_cluster_client.go | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/test/support/ray_cluster_client.go b/test/support/ray_cluster_client.go index ce36459bd..bbce9af2e 100644 --- a/test/support/ray_cluster_client.go +++ b/test/support/ray_cluster_client.go @@ -19,6 +19,7 @@ package support import ( "bytes" "encoding/json" + "fmt" "io" "net/http" "net/url" @@ -77,13 +78,17 @@ func (client *rayClusterClient) CreateJob(job *RayJobSetup) (response *RayJobRes return } + if resp.StatusCode != 200 { + return nil, fmt.Errorf("incorrect response code: %d for creating Ray Job, response body: %s", resp.StatusCode, respData) + } + err = json.Unmarshal(respData, &response) return } func (client *rayClusterClient) GetJobDetails(jobID string) (response *RayJobDetailsResponse, err error) { - createJobURL := client.endpoint.String() + "/api/jobs/" + jobID - resp, err := http.Get(createJobURL) + getJobDetailsURL := client.endpoint.String() + "/api/jobs/" + jobID + resp, err := http.Get(getJobDetailsURL) if err != nil { return } @@ -93,13 +98,17 @@ func (client *rayClusterClient) GetJobDetails(jobID string) (response *RayJobDet return } + if resp.StatusCode != 200 { + return nil, fmt.Errorf("incorrect response code: %d for retrieving Ray Job details, response body: %s", resp.StatusCode, respData) + } + err = json.Unmarshal(respData, &response) return } func (client *rayClusterClient) GetJobLogs(jobID string) (logs string, err error) { - createJobURL := client.endpoint.String() + "/api/jobs/" + jobID + "/logs" - resp, err := http.Get(createJobURL) + getJobLogsURL := client.endpoint.String() + "/api/jobs/" + jobID + "/logs" + resp, err := http.Get(getJobLogsURL) if err != nil { return } @@ -109,6 +118,10 @@ func (client *rayClusterClient) GetJobLogs(jobID string) (logs string, err error return } + if resp.StatusCode != 200 { + return "", fmt.Errorf("incorrect response code: %d for retrieving Ray Job logs, response body: %s", resp.StatusCode, respData) + } + jobLogs := RayJobLogsResponse{} err = json.Unmarshal(respData, &jobLogs) return jobLogs.Logs, err