cheat sheets.

$ cheat validations
--- validations version 2	Fri May 30 06:29:20 +0000 2008
+++ validations version 6	Fri Sep 19 02:53:31 +0000 2008
@@ -1,40 +1,38 @@
-# Credit: http://nubyonrails.com/articles/ruby-rails-test-rails-cheat-sheet
-# Use 'cheat assert_raise' for more details
+Basic Validations
+http://ar.rubyonrails.com/classes/ActiveRecord/Validations/ClassMethods.html
 
-# Standard Ruby Assertions
+def validate
+  unless name && name =~ /^\w+$/
+    errors.add(:name, "is missing or valid")
+  end
+end
 
-assert                  boolean 
-assert_equal            expected, actual 
-assert_raise            *args 
-assert_raises           *args, &block 
-assert_instance_of      klass, object 
-assert_nil              object 
-assert_kind_of          klass, object 
-assert_respond_to       object, method 
-assert_match            pattern, string 
-assert_same             expected, actual 
-assert_operator         object1, operator, object2 
-assert_nothing_raised   *args 
-assert_not_same         expected, actual 
-assert_not_equal        expected, actual 
-assert_not_nil          object 
-assert_no_match         regexp, string 
-assert_throws           expected_symbol, &proc 
-assert_nothing_thrown   &proc 
-assert_in_delta         expected_float, actual_float, delta 
-assert_send             send_array
+def validate_on_create
+  if User.find_by_name(name)
+    errors.add(:name, "is already being used")
+  end
+end
 
-# Rails Assertions
 
-assert_response         type 
-assert_redirected_to    options = {} 
-assert_template         expected 
-assert_recognizes       expected_options, path, extras={} 
-assert_generates        expected_path, options, defaults={}, extras = {} 
-assert_routing          path, options, defaults={}, extras={} 
-assert_tag              *opts 
-assert_no_tag           *opts 
-assert_dom_equal        expected, actual 
-assert_dom_not_equal    expected, actual 
-assert_valid            record 
+validates_acceptance_of
+  Validates that the value of the attribute is the string "1" or the value of
+  the :accept parameter. Useful for checkboxes.
+validates_associated
+validates_confirmation_of
+validates_each
+validates_exclusion_of
+validates_format_of
+validates_inclusion_of
+validates_length_of
+validates_numericality_of
+validates_presence_of
+validates_size_of
+validates_uniqueness_of
+
+DEFAULT_VALIDATION_OPTIONS = { :on => :save, :allow_nil => false, :allow_blank
+=> false, :message => nil
+ALL_RANGE_OPTIONS = [ :is, :within, :in, :minimum, :maximum ].freeze
+ALL_NUMERICALITY_CHECK = { :greater_than => '>', :greater_than_or_equal_to =>
+'>=', :equal_to => '==', :less_than => '<', :less_than_or_equal_to => '<=', :odd
+=> 'odd?', :even => 'even?' }.freeze
( add new | see all )