Organizando plugins e gems.
This commit is contained in:
10
vendor/gems/thoughtbot-shoulda-2.10.1/test/unit/address_test.rb
vendored
Normal file
10
vendor/gems/thoughtbot-shoulda-2.10.1/test/unit/address_test.rb
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
require File.dirname(__FILE__) + '/../test_helper'
|
||||
|
||||
class AddressTest < Test::Unit::TestCase
|
||||
fixtures :all
|
||||
|
||||
should_belong_to :addressable
|
||||
should_validate_uniqueness_of :title, :scoped_to => [:addressable_id, :addressable_type]
|
||||
should_ensure_length_at_least :zip, 5
|
||||
should_only_allow_numeric_values_for :zip
|
||||
end
|
||||
10
vendor/gems/thoughtbot-shoulda-2.10.1/test/unit/dog_test.rb
vendored
Normal file
10
vendor/gems/thoughtbot-shoulda-2.10.1/test/unit/dog_test.rb
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
require File.dirname(__FILE__) + '/../test_helper'
|
||||
|
||||
class Pets::DogTest < Test::Unit::TestCase
|
||||
should_belong_to :user
|
||||
should_belong_to :address, :dependent => :destroy
|
||||
should_have_many :treats
|
||||
should_have_and_belong_to_many :fleas
|
||||
should_require_attributes :treats, :fleas
|
||||
should_validate_presence_of :owner_id
|
||||
end
|
||||
6
vendor/gems/thoughtbot-shoulda-2.10.1/test/unit/flea_test.rb
vendored
Normal file
6
vendor/gems/thoughtbot-shoulda-2.10.1/test/unit/flea_test.rb
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
require File.dirname(__FILE__) + '/../test_helper'
|
||||
|
||||
class FleaTest < Test::Unit::TestCase
|
||||
should_have_and_belong_to_many :dogs
|
||||
end
|
||||
|
||||
6
vendor/gems/thoughtbot-shoulda-2.10.1/test/unit/friendship_test.rb
vendored
Normal file
6
vendor/gems/thoughtbot-shoulda-2.10.1/test/unit/friendship_test.rb
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
require File.dirname(__FILE__) + '/../test_helper'
|
||||
|
||||
class FriendshipTest < ActiveSupport::TestCase
|
||||
should_belong_to :user
|
||||
should_belong_to :friend
|
||||
end
|
||||
19
vendor/gems/thoughtbot-shoulda-2.10.1/test/unit/post_test.rb
vendored
Normal file
19
vendor/gems/thoughtbot-shoulda-2.10.1/test/unit/post_test.rb
vendored
Normal file
@@ -0,0 +1,19 @@
|
||||
require File.dirname(__FILE__) + '/../test_helper'
|
||||
|
||||
class PostTest < Test::Unit::TestCase
|
||||
fixtures :all
|
||||
|
||||
should_belong_to :user
|
||||
should_belong_to :owner
|
||||
should_have_many :tags, :through => :taggings
|
||||
should_have_many :through_tags, :through => :taggings
|
||||
|
||||
should_require_unique_attributes :title
|
||||
should_validate_presence_of :body, :message => /wtf/
|
||||
should_validate_presence_of :title
|
||||
should_validate_numericality_of :user_id
|
||||
|
||||
should_fail do
|
||||
should_validate_uniqueness_of :title, :case_sensitive => false
|
||||
end
|
||||
end
|
||||
27
vendor/gems/thoughtbot-shoulda-2.10.1/test/unit/product_test.rb
vendored
Normal file
27
vendor/gems/thoughtbot-shoulda-2.10.1/test/unit/product_test.rb
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
require File.dirname(__FILE__) + '/../test_helper'
|
||||
|
||||
class ProductTest < ActiveSupport::TestCase
|
||||
context "An intangible product" do
|
||||
setup do
|
||||
@product = Product.new(:tangible => false)
|
||||
end
|
||||
|
||||
should_validate_presence_of :title
|
||||
should_not_allow_values_for :size, "22"
|
||||
should_allow_values_for :size, "22kb"
|
||||
should_ensure_value_in_range :price, 0..99
|
||||
end
|
||||
|
||||
context "A tangible product" do
|
||||
setup do
|
||||
@product = Product.new(:tangible => true)
|
||||
end
|
||||
|
||||
should_validate_presence_of :price
|
||||
should_ensure_value_in_range :price, 1..9999
|
||||
should_ensure_value_in_range :weight, 1..100
|
||||
should_not_allow_values_for :size, "22", "10x15"
|
||||
should_allow_values_for :size, "12x12x1"
|
||||
should_ensure_length_in_range :size, 5..20
|
||||
end
|
||||
end
|
||||
15
vendor/gems/thoughtbot-shoulda-2.10.1/test/unit/tag_test.rb
vendored
Normal file
15
vendor/gems/thoughtbot-shoulda-2.10.1/test/unit/tag_test.rb
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
require File.dirname(__FILE__) + '/../test_helper'
|
||||
|
||||
class TagTest < Test::Unit::TestCase
|
||||
should_have_many :taggings, :dependent => :destroy
|
||||
should_have_many :posts
|
||||
|
||||
should_ensure_length_at_least :name, 2
|
||||
|
||||
should_protect_attributes :secret
|
||||
should_allow_mass_assignment_of :name
|
||||
|
||||
should_fail do
|
||||
should_not_allow_mass_assignment_of :name
|
||||
end
|
||||
end
|
||||
6
vendor/gems/thoughtbot-shoulda-2.10.1/test/unit/tagging_test.rb
vendored
Normal file
6
vendor/gems/thoughtbot-shoulda-2.10.1/test/unit/tagging_test.rb
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
require File.dirname(__FILE__) + '/../test_helper'
|
||||
|
||||
class TaggingTest < Test::Unit::TestCase
|
||||
should_belong_to :post
|
||||
should_belong_to :tag
|
||||
end
|
||||
70
vendor/gems/thoughtbot-shoulda-2.10.1/test/unit/user_test.rb
vendored
Normal file
70
vendor/gems/thoughtbot-shoulda-2.10.1/test/unit/user_test.rb
vendored
Normal file
@@ -0,0 +1,70 @@
|
||||
require File.dirname(__FILE__) + '/../test_helper'
|
||||
|
||||
class UserTest < Test::Unit::TestCase
|
||||
fixtures :all
|
||||
|
||||
should_have_many :posts
|
||||
should_have_many :dogs
|
||||
|
||||
should_have_many :friendships
|
||||
should_have_many :friends
|
||||
|
||||
should_have_one :address
|
||||
should_have_one :address, :dependent => :destroy
|
||||
|
||||
should_have_indices :email, :name
|
||||
should_have_index :age
|
||||
should_have_index [:email, :name], :unique => true
|
||||
should_have_index :age, :unique => false
|
||||
|
||||
should_fail do
|
||||
should_have_index :phone
|
||||
should_have_index :email, :unique => false
|
||||
should_have_index :age, :unique => true
|
||||
end
|
||||
|
||||
should_have_named_scope :old, :conditions => "age > 50"
|
||||
should_have_named_scope :eighteen, :conditions => { :age => 18 }
|
||||
|
||||
should_have_named_scope 'recent(5)', :limit => 5
|
||||
should_have_named_scope 'recent(1)', :limit => 1
|
||||
should_have_named_scope 'recent_via_method(7)', :limit => 7
|
||||
|
||||
context "when given an instance variable" do
|
||||
setup { @count = 2 }
|
||||
should_have_named_scope 'recent(@count)', :limit => 2
|
||||
end
|
||||
|
||||
should_not_allow_values_for :email, "blah", "b lah"
|
||||
should_allow_values_for :email, "a@b.com", "asdf@asdf.com"
|
||||
should_ensure_length_in_range :email, 1..100
|
||||
should_ensure_value_in_range :age, 1..100, :low_message => /greater/,
|
||||
:high_message => /less/
|
||||
should_fail do
|
||||
should_ensure_value_in_range :age, 1..100, :low_message => /more/,
|
||||
:high_message => /less/
|
||||
end
|
||||
should_fail do
|
||||
should_ensure_value_in_range :age, 1..100, :low_message => /greater/,
|
||||
:high_message => /fewer/
|
||||
end
|
||||
should_not_allow_mass_assignment_of :password
|
||||
should_have_class_methods :find, :destroy
|
||||
should_have_instance_methods :email, :age, :email=, :valid?
|
||||
should_have_db_columns :name, :email, :age
|
||||
should_have_db_column :id, :type => "integer"
|
||||
should_have_db_column :email, :type => "string", :default => nil, :precision => nil, :limit => 255,
|
||||
:null => true, :scale => nil
|
||||
should_validate_acceptance_of :eula
|
||||
should_require_acceptance_of :eula
|
||||
should_validate_uniqueness_of :email, :scoped_to => :name, :case_sensitive => false
|
||||
|
||||
should_ensure_length_is :ssn, 9, :message => "Social Security Number is not the right length"
|
||||
should_validate_numericality_of :ssn
|
||||
|
||||
should_have_readonly_attributes :name
|
||||
|
||||
should_fail do
|
||||
should_not_allow_mass_assignment_of :name, :age
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user