aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--actionpack/lib/action_controller/vendor/html-scanner/html/selector.rb15
-rw-r--r--actionpack/lib/action_dispatch/testing/assertions/selector.rb37
-rw-r--r--activerecord/lib/active_record/persistence.rb3
3 files changed, 46 insertions, 9 deletions
diff --git a/actionpack/lib/action_controller/vendor/html-scanner/html/selector.rb b/actionpack/lib/action_controller/vendor/html-scanner/html/selector.rb
index fbf7ffc595..0fe2e6d1a6 100644
--- a/actionpack/lib/action_controller/vendor/html-scanner/html/selector.rb
+++ b/actionpack/lib/action_controller/vendor/html-scanner/html/selector.rb
@@ -207,12 +207,18 @@ module HTML
class << self
+ # :call-seq:
+ # Selector.for_class(cls) => selector
+ #
# Creates a new selector for the given class name.
def for_class(cls)
self.new([".?", cls])
end
+ # :call-seq:
+ # Selector.for_id(id) => selector
+ #
# Creates a new selector for the given id.
def for_id(id)
self.new(["#?", id])
@@ -221,6 +227,9 @@ module HTML
end
+ # :call-seq:
+ # Selector.new(string, [values ...]) => selector
+ #
# Creates a new selector from a CSS 2 selector expression.
#
# The first argument is the selector expression. All other arguments
@@ -333,6 +342,9 @@ module HTML
end
+ # :call-seq:
+ # match(element, first?) => array or nil
+ #
# Matches an element against the selector.
#
# For a simple selector this method returns an array with the
@@ -422,6 +434,9 @@ module HTML
end
+ # :call-seq:
+ # select(root) => array
+ #
# Selects and returns an array with all matching elements, beginning
# with one node and traversing through all children depth-first.
# Returns an empty array if no match is found.
diff --git a/actionpack/lib/action_dispatch/testing/assertions/selector.rb b/actionpack/lib/action_dispatch/testing/assertions/selector.rb
index 21985369cc..2fc9e2b7d6 100644
--- a/actionpack/lib/action_dispatch/testing/assertions/selector.rb
+++ b/actionpack/lib/action_dispatch/testing/assertions/selector.rb
@@ -9,7 +9,7 @@ module ActionDispatch
module Assertions
NO_STRIP = %w{pre script style textarea}
- # Adds the +assert_select+ method for use in \Rails functional
+ # Adds the +assert_select+ method for use in Rails functional
# test cases, which can be used to make assertions on the response HTML of a controller
# action. You can also call +assert_select+ within another +assert_select+ to
# make assertions on elements selected by the enclosing assertion.
@@ -18,12 +18,16 @@ module ActionDispatch
# from the response HTML or elements selected by the enclosing assertion.
#
# In addition to HTML responses, you can make the following assertions:
- # * +assert_select_rjs+ - \Assertions on HTML content of RJS update and insertion operations.
- # * +assert_select_encoded+ - \Assertions on HTML encoded inside XML, for example for dealing with feed item descriptions.
- # * +assert_select_email+ - \Assertions on the HTML body of an e-mail.
+ # * +assert_select_rjs+ - Assertions on HTML content of RJS update and insertion operations.
+ # * +assert_select_encoded+ - Assertions on HTML encoded inside XML, for example for dealing with feed item descriptions.
+ # * +assert_select_email+ - Assertions on the HTML body of an e-mail.
#
# Also see HTML::Selector to learn how to use selectors.
module SelectorAssertions
+ # :call-seq:
+ # css_select(selector) => array
+ # css_select(element, selector) => array
+ #
# Select and return all matching elements.
#
# If called with a single argument, uses that argument as a selector
@@ -35,7 +39,7 @@ module ActionDispatch
# base element and any of its children. Returns an empty array if no
# match is found.
#
- # The selector may be a CSS selector expression (string), an expression
+ # The selector may be a CSS selector expression (String), an expression
# with substitution values (Array) or an HTML::Selector object.
#
# ==== Examples
@@ -95,6 +99,10 @@ module ActionDispatch
selector.select(root)
end
+ # :call-seq:
+ # assert_select(selector, equality?, message?)
+ # assert_select(element, selector, equality?, message?)
+ #
# An assertion that selects elements and makes one or more equality tests.
#
# If the first argument is an element, selects all matching elements
@@ -124,7 +132,7 @@ module ActionDispatch
# assert_select "li", 8
# end
#
- # The selector may be a CSS selector expression (string), an expression
+ # The selector may be a CSS selector expression (String), an expression
# with substitution values, or an HTML::Selector object.
#
# === Equality Tests
@@ -132,11 +140,11 @@ module ActionDispatch
# The equality test may be one of the following:
# * <tt>true</tt> - Assertion is true if at least one element selected.
# * <tt>false</tt> - Assertion is true if no element selected.
- # * <tt>string/Regexp</tt> - Assertion is true if the text value of at least
+ # * <tt>String/Regexp</tt> - Assertion is true if the text value of at least
# one element matches the string or regular expression.
- # * <tt>integer</tt> - Assertion is true if exactly that number of
+ # * <tt>Integer</tt> - Assertion is true if exactly that number of
# elements are selected.
- # * <tt>range</tt> - Assertion is true if the number of selected
+ # * <tt>Range</tt> - Assertion is true if the number of selected
# elements fit the range.
# If no equality test specified, the assertion is true if at least one
# element selected.
@@ -324,6 +332,11 @@ module ActionDispatch
end
end
+ # :call-seq:
+ # assert_select_rjs(id?) { |elements| ... }
+ # assert_select_rjs(statement, id?) { |elements| ... }
+ # assert_select_rjs(:insert, position, id?) { |elements| ... }
+ #
# Selects content from the RJS response.
#
# === Narrowing down
@@ -461,6 +474,9 @@ module ActionDispatch
end
end
+ # :call-seq:
+ # assert_select_encoded(element?) { |elements| ... }
+ #
# Extracts the content of an element, treats it as encoded HTML and runs
# nested assertion on it.
#
@@ -527,6 +543,9 @@ module ActionDispatch
end
end
+ # :call-seq:
+ # assert_select_email { }
+ #
# Extracts the body of an email and runs nested assertions on it.
#
# You must enable deliveries for this assertion to work, use:
diff --git a/activerecord/lib/active_record/persistence.rb b/activerecord/lib/active_record/persistence.rb
index 1b016f0895..bf8089f042 100644
--- a/activerecord/lib/active_record/persistence.rb
+++ b/activerecord/lib/active_record/persistence.rb
@@ -18,6 +18,9 @@ module ActiveRecord
!(new_record? || destroyed?)
end
+ # :call-seq:
+ # save(options)
+ #
# Saves the model.
#
# If the model is new a record gets created in the database, otherwise