Created
November 30, 2009 20:17
-
-
Save stormsilver/245703 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| @api @data @api_search @api_search_show | |
| Feature: Search data via the REST API | |
| In order to know about objects in the system | |
| As a Developer | |
| I want to search the objects | |
| Scenario: Search for objects when none have been created # features/api/search/show_search.feature:7 | |
| Given a 'registration' named 'bobo' exists # features/steps/fixture_steps.rb:162 | |
| And a 'data_bag' named 'users' exists # features/steps/fixture_steps.rb:162 | |
| When I authenticate as 'bobo' # features/steps/request_steps.rb:53 | |
| And I 'GET' the path '/search/users' # features/steps/request_steps.rb:1 | |
| Then the inflated responses key 'rows' should be '0' items long # features/steps/response_steps.rb:48 | |
| And the inflated responses key 'start' should be the integer '0' # features/steps/response_steps.rb:9 | |
| And the inflated responses key 'total' should be the integer '0' # features/steps/response_steps.rb:9 | |
| Scenario: Search for objects when one has been created # features/api/search/show_search.feature:16 | |
| Given a 'registration' named 'bobo' exists # features/steps/fixture_steps.rb:162 | |
| And a 'data_bag' named 'users' exists # features/steps/fixture_steps.rb:162 | |
| And a 'data_bag_item' named 'francis' exists # features/steps/fixture_steps.rb:162 | |
| And I wait for '10' seconds # features/steps/fixture_steps.rb:212 | |
| When I authenticate as 'bobo' # features/steps/request_steps.rb:53 | |
| And I 'GET' the path '/search/users' # features/steps/request_steps.rb:1 | |
| /usr/local/lib/ruby/gems/1.8/gems/rspec-1.2.9/lib/spec/matchers/matcher.rb:17: warning: multiple values for a block parameter (0 for 1) | |
| from /usr/local/lib/ruby/gems/1.8/gems/rspec-1.2.9/lib/spec/matchers/matcher.rb:74 | |
| Then the inflated responses key 'rows' item '0' should be a kind of 'Chef::DataBagItem' # features/steps/response_steps.rb:40 | |
| expected nil to be a kind of Chef::DataBagItem (Spec::Expectations::ExpectationNotMetError) | |
| ./features/steps/response_steps.rb:41:in `/^the inflated responses key '(.+)' item '(\d+)' should be a kind of '(.+)'$/' | |
| features/api/search/show_search.feature:23:in `Then the inflated responses key 'rows' item '0' should be a kind of 'Chef::DataBagItem'' | |
| And the inflated responses key 'rows' item '0' key 'id' should be 'francis' # features/steps/response_steps.rb:44 | |
| And the inflated responses key 'start' should be the integer '0' # features/steps/response_steps.rb:9 | |
| And the inflated responses key 'total' should be the integer '1' # features/steps/response_steps.rb:9 | |
| Scenario: Search for objects when two have been created # features/api/search/show_search.feature:28 | |
| Given a 'registration' named 'bobo' exists # features/steps/fixture_steps.rb:162 | |
| And a 'data_bag' named 'users' exists # features/steps/fixture_steps.rb:162 | |
| And a 'data_bag_item' named 'francis' exists # features/steps/fixture_steps.rb:162 | |
| And a 'data_bag_item' named 'axl_rose' exists # features/steps/fixture_steps.rb:162 | |
| And I wait for '10' seconds # features/steps/fixture_steps.rb:212 | |
| When I authenticate as 'bobo' # features/steps/request_steps.rb:53 | |
| And I 'GET' the path '/search/users' # features/steps/request_steps.rb:1 | |
| /usr/local/lib/ruby/gems/1.8/gems/rspec-1.2.9/lib/spec/matchers/matcher.rb:17: warning: multiple values for a block parameter (0 for 1) | |
| from /usr/local/lib/ruby/gems/1.8/gems/rspec-1.2.9/lib/spec/matchers/matcher.rb:74 | |
| Then the inflated responses key 'rows' item '0' should be a kind of 'Chef::DataBagItem' # features/steps/response_steps.rb:40 | |
| expected nil to be a kind of Chef::DataBagItem (Spec::Expectations::ExpectationNotMetError) | |
| ./features/steps/response_steps.rb:41:in `/^the inflated responses key '(.+)' item '(\d+)' should be a kind of '(.+)'$/' | |
| features/api/search/show_search.feature:36:in `Then the inflated responses key 'rows' item '0' should be a kind of 'Chef::DataBagItem'' | |
| And the inflated responses key 'rows' item '0' key 'id' should be 'francis' # features/steps/response_steps.rb:44 | |
| And the inflated responses key 'rows' item '1' should be a kind of 'Chef::DataBagItem' # features/steps/response_steps.rb:40 | |
| And the inflated responses key 'rows' item '1' key 'id' should be 'axl_rose' # features/steps/response_steps.rb:44 | |
| And the inflated responses key 'start' should be the integer '0' # features/steps/response_steps.rb:9 | |
| And the inflated responses key 'total' should be the integer '2' # features/steps/response_steps.rb:9 | |
| Scenario: Search for objects with a manual ascending sort order # features/api/search/show_search.feature:43 | |
| Given a 'registration' named 'bobo' exists # features/steps/fixture_steps.rb:162 | |
| And a 'data_bag' named 'users' exists # features/steps/fixture_steps.rb:162 | |
| And a 'data_bag_item' named 'francis' exists # features/steps/fixture_steps.rb:162 | |
| And a 'data_bag_item' named 'axl_rose' exists # features/steps/fixture_steps.rb:162 | |
| And I wait for '10' seconds # features/steps/fixture_steps.rb:212 | |
| When I authenticate as 'bobo' # features/steps/request_steps.rb:53 | |
| And I 'GET' the path '/search/users?sort=id+asc' # features/steps/request_steps.rb:1 | |
| /usr/local/lib/ruby/gems/1.8/gems/rspec-1.2.9/lib/spec/matchers/matcher.rb:17: warning: multiple values for a block parameter (0 for 1) | |
| from /usr/local/lib/ruby/gems/1.8/gems/rspec-1.2.9/lib/spec/matchers/matcher.rb:74 | |
| Then the inflated responses key 'rows' item '0' should be a kind of 'Chef::DataBagItem' # features/steps/response_steps.rb:40 | |
| expected nil to be a kind of Chef::DataBagItem (Spec::Expectations::ExpectationNotMetError) | |
| ./features/steps/response_steps.rb:41:in `/^the inflated responses key '(.+)' item '(\d+)' should be a kind of '(.+)'$/' | |
| features/api/search/show_search.feature:51:in `Then the inflated responses key 'rows' item '0' should be a kind of 'Chef::DataBagItem'' | |
| And the inflated responses key 'rows' item '0' key 'id' should be 'axl_rose' # features/steps/response_steps.rb:44 | |
| And the inflated responses key 'rows' item '1' should be a kind of 'Chef::DataBagItem' # features/steps/response_steps.rb:40 | |
| And the inflated responses key 'rows' item '1' key 'id' should be 'francis' # features/steps/response_steps.rb:44 | |
| And the inflated responses key 'start' should be the integer '0' # features/steps/response_steps.rb:9 | |
| And the inflated responses key 'total' should be the integer '2' # features/steps/response_steps.rb:9 | |
| Scenario: Search for objects with a manual descending sort order # features/api/search/show_search.feature:58 | |
| Given a 'registration' named 'bobo' exists # features/steps/fixture_steps.rb:162 | |
| And a 'data_bag' named 'users' exists # features/steps/fixture_steps.rb:162 | |
| And a 'data_bag_item' named 'francis' exists # features/steps/fixture_steps.rb:162 | |
| And a 'data_bag_item' named 'axl_rose' exists # features/steps/fixture_steps.rb:162 | |
| And I wait for '10' seconds # features/steps/fixture_steps.rb:212 | |
| When I authenticate as 'bobo' # features/steps/request_steps.rb:53 | |
| And I 'GET' the path '/search/users?sort=id+desc' # features/steps/request_steps.rb:1 | |
| /usr/local/lib/ruby/gems/1.8/gems/rspec-1.2.9/lib/spec/matchers/matcher.rb:17: warning: multiple values for a block parameter (0 for 1) | |
| from /usr/local/lib/ruby/gems/1.8/gems/rspec-1.2.9/lib/spec/matchers/matcher.rb:74 | |
| Then the inflated responses key 'rows' item '0' should be a kind of 'Chef::DataBagItem' # features/steps/response_steps.rb:40 | |
| expected nil to be a kind of Chef::DataBagItem (Spec::Expectations::ExpectationNotMetError) | |
| ./features/steps/response_steps.rb:41:in `/^the inflated responses key '(.+)' item '(\d+)' should be a kind of '(.+)'$/' | |
| features/api/search/show_search.feature:66:in `Then the inflated responses key 'rows' item '0' should be a kind of 'Chef::DataBagItem'' | |
| And the inflated responses key 'rows' item '0' key 'id' should be 'francis' # features/steps/response_steps.rb:44 | |
| And the inflated responses key 'rows' item '1' should be a kind of 'Chef::DataBagItem' # features/steps/response_steps.rb:40 | |
| And the inflated responses key 'rows' item '1' key 'id' should be 'axl_rose' # features/steps/response_steps.rb:44 | |
| And the inflated responses key 'start' should be the integer '0' # features/steps/response_steps.rb:9 | |
| And the inflated responses key 'total' should be the integer '2' # features/steps/response_steps.rb:9 | |
| Scenario: Search for objects and page through the results # features/api/search/show_search.feature:73 | |
| Given a 'registration' named 'bobo' exists # features/steps/fixture_steps.rb:162 | |
| And a 'data_bag' named 'users' exists # features/steps/fixture_steps.rb:162 | |
| And a 'data_bag_item' named 'francis' exists # features/steps/fixture_steps.rb:162 | |
| And a 'data_bag_item' named 'axl_rose' exists # features/steps/fixture_steps.rb:162 | |
| And I wait for '10' seconds # features/steps/fixture_steps.rb:212 | |
| When I authenticate as 'bobo' # features/steps/request_steps.rb:53 | |
| And I 'GET' the path '/search/users?rows=1&sort=id+asc' # features/steps/request_steps.rb:1 | |
| /usr/local/lib/ruby/gems/1.8/gems/rspec-1.2.9/lib/spec/matchers/matcher.rb:17: warning: multiple values for a block parameter (0 for 1) | |
| from /usr/local/lib/ruby/gems/1.8/gems/rspec-1.2.9/lib/spec/matchers/matcher.rb:74 | |
| Then the inflated responses key 'rows' item '0' should be a kind of 'Chef::DataBagItem' # features/steps/response_steps.rb:40 | |
| expected nil to be a kind of Chef::DataBagItem (Spec::Expectations::ExpectationNotMetError) | |
| ./features/steps/response_steps.rb:41:in `/^the inflated responses key '(.+)' item '(\d+)' should be a kind of '(.+)'$/' | |
| features/api/search/show_search.feature:81:in `Then the inflated responses key 'rows' item '0' should be a kind of 'Chef::DataBagItem'' | |
| And the inflated responses key 'rows' item '0' key 'id' should be 'axl_rose' # features/steps/response_steps.rb:44 | |
| And the inflated responses key 'rows' should be '1' items long # features/steps/response_steps.rb:48 | |
| And the inflated responses key 'start' should be the integer '0' # features/steps/response_steps.rb:9 | |
| And the inflated responses key 'total' should be the integer '2' # features/steps/response_steps.rb:9 | |
| When I 'GET' the path '/search/users?rows=1&start=1&sort=id+asc' # features/steps/request_steps.rb:1 | |
| Then the inflated responses key 'rows' item '0' should be a kind of 'Chef::DataBagItem' # features/steps/response_steps.rb:40 | |
| And the inflated responses key 'rows' item '0' key 'id' should be 'francis' # features/steps/response_steps.rb:44 | |
| And the inflated responses key 'rows' should be '1' items long # features/steps/response_steps.rb:48 | |
| And the inflated responses key 'start' should be the integer '1' # features/steps/response_steps.rb:9 | |
| And the inflated responses key 'total' should be the integer '2' # features/steps/response_steps.rb:9 | |
| Scenario: Search for a subset of objects # features/api/search/show_search.feature:93 | |
| Given a 'registration' named 'bobo' exists # features/steps/fixture_steps.rb:162 | |
| And a 'data_bag' named 'users' exists # features/steps/fixture_steps.rb:162 | |
| And a 'data_bag_item' named 'francis' exists # features/steps/fixture_steps.rb:162 | |
| And a 'data_bag_item' named 'axl_rose' exists # features/steps/fixture_steps.rb:162 | |
| And I wait for '10' seconds # features/steps/fixture_steps.rb:212 | |
| When I authenticate as 'bobo' # features/steps/request_steps.rb:53 | |
| And I 'GET' the path '/search/users?q=id:axl_rose' # features/steps/request_steps.rb:1 | |
| /usr/local/lib/ruby/gems/1.8/gems/rspec-1.2.9/lib/spec/matchers/matcher.rb:17: warning: multiple values for a block parameter (0 for 1) | |
| from /usr/local/lib/ruby/gems/1.8/gems/rspec-1.2.9/lib/spec/matchers/matcher.rb:74 | |
| Then the inflated responses key 'rows' item '0' should be a kind of 'Chef::DataBagItem' # features/steps/response_steps.rb:40 | |
| expected nil to be a kind of Chef::DataBagItem (Spec::Expectations::ExpectationNotMetError) | |
| ./features/steps/response_steps.rb:41:in `/^the inflated responses key '(.+)' item '(\d+)' should be a kind of '(.+)'$/' | |
| features/api/search/show_search.feature:101:in `Then the inflated responses key 'rows' item '0' should be a kind of 'Chef::DataBagItem'' | |
| And the inflated responses key 'rows' item '0' key 'id' should be 'axl_rose' # features/steps/response_steps.rb:44 | |
| And the inflated responses key 'start' should be the integer '0' # features/steps/response_steps.rb:9 | |
| And the inflated responses key 'total' should be the integer '1' # features/steps/response_steps.rb:9 | |
| Scenario: Search for a node # features/api/search/show_search.feature:106 | |
| Given a 'registration' named 'bobo' exists # features/steps/fixture_steps.rb:162 | |
| And a 'node' named 'searchman' exists # features/steps/fixture_steps.rb:162 | |
| And I wait for '10' seconds # features/steps/fixture_steps.rb:212 | |
| When I authenticate as 'bobo' # features/steps/request_steps.rb:53 | |
| And I 'GET' the path '/search/node?q=recipe:oracle' # features/steps/request_steps.rb:1 | |
| /usr/local/lib/ruby/gems/1.8/gems/rspec-1.2.9/lib/spec/matchers/matcher.rb:17: warning: multiple values for a block parameter (0 for 1) | |
| from /usr/local/lib/ruby/gems/1.8/gems/rspec-1.2.9/lib/spec/matchers/matcher.rb:74 | |
| Then the inflated responses key 'rows' item '0' should be a kind of 'Chef::Node' # features/steps/response_steps.rb:40 | |
| expected nil to be a kind of Chef::Node (Spec::Expectations::ExpectationNotMetError) | |
| ./features/steps/response_steps.rb:41:in `/^the inflated responses key '(.+)' item '(\d+)' should be a kind of '(.+)'$/' | |
| features/api/search/show_search.feature:112:in `Then the inflated responses key 'rows' item '0' should be a kind of 'Chef::Node'' | |
| And the inflated responses key 'rows' item '0' key 'one' should be 'five' # features/steps/response_steps.rb:44 | |
| And the inflated responses key 'rows' item '0' key 'three' should be 'four' # features/steps/response_steps.rb:44 | |
| And the inflated responses key 'rows' item '0' key 'walking' should be 'tall' # features/steps/response_steps.rb:44 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment