From 2e29fb7ed11cac7bcecec43a739e3942196f90d4 Mon Sep 17 00:00:00 2001 From: Ilya Konanykhin Date: Wed, 1 Feb 2017 00:02:41 +0600 Subject: [PATCH] Updated specs to reflect new user email & username behavior --- spec/features/devise/registrations_spec.rb | 25 ++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/spec/features/devise/registrations_spec.rb b/spec/features/devise/registrations_spec.rb index 45bde07..864cf40 100644 --- a/spec/features/devise/registrations_spec.rb +++ b/spec/features/devise/registrations_spec.rb @@ -13,7 +13,9 @@ describe "New User Registrations" do before do visit new_user_registration_path end + it 'should have the additional user fields on the registration page' do + page.should have_field 'user_username' page.should have_field 'user_first_name' page.should have_field 'user_last_name' page.should have_field 'user_email' @@ -29,6 +31,13 @@ describe "New User Registrations" do fill_in 'user_password_confirmation', :with => 'password' end + it 'should require username' do + fill_in 'user_first_name', :with => 'Frank' + fill_in 'user_last_name', :with => 'Footer' + click_button 'Sign up' + page.should have_content "Username can't be blank" + end + it 'should require first name' do fill_in 'user_last_name', :with => 'Footer' click_button 'Sign up' @@ -41,5 +50,21 @@ describe "New User Registrations" do page.should have_content "Last name can't be blank" end end + + it 'should allow registering many users with empty emails' do + expect do + FactoryGirl.create :user, email: '' + FactoryGirl.create :user, email: nil + + fill_in 'user_username', :with => 'test3' + fill_in 'user_first_name', :with => 'Frank3' + fill_in 'user_last_name', :with => 'Footer3' + fill_in 'user_password', :with => 'password3' + fill_in 'user_password_confirmation', :with => 'password3' + click_button 'Sign up' + end.to change { User.count }.by(3) + + expect(User.where(email: nil).count).to eq(3) + end end end