Как передать параметры в спецификацию с помощью airborne gem?

#ruby-on-rails #ruby #rspec #airborne

#ruby-on-rails #ruby #rspec #airborne

Вопрос:

Я пытаюсь написать спецификации для api с помощью gem airborne

Как я могу передать параметры в тест?

В документации говорится:

Для запросов, требующих параметров запроса, вы можете передать хэш параметров в заголовки.

post 'http://example.com/api/v1/my_api', { }, { 'params' => {'param_key' => 'param_value' } *

Но когда я пытаюсь запустить простой тест с такими параметрами:

     it 'returns correctly status filtered tickets' do
      get 'http://localhost:3000/api/v1/users', { }, { 'params' => {'param_key' => 'param_value' } }
      expect_status(200)
    end
 

я получаю сообщение об ошибке:

 ArgumentError:
       wrong number of arguments (given 3, expected 1)`
 

Комментарии:

1. будьте осторожны, потому что в примере документации используется метод POST, посмотрите параметры запроса, тело запроса и заголовки здесь chunksofco.de / … может быть, смогу вам помочь.

Ответ №1:

Я изменил
get 'http://localhost:3000/api/v1/users', { }, { 'params' => {'param_key' => 'param_value' } } get 'http://localhost:3000/api/v1/users', params => {'param_key' => 'param_value' } } и это работает.