aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/test
Commit message (Collapse)AuthorAgeFilesLines
* Require yaml for time_zone isolation test.Kasper Timm Hansen2015-07-111-0/+1
| | | | See 2f26f611 for more info.
* Add multiple expected calls to assert_called_with.Kasper Timm Hansen2015-07-101-0/+7
|
* Require yaml for time_with_zone isolation testPrem Sichanugrist2015-07-101-0/+1
| | | | | Same fix as 109e71d2bb6d2305a091fe7ea96d4f6e9c7cd52d but after mocha got removed in 2f28e5b6417fd4e5d6060983b36262737558b613.
* Reuse the same test for HWIA reverse_merge!Rafael Mendonça França2015-07-101-3/+1
|
* Merge pull request #20828 from Sirupsen/hash-indifferent-dup-default-procRafael Mendonça França2015-07-102-11/+37
|\ | | | | active_support/indifferent_access: fix not raising when default_proc does
| * test/hash: move lonely indifferent hash testSimon Eskildsen2015-07-102-11/+6
| |
| * active_support/indifferent_hash: dont raise on to_hash when default_proc raisesSimon Eskildsen2015-07-101-0/+14
| |
| * active_support/indifferent_hash: fix cloning default_proc on dupSimon Eskildsen2015-07-101-0/+17
| |
* | Removed use of mocha in active_supportRonak Jangir2015-07-108-65/+87
| |
* | Add method call assertions for internal use.Kasper Timm Hansen2015-07-081-0/+91
|/ | | | | Add `assert_called` and `assert_not_called` to boil down the boilerplate we need to write to assert methods are called certain number of times.
* remove bad test.Aaron Patterson2015-06-251-4/+0
|
* Escape HTML entities in JSON keysRafael Mendonça França2015-06-161-0/+7
| | | | Fixes CVE-2015-3226
* Merge pull request #20440 from repinel/fix-message-verifier-encoding-issueMatthew Draper2015-06-161-0/+1
|\ | | | | Fix the message verifier encoding issue
| * Fix the message verifier encoding issueRoque Pinel2015-06-141-0/+1
| | | | | | | | | | | | | | ```ruby verifier = ActiveSupport::MessageVerifier.new('secret') verifier.verify("\xff") # => ArgumentError: invalid byte sequence in UTF-8 ```
* | Fix inflector test by using dup inflections when it needs to be changedRoque Pinel2015-06-151-86/+68
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is not something that is failing at the moment, but can do it eventually. I had the issue with db62081 as the HEAD and with the following change: ``` --- a/activesupport/test/inflector_test.rb +++ b/activesupport/test/inflector_test.rb @@ -101,6 +101,7 @@ class InflectorTest < ActiveSupport::TestCase def test_acronyms ActiveSupport::Inflector.inflections do |inflect| inflect.acronym("API") + inflect.acronym("HTM") inflect.acronym("HTML") inflect.acronym("HTTP") inflect.acronym("RESTful") ``` I was expecting only `test_acronyms` to fail, but with a specific `seed` others were also failing: `ruby -w -I"lib:test" test/inflector_test.rb --seed 4313`. Now, `inflections` instance is duplicated on `setup` and restored on `teardown`. I decided to benchmark and check the impact of the patch and it seems to me to be fine. ``` Calculating ------------------------------------- without changes 1.000 i/100ms with setup dup 1.000 i/100ms with block dup 1.000 i/100ms ------------------------------------------------- without changes 0.817 (± 0.0%) i/s - 5.000 in 6.119916s with setup dup 0.784 (± 0.0%) i/s - 4.000 with block dup 0.797 (± 0.0%) i/s - 4.000 ``` Where `with setup dup` duplicates on setup for each test and `with block` duplicates for just for tests that actually modify `inflections`.
* Merge pull request #18365 from pocke/fix_datatime_compareAaron Patterson2015-06-122-0/+14
|\ | | | | DateTime#<=> return nil when compare to the invalid String as Time.
| * DateTime#<=> return nil when compare to the invalid String as Time.pocke2015-01-062-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | before: p Time.now == 'a' # => false p Time.now <=> 'a' # => nil require 'active_support' require 'active_support/core_ext' p Time.now == 'a' # => false p Time.now <=> 'a' # => invalid date (ArgumentError) and on ruby 2.2, Time.now == 'a' warning. warning: Comparable#== will no more rescue exceptions of #<=> in the next release. warning: Return nil in #<=> if the comparison is inappropriate or avoid such comparison. after: - Error handling. - Quiet warnings.
* | Fix for #20489 - ActiveSupport::Concern#class_methods affects parent classesKristijan Novoselic2015-06-121-0/+25
| |
* | Removed mocha stubbing in active_supportRonak Jangir2015-06-0710-309/+366
| |
* | Merge pull request #20362 from kddeisz/enumerable_pluckRafael Mendonça França2015-06-011-0/+9
|\ \ | | | | | | Allow Enumerable#pluck to take a splat.
| * | Allow Enumerable#pluck to take a splat.Kevin Deisz2015-05-291-0/+9
| | | | | | | | | | | | | | | | | | This allows easier integration with ActiveRecord, such that AR#pluck will now use Enumerable#pluck if the relation is loaded, without needing to hit the database.
* | | Fix a range of values for parameters of the Time#changeNikolay Kondratyev2015-06-011-0/+4
|/ / | | | | | | | | Passing 999999000 < `:nsec` < 999999999 and 999999 < `:usec` < 1000000 to change a time with utc_offset doesn't throw an `ArgumentError`.
* | Merge pull request #20267 from kaspth/fix-minitest-constant-clashingRafael Mendonça França2015-05-288-43/+45
|\ \ | | | | | | Avoid E constant clashing with Minitest defined version.
| * | Avoid E constant clashing with Minitest defined version.Kasper Timm Hansen2015-05-228-43/+45
| | | | | | | | | | | | | | | Minitest sets an E constant to an empty string to save GC time. This clashes with autoloading tests which define an E constant.
* | | Add Enumerable#pluck.Kevin Deisz2015-05-281-0/+5
| | | | | | | | | | | | Allows fetching the same values from arrays as from ActiveRecord associations.
* | | Merge pull request #20208 from gaurish/raise_on_missing_ordered_optionsRafael Mendonça França2015-05-261-0/+15
|\ \ \ | | | | | | | | | | | | Add bang version to OrderedOptions
| * | | Add bang version to OrderedOptionsGaurish Sharma2015-05-231-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | By: Aditya Sanghi(@asanghi) Gaurish Sharma(gaurish)
* | | | Remove `.superclass_delegating_accessor`. Refer #14271Akshay Vishnoi2015-05-241-122/+0
|/ / /
* | | Small stylistic tweaks for `Delegator#try` patchGodfrey Chan2015-05-191-15/+15
| | | | | | | | | | | | | | | | | | * Rename `ActiveSupport::Try` => `ActiveSupport::Tryable` * Include the modules inline * `private` indentation
* | | Patch `Delegator` to work with `#try`Nate Smith2015-05-191-0/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `Delegator` inherits from `BasicObject`, which means that it will not have `Object#try` defined. It will then delegate the call to the underlying object, which will not (necessarily) respond to the method defined in the enclosing `Delegator`. This patches `Delegator` with the `#try` method to work around the surprising behaviour. Fixes #5790
* | | Only define #positive? and #negative? on Ruby 2.2Rafael Mendonça França2015-05-191-6/+78
| | | | | | | | | | | | | | | | | | | | | The feature was accepted and added to Ruby 2.3+ so we don't need to define it again. See https://bugs.ruby-lang.org/issues/11151
* | | Merge pull request #20143 from vngrs/move_integer_positive_negative_to_numericRafael Mendonça França2015-05-192-12/+12
|\ \ \ | | | | | | | | | | | | Move Integer#positive? and Integer#negative? query methods to Numeric
| * | | Move Integer#positive? and Integer#negative? query methods to Numeric classMehmet Emin İNAÇ2015-05-132-12/+12
| |/ / | | | | | | | | | By this way Integer, Rational, Float, Fixnum, Bignum classes have the same behaviour
* / / remove warning from integer ext testyuuji.yaginuma2015-05-141-2/+2
|/ / | | | | | | | | | | | | | | | | this removes the following warning: ``` test/core_ext/integer_ext_test.rb:34: warning: ambiguous first argument; put parentheses or a space even after `-' operator test/core_ext/integer_ext_test.rb:38: warning: ambiguous first argument; put parentheses or a space even after `-' operator ```
* | Add Integer#positive? and Integer#negative? query methods in the vein of ↵David Heinemeier Hansson2015-05-131-0/+12
| | | | | | | | Fixnum#zero?
* | as/core_ext require's not usedAnkit Gupta2015-05-082-2/+0
| |
* | Put the assertion arguments in the right orderMatthew Draper2015-05-051-1/+1
| |
* | deep_dup method, remove old key from duplicated hash to avoid unnecessary pairsMehmet Emin İNAÇ2015-05-041-0/+6
| |
* | Improve ActiveSupport::TimeWithZone conversion to YAMLAndrew White2015-04-222-2/+54
| | | | | | | | | | | | | | | | | | | | | | Previously when converting AS::TimeWithZone to YAML it would be output as a UTC timestamp. Whilst this preserves the time information accurately it loses the timezone information. This commit changes that so that it is saved along with the time information. It also provides nicer encoding of AS::TimeZone instances themselves which previously embedded all of the data from the TZInfo records. Fixes #9183.
* | Refactor ActiveSupport::Timezone#strptimeAndrew White2015-04-221-0/+9
| | | | | | | | | | Make strptime behave more like parse when components are missing and share behavior between the two methods.
* | Add ActiveSupport::TimeZone#strptime.Paul A Jungwirth2015-04-221-0/+65
| | | | | | | | This makes it easier to parse user-inputted times as from a given time zone.
* | Allow AS::Cache::FileStore#clear without cache directoryKohei Suzuki2015-04-091-0/+6
| | | | | | | | | | | | Currently `Rails.cache.clear` raises Errno::ENOENT if it's run just after cloning a new Rails project. It should succeed without removing files or directories.
* | Merge pull request #19029 from iainbeeston/skipping-undefined-callbacksRafael Mendonça França2015-04-061-7/+25
|\ \ | | | | | | Raise ArgumentError if an unrecognised callback is skipped
| * | Raise ArgumentError if an unrecognised callback is skippedIain Beeston2015-04-031-7/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At present, if you skip a callback that hasn't been defined, activesupport callbacks silently does nothing. However, it's easy to mistype the name of a callback and mistakenly think that it's being skipped, when it is not. This problem even exists in the current test suite. CallbacksTest::SkipCallbacksTest#test_skip_person attempts to skip callbacks that were never set up. This PR changes `skip_callback` to raise an `ArgumentError` if the specified callback cannot be found.
* | | Merge pull request #19625 from strzibny/fix-test-rails-git-layoutMatthew Draper2015-04-031-2/+2
|\ \ \ | |/ / |/| | Do not depend on Rails git repository layout in ActiveSupport tests
| * | Do not depend on Rails git repository layout in ActiveSupport testsJosef Stribny2015-04-021-2/+2
| | |
* | | Require the extensions to tests pass in isolationRafael Mendonça França2015-03-301-0/+1
| | |
* | | Revert "Remove Array#inquiry"Rafael Mendonça França2015-03-301-0/+7
| | | | | | | | | | | | | | | | | | This reverts commit 9420de59f5b7f5ceac77e28e6c326ec145f71f80. Reason: Turns out we want to keep this method.
* | | Remove Array#inquiryRafael Mendonça França2015-03-271-7/+0
| | | | | | | | | | | | | | | We are promoting too much a feature that will not be widler used. So for now lets keep just the ArrayInquirer constructor.
* | | Add ActiveSupport::ArrayInquirer and Array#inquiryGeorge Claghorn2015-03-241-0/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Wrapping an array in an `ArrayInquirer` gives a friendlier way to check its string-like contents. For example, `request.variant` returns an `ArrayInquirer` object. To check a request's variants, you can call: request.variant.phone? request.variant.any?(:phone, :tablet) ...instead of: request.variant.include?(:phone) request.variant.any? { |v| v.in?([:phone, :tablet]) } `Array#inquiry` is a shortcut for wrapping the receiving array in an `ArrayInquirer`: pets = [:cat, :dog] pets.cat? # => true pets.ferret? # => false pets.any?(:cat, :ferret} # => true