From b912bca9ac5ba062509c2ec073de27e6279a749e Mon Sep 17 00:00:00 2001 From: Francesco Rodriguez Date: Tue, 19 Jun 2012 14:47:46 -0500 Subject: update AS::Testing::Assertions docs --- .../lib/active_support/testing/assertions.rb | 53 +++++++++++++--------- 1 file changed, 32 insertions(+), 21 deletions(-) (limited to 'activesupport/lib') diff --git a/activesupport/lib/active_support/testing/assertions.rb b/activesupport/lib/active_support/testing/assertions.rb index a5d0e10fcf..411bb76a42 100644 --- a/activesupport/lib/active_support/testing/assertions.rb +++ b/activesupport/lib/active_support/testing/assertions.rb @@ -3,45 +3,46 @@ require 'active_support/core_ext/object/blank' module ActiveSupport module Testing module Assertions - # Test numeric difference between the return value of an expression as a result of what is evaluated - # in the yielded block. + # Test numeric difference between the return value of an expression as a + # result of what is evaluated in the yielded block. # # assert_difference 'Article.count' do - # post :create, :article => {...} + # post :create, article: {...} # end # # An arbitrary expression is passed in and evaluated. # # assert_difference 'assigns(:article).comments(:reload).size' do - # post :create, :comment => {...} + # post :create, comment: {...} # end # - # An arbitrary positive or negative difference can be specified. The default is +1. + # An arbitrary positive or negative difference can be specified. + # The default is 1. # # assert_difference 'Article.count', -1 do - # post :delete, :id => ... + # post :delete, id: ... # end # # An array of expressions can also be passed in and evaluated. # - # assert_difference [ 'Article.count', 'Post.count' ], +2 do - # post :create, :article => {...} + # assert_difference [ 'Article.count', 'Post.count' ], 2 do + # post :create, article: {...} # end # # A lambda or a list of lambdas can be passed in and evaluated: # # assert_difference lambda { Article.count }, 2 do - # post :create, :article => {...} + # post :create, article: {...} # end # # assert_difference [->{ Article.count }, ->{ Post.count }], 2 do - # post :create, :article => {...} + # post :create, article: {...} # end # # An error message can be specified. # - # assert_difference 'Article.count', -1, "An Article should be destroyed" do - # post :delete, :id => ... + # assert_difference 'Article.count', -1, 'An Article should be destroyed' do + # post :delete, id: ... # end def assert_difference(expression, difference = 1, message = nil, &block) expressions = Array(expression) @@ -60,33 +61,43 @@ module ActiveSupport end end - # Assertion that the numeric result of evaluating an expression is not changed before and after - # invoking the passed in block. + # Assertion that the numeric result of evaluating an expression is not + # changed before and after invoking the passed in block. # # assert_no_difference 'Article.count' do - # post :create, :article => invalid_attributes + # post :create, article: invalid_attributes # end # # An error message can be specified. # - # assert_no_difference 'Article.count', "An Article should not be created" do - # post :create, :article => invalid_attributes + # assert_no_difference 'Article.count', 'An Article should not be created' do + # post :create, article: invalid_attributes # end def assert_no_difference(expression, message = nil, &block) assert_difference expression, 0, message, &block end - # Test if an expression is blank. Passes if object.blank? is true. + # Test if an expression is blank. Passes if object.blank? is +true+. # - # assert_blank [] # => true + # assert_blank [] # => true + # assert_blank [[]] # => [[]] is not blank + # + # An error message can be specified. + # + # assert_blank [], 'this should be blank' def assert_blank(object, message=nil) message ||= "#{object.inspect} is not blank" assert object.blank?, message end - # Test if an expression is not blank. Passes if object.present? is true. + # Test if an expression is not blank. Passes if object.present? is +true+. + # + # assert_present({ data: 'x' }) # => true + # assert_present({}) # => {} is blank + # + # An error message can be specified. # - # assert_present({:data => 'x' }) # => true + # assert_present({ data: 'x' }, 'this should not be blank') def assert_present(object, message=nil) message ||= "#{object.inspect} is blank" assert object.present?, message -- cgit v1.2.3