Shindo.tests('Fog::Compute[:brightbox] | user requests', ['brightbox']) do tests('success') do tests("#list_users") do pending if Fog.mocking? result = Fog::Compute[:brightbox].list_users @user_id = result.first["id"] data_matches_schema(Brightbox::Compute::Formats::Collection::USERS, {:allow_extra_keys => true}) { result } end tests("#get_user('#{@user_id}')") do pending if Fog.mocking? result = Fog::Compute[:brightbox].get_user(@user_id) @current_name = result["name"] data_matches_schema(Brightbox::Compute::Formats::Full::USER, {:allow_extra_keys => true}) { result } end # Rather than setting the name to something useless we set it to the original value update_options = { :name => @current_name } tests("#update_user('#{@user_id}', #{update_options.inspect})") do pending if Fog.mocking? result = Fog::Compute[:brightbox].update_user(@user_id, update_options) data_matches_schema(Brightbox::Compute::Formats::Full::USER, {:allow_extra_keys => true}) { result } end end tests('failure') do tests("#update_user").raises(ArgumentError) do pending if Fog.mocking? Fog::Compute[:brightbox].update_user end end end