Commit 7946059
Changed files (3)
spec
controllers
support
spec/controllers/sessions_controller_spec.rb
@@ -0,0 +1,38 @@
+require 'rails_helper'
+
+RSpec.describe SessionsController, type: :controller do
+ describe "GET #new" do
+ it "returns http success" do
+ get :new
+ expect(response).to have_http_status(:success)
+ end
+
+ it "loads a new user" do
+ get :new
+ expect(assigns(:user)).to be_new_record
+ end
+ end
+
+ describe "GET #create" do
+ context "when credentials are valid" do
+ let(:user) { create(:user) }
+
+ before { get :create, username: user.username, password: 'password' }
+
+ it "creates a new session for the user" do
+ expect(session[:x]).to eql(user.id)
+ end
+
+ it "redirects the user to the dashboard" do
+ expect(response).to redirect_to(agents_path)
+ end
+ end
+ end
+
+ describe "GET #destroy" do
+ it "returns http success" do
+ get :destroy
+ expect(response).to have_http_status(:success)
+ end
+ end
+end
spec/support/database_cleaner.rb
@@ -1,4 +1,4 @@
-Rspec.configure do |config|
+RSpec.configure do |config|
config.before(:suite) do
DatabaseCleaner.clean_with(:truncation)
end
spec/support/factory_girl.rb
@@ -1,3 +1,3 @@
-Rspec.configure do |config|
+RSpec.configure do |config|
config.include FactoryGirl::Syntax::Methods
end