master
 1require 'rails_helper'
 2
 3describe RegistrationsController do
 4  describe "#create" do
 5    let(:user_session) { double(access: SecureRandom.hex(12)) }
 6
 7    it 'creates a new user' do
 8      allow(User).to receive(:login).with('mo@cakeside.com', 'password').and_return(user_session)
 9
10      post :create, params: {  user: { name: 'mo', email: 'mo@cakeside.com', password: 'password' } }
11
12      expect(User.count).to eql(1)
13      expect(response).to redirect_to(my_dashboard_path)
14      expect(session[:raphael]).to_not be_nil
15      expect(session[:raphael]).to eql(user_session.access)
16    end
17
18    it 'displays errors' do
19      post :create, params: { user: { name: 'mo', email: 'mo', password: 'password', password_confirmation: 'password' } }
20      expect(response).to redirect_to(new_session_path)
21      expect(flash[:error]).to_not be_empty
22    end
23  end
24end