test/base_test.rb in active_presenter-1.2.0 vs test/base_test.rb in active_presenter-1.2.1

- old
+ new

@@ -15,10 +15,14 @@ expect User.create!(hash_for_user) do |u| SignupPresenter.new(:user => u.expected).user end + expect true do + SignupPresenter.new(:user => nil).user.new_record? + end + expect User do SignupPresenter.new.user end expect User.any_instance.to.receive(:login=).with('james') do @@ -63,10 +67,48 @@ s = SignupPresenter.new s.valid? s.errors.on(:user_login) end + expect "can't be blank" do + s = SignupPresenter.new + s.valid? + s.errors.on(:user_login) + end + + expect ["User Password can't be blank"] do + s = SignupPresenter.new(:user_login => 'login') + s.valid? + s.errors.full_messages + end + + expect 'c4N n07 83 8L4nK' do + old_locale = I18n.locale + I18n.locale = '1337' + + s = SignupPresenter.new(:user_login => nil) + s.valid? + message = s.errors.on(:user_login) + + I18n.locale = old_locale + + message + end + + expect ['U53R pa22w0rD c4N n07 83 8L4nK'] do + old_locale = I18n.locale + I18n.locale = '1337' + + s = SignupPresenter.new(:user_login => 'login') + s.valid? + message = s.errors.full_messages + + I18n.locale = old_locale + + message + end + expect ActiveRecord::Base.to.receive(:transaction) do s = SignupPresenter.new s.save end @@ -113,10 +155,11 @@ expect SignupPresenter.new(:user => User.new(hash_for_user)).to.be.save! expect SignupPresenter.new.to.be.respond_to?(:user_login) expect SignupPresenter.new.to.be.respond_to?(:user_password_confirmation) expect SignupPresenter.new.to.be.respond_to?(:valid?) # just making sure i didn't break everything :) + expect SignupPresenter.new.to.be.respond_to?(:nil?, false) # making sure it's possible to pass 2 arguments expect User.create!(hash_for_user).not.to.be.login_changed? do |user| s = SignupPresenter.new(:user => user) s.update_attributes :user_login => 'Something Totally Different' end @@ -142,10 +185,15 @@ :"user_birthday(5i)" => '30', :"user_birthday(6i)" => '59' }) s.user_birthday end + + expect nil do + s = SignupPresenter.new + s.attributes = nil + end # this is a regression test to make sure that _title is working. we had a weird conflict with using String#delete expect 'something' do s = SignupPresenter.new :account_title => 'something' s.account_title @@ -265,18 +313,18 @@ expect NoMethodError do SignupPresenter.new({:i_dont_exist=>"blah"}) end expect false do - SignupNoNilPresenter.new.save + SignupNoAccountPresenter.new.save end expect true do - SignupNoNilPresenter.new(:user => nil, :account => Account.new).save + SignupNoAccountPresenter.new(:user => User.new(hash_for_user), :account => nil).save end expect true do - SignupNoNilPresenter.new(:user => nil, :account => Account.new).save! + SignupNoAccountPresenter.new(:user => User.new(hash_for_user), :account => nil).save! end expect Address do PresenterWithTwoAddresses.new.secondary_address end