Rails 5.2 - обесценился "Должен" - PullRequest
0 голосов
/ 01 марта 2019

Если should устарело, я не хочу разрешать его использование.Каков новый синтаксис expect для этого?

   describe '#show response' do 
        it "should return html data only" do 
          get :show, params: {:id => "bike"}
          response.header['Content-Type'].should include 'text/html'
        end

        it "should not return json data" do 
          get :show, params: {:id => "bike"}
          response.header['Content-Type'].should_not include 'application/json'
        end

        it "should not return js data" do 
          get :show, params: {:id => "bike"}
          response.header['Content-Type'].should_not include 'text/javascript'
        end
      end
    end

Предупреждения об устаревании:

Использование should из старого :should синтаксиса rspec-ожидания без явного включениясинтаксис устарел.Используйте новый синтаксис :expect или явно включите :should с помощью config.expect_with(:rspec) { |c| c.syntax = :should }.

1 Ответ

0 голосов
/ 01 марта 2019

Вы можете рассмотреть возможность использования expect().to eq(), поэтому в вашем случае:

expect(response.header['Content-Type'].include?('text/html')).to be true
expect(response.header['Content-Type'].include?('application/json')).to be false
expect(response.header['Content-Type'].include?('text/javascript')).to be false

Дополнительная информация о rspec совпадениях здесь: https://relishapp.com/rspec/rspec-expectations/docs/built-in-matchers

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...