OSDN Git Service

Merge branch 'omniauth_no_email_1' of https://github.com/gliptak/gitlabhq into glipta...
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Tue, 5 Mar 2013 14:48:18 +0000 (16:48 +0200)
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Tue, 5 Mar 2013 14:48:18 +0000 (16:48 +0200)
Conflicts:
app/observers/user_observer.rb
spec/observers/user_observer_spec.rb

1  2 
app/observers/user_observer.rb
spec/observers/user_observer_spec.rb

@@@ -1,8 -1,9 +1,9 @@@
  class UserObserver < ActiveRecord::Observer
    def after_create(user)
      log_info("User \"#{user.name}\" (#{user.email}) was created")
 -    unless user.extern_uid?
 -      Notify.new_user_email(user.id, user.password).deliver
 -    end
 +
-     Notify.delay.new_user_email(user.id, user.password)
++    # Dont email omniauth created users
++    Notify.delay.new_user_email(user.id, user.password) unless user.extern_uid?
    end
  
    def after_destroy user
@@@ -10,14 -13,27 +10,20 @@@ describe UserObserver d
    end
  
    context 'when a new user is created' do
 -    let(:notification) { double :notification }
 -
 -    it 'sends an email unless external' do
 -      user = double(:user, id: 42, password: 'P@ssword!', name: 'John', email: 'u@mail.local', extern_uid?: false)
 -      notification.should_receive(:deliver)
 -      Notify.should_receive(:new_user_email).with(user.id, user.password).and_return(notification)
 -
 -      subject.after_create(user)
 +    it 'sends an email' do
 +      Notify.should_receive(:new_user_email)
 +      create(:user)
      end
  
 -      user = double(:user, id: 42, password: 'P@ssword!', name: 'John', email: 'u@mail.local', extern_uid?: true)
 -      Notify.should_not_receive(:new_user_email)
 -
 -      subject.after_create(user)
+     it 'no email for external' do
++      Notify.should_receive(:new_user_email)
++      create(:user, extern_uid: '32442eEfsafada')
+     end
      it 'trigger logger' do
+       user = double(:user, id: 42, password: 'P@ssword!', name: 'John', email: 'u@mail.local', extern_uid?: false)
        Gitlab::AppLogger.should_receive(:info)
 -      subject.after_create(user)
 +      create(:user)
      end
    end
  end