diff options
author | Seth Chisamore <schisamo@opscode.com> | 2012-10-30 10:04:20 -0400 |
---|---|---|
committer | Seth Chisamore <schisamo@opscode.com> | 2012-10-30 10:04:20 -0400 |
commit | 9348c1c9c80ee757354d624b7dc1b78ebc7605c4 (patch) | |
tree | 4b929d5421f514b477aaa82d98516f82f1e62045 /features/api/nodes/cookbook_sync_api.feature | |
parent | 265a1b898c7235198d60b14d83b75754133b0884 (diff) | |
parent | 8366c2259a62c02cee2137a869cb401b578bada0 (diff) | |
download | chef-9348c1c9c80ee757354d624b7dc1b78ebc7605c4.tar.gz |
Merge branch 'OC-3564-remove-chef-server'
Diffstat (limited to 'features/api/nodes/cookbook_sync_api.feature')
-rw-r--r-- | features/api/nodes/cookbook_sync_api.feature | 94 |
1 files changed, 0 insertions, 94 deletions
diff --git a/features/api/nodes/cookbook_sync_api.feature b/features/api/nodes/cookbook_sync_api.feature deleted file mode 100644 index 1a833ae8b1..0000000000 --- a/features/api/nodes/cookbook_sync_api.feature +++ /dev/null @@ -1,94 +0,0 @@ -@api @nodes @cookbook_sync @api_nodes -Feature: Synchronize cookbooks to the edge - In order to configure my nodes centrally - As a Developer - I want to synchronize the cookbooks from the server to the edge nodes - - Scenario: Retrieve the list of cookbook files to synchronize - Given I am an administrator - And a 'node' named 'sync' exists - When I 'GET' the path '/nodes/sync/cookbooks' - And the inflated responses key 'node_cookbook_sync' should exist - And the inflated responses key 'node_cookbook_sync' should match '"recipes":' as json - And the inflated responses key 'node_cookbook_sync' should match 'default.rb' as json - And the inflated responses key 'node_cookbook_sync' should match '"definitions":' as json - And the inflated responses key 'node_cookbook_sync' should match 'def_file.rb' as json - And the inflated responses key 'node_cookbook_sync' should match '"libraries":' as json - And the inflated responses key 'node_cookbook_sync' should match 'lib_file.rb' as json - And the inflated responses key 'node_cookbook_sync' should match '"attributes":' as json - And the inflated responses key 'node_cookbook_sync' should match 'attr_file.rb' as json - - @CHEF-1607 - Scenario: Retrieve the correct versions of cookbook files to sync, especially when they do not lexically sort - Given I am an administrator - And I upload multiple versions of the 'version_test' cookbook that do not lexically sort correctly - And a 'node' named 'paradise' exists - When I 'GET' the path '/nodes/paradise/cookbooks' - And the inflated responses key 'version_test' should exist - And the inflated responses key 'version_test' should match '"version":"0.10.0"' as json - - Scenario: Retrieve the list of cookbook files to syncronize when the node has a chef_environment - Given I am an administrator - And an 'environment' named 'cookbooks-0.1.0' exists - And a 'node' named 'has_environment' exists - And I upload multiple versions of the 'version_test' cookbook - When I 'GET' the path '/nodes/has_environment/cookbooks' - Then the inflated responses key 'version_test' should exist - And the inflated responses key 'version_test' should match '"version":"0.1.0"' as json - Given an 'environment' named 'cookbooks-0.1.1' - When I 'PUT' the 'environment' to the path '/environments/cookbooks_test' - And I 'GET' the path '/nodes/has_environment/cookbooks' - Then the inflated responses key 'version_test' should exist - And the inflated responses key 'version_test' should match '"version":"0.1.1"' as json - Given an 'environment' named 'cookbooks-0.2.0' - When I 'PUT' the 'environment' to the path '/environments/cookbooks_test' - And I 'GET' the path '/nodes/has_environment/cookbooks' - Then the inflated responses key 'version_test' should exist - And the inflated responses key 'version_test' should match '"version":"0.2.0"' as json - - Scenario: Retrieve the list of cookbook files to synchronize with a wrong private key - Given I am an administrator - And a 'node' named 'sync' exists - When I 'GET' the path '/nodes/sync/cookbooks' using a wrong private key - Then I should get a '401 "Unauthorized"' exception - - @oss_only - Scenario: Retrieve the list of cookbook files to synchronize as a non-admin - Given I am a non-admin - And a 'node' named 'sync' exists - When I 'GET' the path '/nodes/sync/cookbooks' - Then I should get a '403 "Forbidden"' exception - - @cookbook_dependencies @positive - Scenario: Retrieve the list of cookbooks when dependencies are resolvable - Given I am an administrator - And I upload the set of 'dep_test_*' cookbooks - And a 'node' named 'empty' exists - And changing the 'node' field 'run_list' to 'recipe[dep_test_a@1.0.0]' - When I 'PUT' the 'node' to the path 'nodes/empty' - And I 'GET' the path 'nodes/empty/cookbooks' - Then cookbook 'dep_test_a' should have version '1.0.0' - Then cookbook 'dep_test_b' should have version '1.0.0' - Then cookbook 'dep_test_c' should have version '1.0.0' - - @cookbook_dependencies - Scenario: Retrieve the list of cookbooks when there is a conflict in the dependencies - Given I am an administrator - And I upload the set of 'dep_test_*' cookbooks - And a 'node' named 'empty' exists - And changing the 'node' field 'run_list' to 'recipe[dep_test_b@2.0.0]' - When I 'PUT' the 'node' to the path 'nodes/empty' - And I 'GET' the path 'nodes/empty/cookbooks' - Then I should get a '412 "Precondition Failed"' exception - And the response exception body should match 'Unable to satisfy constraints on cookbook dep_test_a due to run list item \(dep_test_b = 2.0.0\)' - - @cookbook_dependencies - Scenario: Retrieve the list of cookbooks when a cookbook is unavailable - Given I am an administrator - And I upload the set of 'dep_test_*' cookbooks - And a 'node' named 'empty' exists - And changing the 'node' field 'run_list' to 'recipe[dep_test_a@3.0.0]' - When I 'PUT' the 'node' to the path 'nodes/empty' - And I 'GET' the path 'nodes/empty/cookbooks' - Then I should get a '412 "Precondition Failed"' exception - And the response exception body should match 'Unable to satisfy constraints on cookbook dep_test_c due to run list item \(dep_test_a = 3.0.0\)' |