home_controller_spec.rb (1185B)
- require 'rails_helper'
- RSpec.describe HomeController, type: :controller do
- render_views
- describe 'GET #index' do
- subject { get :index }
- context 'when not signed in' do
- context 'when requested path is tag timeline' do
- before { @request.path = '/web/timelines/tag/name' }
- it { is_expected.to redirect_to '/tags/name' }
- end
- it 'redirects to about page' do
- @request.path = '/'
- is_expected.to redirect_to(about_path)
- end
- end
- context 'when signed in' do
- let(:user) { Fabricate(:user) }
- before { sign_in(user) }
- it 'assigns @body_classes' do
- subject
- expect(assigns(:body_classes)).to eq 'app-body'
- end
- it 'assigns @initial_state_json' do
- subject
- initial_state_json = json_str_to_hash(assigns(:initial_state_json))
- expect(initial_state_json[:meta]).to_not be_nil
- expect(initial_state_json[:compose]).to_not be_nil
- expect(initial_state_json[:accounts]).to_not be_nil
- expect(initial_state_json[:settings]).to_not be_nil
- expect(initial_state_json[:media_attachments]).to_not be_nil
- end
- end
- end
- end