Sha256: c765c92de70b8488e830f96e5f636badd51690b4bdd30371ff45077ef2ef0196

Contents?: true

Size: 1.69 KB

Versions: 8

Compression:

Stored size: 1.69 KB

Contents

require File.dirname(__FILE__) + '/test_helper.rb'

User.depends_on :profile, :attrs => [:first_name, :last_name, :email]

class TestClassyInheritance < Test::Unit::TestCase

  def setup
    @user = User.new
  end
  
  def test_active_record_should_respond_to_depends_on
    assert ActiveRecord::Base.respond_to?(:depends_on)
  end
  
  def test_user_should_respond_to_find_with_profile
    assert User.respond_to?(:find_with_profile)
  end

  def test_user_should_respond_to_first_name
    assert @user.respond_to?(:first_name)
  end
  
  def test_user_should_respond_to_first_name=
    assert @user.respond_to?(:first_name=)
  end
  
  def test_user_should_respond_to_last_name
    assert @user.respond_to?(:last_name)
  end
  
  def test_user_should_respond_to_last_name=
    assert @user.respond_to?(:last_name=)
  end
  
  def test_user_should_respond_to_email
    assert @user.respond_to?(:email)
  end
  
  def test_user_should_respond_to_email=
    assert @user.respond_to?(:email=)
  end
  
  def test_user_should_be_invalid_without_profile_attributes
    @user.login = 'joe'
    assert !@user.valid?
  end
  
  def test_user_should_valid_with_profile_attributes
    @user.login = 'joe'
    @user.first_name = 'joe'
    @user.last_name = 'bloggs'
    @user.email = 'joe@bloggs.co.uk'
    
    assert @user.valid?
  end

  def test_user_should_have_nice_error_message
    @user = User.new(:first_name => "andy")
    @user.valid?

    assert @user.errors.full_messages.include?("Last name can't be blank")
    assert @user.errors.full_messages.include?("Email can't be blank")
    assert @user.errors.full_messages.include?("Login can't be blank")
  end
  
end

Version data entries

8 entries across 8 versions & 2 rubygems

Version Path
johnsbrn-classy-inheritance-0.6.3.1 test/test_classy-inheritance.rb
johnsbrn-classy-inheritance-0.6.3.2 test/test_classy-inheritance.rb
johnsbrn-classy-inheritance-0.6.4 test/test_classy-inheritance.rb
johnsbrn-classy-inheritance-0.6.5 test/test_classy-inheritance.rb
johnsbrn-classy-inheritance-0.6.6 test/test_classy-inheritance.rb
johnsbrn-classy-inheritance-0.6.7 test/test_classy-inheritance.rb
johnsbrn-classy-inheritance-0.6.8 test/test_classy-inheritance.rb
classy-inheritance-0.6.4 test/test_classy-inheritance.rb