3961: test creating subprojects under home with duplicate names
authorTim Pierce <twp@curoverse.com>
Tue, 30 Sep 2014 04:42:16 +0000 (00:42 -0400)
committerTim Pierce <twp@curoverse.com>
Tue, 30 Sep 2014 04:49:11 +0000 (00:49 -0400)
New tests:
* unprivileged user creating a subproject under their home project, with
  an existing name, returns 422
* unprivileged user creating a subproject under their home project, with
  an existing name, and ensure_unique_name=true, succeeds

services/api/test/functional/arvados/v1/groups_controller_test.rb

index de339c9554d4891dff5c66a4611bf04044ab15f9..5a67b5cbfc75ebb2aada77d0deb8a5091b0f2c04 100644 (file)
@@ -329,4 +329,31 @@ class Arvados::V1::GroupsControllerTest < ActionController::TestCase
                     users(:admin).uuid,
                     "Current user should be included in 'writable_by' field")
   end
+
+  test 'creating subproject with duplicate name fails' do
+    authorize_with :active
+    post :create, {
+      group: {
+        name: 'A Project',
+        owner_uuid: users(:active).uuid,
+        group_class: 'project',
+      },
+    }
+    assert_response 422
+  end
+
+  test 'creating duplicate named subproject succeeds with ensure_unique_name' do
+    authorize_with :active
+    post :create, {
+      group: {
+        name: 'A Project',
+        owner_uuid: users(:active).uuid,
+        group_class: 'project',
+      },
+      ensure_unique_name: true
+    }
+    assert_response :success
+    assert_not_equal json_response['uuid'], groups(:aproject).uuid
+    assert_equal json_response['name'], 'A Project (2)'
+  end
 end