Skip to content

Commit 5a78f67

Browse files
Merge pull request opendatahub-io#95 from DharmitD/test-expt
Add tests for DSP experiments
2 parents d39126d + 2cc45ce commit 5a78f67

File tree

1 file changed

+68
-1
lines changed

1 file changed

+68
-1
lines changed

tests/basictests/dsp-operator.sh

Lines changed: 68 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,29 @@ function verify_pipeline_availabilty() {
101101
os::cmd::try_until_text "curl -s -k -H 'Authorization: Bearer ${SA_TOKEN}' https://${ROUTE}/apis/v1beta1/pipelines | jq '.total_size'" "2" $odhdefaulttimeout $odhdefaultinterval
102102
}
103103

104+
function create_experiment() {
105+
header "Creating an experiment"
106+
107+
EXPERIMENT_ID=$((curl -s -k -H "Authorization: Bearer ${SA_TOKEN}" \
108+
-H "Content-Type: application/json" \
109+
-X POST "https://${ROUTE}/apis/v1beta1/experiments" \
110+
-d @- << EOF
111+
{
112+
"name": "test-experiment",
113+
"description": "This is a test experiment"
114+
}
115+
EOF
116+
) | jq -r .id)
117+
118+
os::cmd::try_until_not_text "curl -s -k -H 'Authorization: Bearer ${SA_TOKEN}' https://${ROUTE}/apis/v1beta1/experiments/${EXPERIMENT_ID} | jq" "null" $odhdefaulttimeout $odhdefaultinterval
119+
}
120+
121+
function verify_experiment_availabilty() {
122+
header "Verify experiment exists"
123+
124+
os::cmd::try_until_text "curl -s -k -H 'Authorization: Bearer ${SA_TOKEN}' https://${ROUTE}/apis/v1beta1/experiments | jq '.total_size'" "2" $odhdefaulttimeout $odhdefaultinterval
125+
}
126+
104127
function create_run() {
105128
header "Creating the run from uploaded pipeline"
106129
@@ -120,23 +143,63 @@ EOF
120143
os::cmd::try_until_not_text "curl -s -k -H 'Authorization: Bearer ${SA_TOKEN}' https://${ROUTE}/apis/v1beta1/runs/${RUN_ID} | jq '" "null" $odhdefaulttimeout $odhdefaultinterval
121144
}
122145
146+
function create_experiment_run() {
147+
header "Creating a run that uses the test experiment"
148+
149+
RUN_ID_EXPT=$((curl -k -H "Authorization: Bearer ${SA_TOKEN}" \
150+
-H "Content-Type: application/json" \
151+
-X POST "https://${ROUTE}/apis/v1beta1/runs" \
152+
-d @- << EOF
153+
{
154+
"name": "test-experiment-run",
155+
"description": "This is a test run that uses the test experiment",
156+
"pipeline_spec":{
157+
"pipeline_id":"${PIPELINE_ID}"
158+
},
159+
"resource_references":[
160+
{
161+
"key":{
162+
"type":"EXPERIMENT",
163+
"id":"${EXPERIMENT_ID}"
164+
},
165+
"name":"Default",
166+
"relationship":"OWNER"
167+
}
168+
]
169+
}
170+
EOF
171+
) | jq -r .run.id)
172+
173+
os::cmd::try_until_not_text "curl -s -k -H 'Authorization: Bearer ${SA_TOKEN}' https://${ROUTE}/apis/v1beta1/runs/${RUN_ID_EXPT} | jq '" "null" $odhdefaulttimeout $odhdefaultinterval
174+
}
175+
123176
function verify_run_availabilty() {
124177
header "verify the run exists"
125178
126-
os::cmd::try_until_text "curl -s -k -H 'Authorization: Bearer ${SA_TOKEN}' https://${ROUTE}/apis/v1beta1/runs | jq '.total_size'" "1" $odhdefaulttimeout $odhdefaultinterval
179+
os::cmd::try_until_text "curl -s -k -H 'Authorization: Bearer ${SA_TOKEN}' https://${ROUTE}/apis/v1beta1/runs | jq '.total_size'" "2" $odhdefaulttimeout $odhdefaultinterval
127180
}
128181
129182
function check_run_status() {
130183
header "Checking run status"
131184
132185
os::cmd::try_until_text "curl -s -k -H 'Authorization: Bearer ${SA_TOKEN}' https://${ROUTE}/apis/v1beta1/runs/${RUN_ID} | jq '.run.status'" "Completed" $odhdefaulttimeout $odhdefaultinterval
186+
os::cmd::try_until_text "curl -s -k -H 'Authorization: Bearer ${SA_TOKEN}' https://${ROUTE}/apis/v1beta1/runs/${RUN_ID_EXPT} | jq '.run.status'" "Completed" $odhdefaulttimeout $odhdefaultinterval
187+
}
188+
189+
function delete_experiment() {
190+
header "Deleting the experiment"
191+
192+
os::cmd::try_until_text "curl -s -k -H 'Authorization: Bearer ${SA_TOKEN}' -X DELETE https://${ROUTE}/apis/v1beta1/experiments/${EXPERIMENT_ID} | jq" "" $odhdefaulttimeout $odhdefaultinterval
193+
os::cmd::try_until_text "curl -s -k -H 'Authorization: Bearer ${SA_TOKEN}' https://${ROUTE}/apis/v1beta1/experiments/${EXPERIMENT_ID} | jq '.code'" "5" $odhdefaulttimeout $odhdefaultinterval
133194
}
134195
135196
function delete_runs() {
136197
header "Deleting the runs"
137198
138199
os::cmd::try_until_text "curl -s -k -H 'Authorization: Bearer ${SA_TOKEN}' -X DELETE https://${ROUTE}/apis/v1beta1/runs/${RUN_ID} | jq" "" $odhdefaulttimeout $odhdefaultinterval
139200
os::cmd::try_until_text "curl -s -k -H 'Authorization: Bearer ${SA_TOKEN}' https://${ROUTE}/apis/v1beta1/runs/${RUN_ID} | jq '.code'" "5" $odhdefaulttimeout $odhdefaultinterval
201+
os::cmd::try_until_text "curl -s -k -H 'Authorization: Bearer ${SA_TOKEN}' -X DELETE https://${ROUTE}/apis/v1beta1/runs/${RUN_ID_EXPT} | jq" "" $odhdefaulttimeout $odhdefaultinterval
202+
os::cmd::try_until_text "curl -s -k -H 'Authorization: Bearer ${SA_TOKEN}' https://${ROUTE}/apis/v1beta1/runs/${RUN_ID_EXPT} | jq '.code'" "5" $odhdefaulttimeout $odhdefaultinterval
140203
}
141204
142205
function delete_pipeline() {
@@ -157,10 +220,14 @@ test_metrics
157220
fetch_runs
158221
create_pipeline
159222
verify_pipeline_availabilty
223+
create_experiment
224+
verify_experiment_availabilty
160225
create_run
226+
create_experiment_run
161227
verify_run_availabilty
162228
check_run_status
163229
delete_runs
230+
delete_experiment
164231
delete_pipeline
165232
166233
os::test::junit::declare_suite_end

0 commit comments

Comments
 (0)