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