- req := httptest.NewRequest("PATCH", "/arvados/v1/workflows/"+arvadostest.WorkflowWithDefinitionYAMLUUID, strings.NewReader(url.Values{
- "workflow": {`{"description":"updated by TestUpdateRemoteWorkflow"}`},
- }.Encode()))
- req.Header.Set("Content-type", "application/x-www-form-urlencoded")
- req.Header.Set("Authorization", "Bearer "+arvadostest.ActiveToken)
- resp := httptest.NewRecorder()
- s.handler.ServeHTTP(resp, req)
- s.checkResponseOK(c, resp)
+ updateDescription := func(descr string) *httptest.ResponseRecorder {
+ req := httptest.NewRequest("PATCH", "/arvados/v1/workflows/"+arvadostest.WorkflowWithDefinitionYAMLUUID, strings.NewReader(url.Values{
+ "workflow": {`{"description":"` + descr + `"}`},
+ }.Encode()))
+ req.Header.Set("Content-type", "application/x-www-form-urlencoded")
+ req.Header.Set("Authorization", "Bearer "+arvadostest.ActiveToken)
+ resp := httptest.NewRecorder()
+ s.handler.ServeHTTP(resp, req)
+ s.checkResponseOK(c, resp)
+ return resp
+ }
+
+ // Update description twice so running this test twice in a
+ // row still causes ModifiedAt to change
+ updateDescription("updated once by TestUpdateRemoteWorkflow")
+ resp := updateDescription("updated twice by TestUpdateRemoteWorkflow")
+