instante-social/spec/controllers/home_controller_spec.rb

43 lines
1.2 KiB
Ruby
Raw Normal View History

2016-02-22 15:00:20 +00:00
require 'rails_helper'
RSpec.describe HomeController, type: :controller do
render_views
2016-02-24 23:17:01 +00:00
describe 'GET #index' do
subject { get :index }
2017-05-23 21:37:24 +00:00
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
2017-05-23 21:37:24 +00:00
it 'redirects to about page' do
@request.path = '/'
is_expected.to redirect_to(about_path)
2017-05-23 21:37:24 +00:00
end
end
context 'when signed in' do
let(:user) { Fabricate(:user) }
before { sign_in(user) }
2017-05-23 21:37:24 +00:00
it 'assigns @body_classes' do
subject
expect(assigns(:body_classes)).to eq 'app-body'
end
it 'assigns @initial_state_json' do
2017-05-23 21:37:24 +00:00
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
2017-05-23 21:37:24 +00:00
end
end
2016-02-24 23:17:01 +00:00
end
2016-02-22 15:00:20 +00:00
end