Merge branch '10846-nodemanager-errors' closes #10846
[arvados.git] / apps / workbench / test / controllers / container_requests_controller_test.rb
index 8dbbbd07c11d5add20dc91f2402ed015e8d43d2a..70e042cd3dcad21a38de4b639343bef6ab7c5098 100644 (file)
@@ -29,4 +29,31 @@ class ContainerRequestsControllerTest < ActionController::TestCase
     assert_includes @response.body, '<div id="event_log_div"'
     assert_select 'Download the log', false
   end
+
+  test "completed container request offers re-run option" do
+    use_token 'active'
+
+    uuid = api_fixture('container_requests')['completed']['uuid']
+
+    get :show, {id: uuid}, session_for(:active)
+    assert_response :success
+
+   assert_includes @response.body, "href=\"/container_requests/#{uuid}/copy\""
+  end
+
+  test "container request copy" do
+    completed_cr = api_fixture('container_requests')['completed']
+    post(:copy,
+         {
+           id: completed_cr['uuid']
+         },
+         session_for(:active))
+    assert_response 302
+    copied_cr = assigns(:object)
+    assert_not_nil copied_cr
+    assert_equal 'Uncommitted', copied_cr[:state]
+    assert_equal "Copy of #{completed_cr['name']}", copied_cr['name']
+    assert_equal completed_cr['cmd'], copied_cr['cmd']
+    assert_equal completed_cr['runtime_constraints']['ram'], copied_cr['runtime_constraints'][:ram]
+  end
 end