aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/test/core_ext
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #15276 from kuldeepaggarwal/fix-array-toRafael Mendonça França2014-05-231-0/+2
|\ | | | | Array#to now accept negative position also.
| * revert 96525d63Kuldeep Aggarwal2014-05-231-0/+2
| | | | | | | | `Array#to` is working for negative position
* | add test cases for negative position in Array#fromKuldeep Aggarwal2014-05-231-0/+2
|/
* Merge pull request #10887 from sakuro/deep_transform_keys_in_nested_arraysRafael Mendonça França2014-05-201-0/+22
|\ | | | | | | | | | | | | Hash#deep_*_keys(!) recurse into nested arrays. Conflicts: activesupport/CHANGELOG.md
| * Hash#deep_*_keys(!) recurse into nested arrays.OZAWA Sakuro2013-06-081-0/+22
| | | | | | | | | | | | | | | | | | | | | | Following methods now recursively transform nested arrays, too. * Hash#deep_transform_keys * Hash#deep_transform_keys! * Hash#deep_stringify_keys * Hash#deep_stringify_keys! * Hash#deep_symbolize_keys * Hash#deep_symbolize_keys!
* | Fix confusing exception in ActiveSupport delegationVladimir Yarotsky2014-05-201-1/+1
| |
* | Update require in `array_ext_test.rb`wendi2014-05-131-3/+2
| | | | | | | | Removed `FIMXE` tag to require necessary file but not the whole core_ext
* | Update and add tests in array_ext_test.rbwendi2014-05-131-2/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Fix `test_to_with_instruct` typo to `test_to_xml_with_instruct` - Rename `test_to_xml` to `test_to_xml_with_hash_elements` to make test name more specific. - Add `test_to_xml_with_non_hash_elements` and `test_to_xml_with_non_hash_different_type_elements` `to_xml` behaves different when containing elements are same and different types. - Add `test_to_xml_with_indent_set`
* | Merge pull request #12746 from coreyward/masterRafael Mendonça França2014-05-071-4/+14
|\ \ | | | | | | | | | Fix Hash#deep_merge bug and improve documentation — resolves #12738
| * | Fix Hash#deep_merge bug and improve documentation — resolves #12738Corey Ward2013-12-091-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | Previously merging into a hash with a falsy value would not result in the merge-block being called. The fix is simply to check for presence of the key in the hash. The documentation example for `deep_merge` now appropriately demonstrates what a deep merge does.
* | | Merge pull request #14949 from bogdan/empty-hash-array-parameterizationRafael Mendonça França2014-05-041-3/+5
|\ \ \ | | | | | | | | [Fixes #14948] Hash#to_query: right serialization for empty hash and array
| * | | [Fixes #14948] Hash#to_query: Changed a way how empty hash and empty array ↵Bogdan Gusiev2014-05-031-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | are serialized Empty Hash or Array should not present in serialization result {a: []}.to_query # => "" {a: {}}.to_query # => "" For more info see #14948.
* | | | Remove deprecated file(`active_support/core_ext/object/to_json.rb`) and its ↵Kuldeep Aggarwal2014-05-041-9/+0
|/ / / | | | | | | | | | test case.
* | | Merge pull request #14801 from kuldeepaggarwal/fix-string-inflectionRafael Mendonça França2014-04-221-0/+5
|\ \ \ | | | | | | | | Fix inconsistent behavior from String#pluralize
| * | | Fix inconsistent behavior from String#pluralizeKuldeep Aggarwal2014-04-191-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before: When calling String#pluralize with count=1 then it returned same string, but with count other than 1, returned new string. After: String#pluralize always return a new string. => Prevent mutation of a string inadvertently.
* | | | "subhash" --> "sub-hash"Akshay Vishnoi2014-04-191-1/+1
|/ / /
* | | Fix inconsistent behavior from String#first/#lastErnie Miller2014-04-181-0/+12
| | | | | | | | | | | | | | | | | | | | | While calling String#first or String#last with zero or a Fixnum < the string's length returns a new string, a Fixnum >= the string's length returns the string itself. This inconsistency can lead to inadvertent mutation of a string.
* | | Object#duplicable?Akshay Vishnoi2014-04-161-16/+9
| | | | | | | | | | | | | | | | | | 1. Improve tests 2. Remove unnecessary constant 3. Add docs for BigDecimal#duplicable?
* | | Move tests for deep_dup and duplicable to object directoryAkshay Vishnoi2014-04-132-0/+0
| | |
* | | Merge pull request #14646 from deivid-rodriguez/provide_byebug_by_defaultRafael Mendonça França2014-04-111-1/+1
|\ \ \ | | | | | | | | Improve debugging support
| * | | Keep debugger support only for rubies < 2.0.0David Rodríguez de Dios2014-04-081-1/+1
| | | |
* | | | Merge branch 'master' into rm-uuid-fixturesRafael Mendonça França2014-04-101-0/+7
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: activerecord/CHANGELOG.md activesupport/CHANGELOG.md
| * | | | Fixed problem where `1.day.eql?(1.day)` is falseEmily Dobervich2014-04-081-0/+7
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes: 1.second.eql?(1.second) #=> false The new `eql?` requires that `other` is an `ActiveSupport::Duration`. This requirement makes `ActiveSupport::Duration`'s behavior consistent with other numeric types in Ruby. 1.eql?(1.0) #=> false 1.0.eql?(1) #=> false 1.second.eql?(1) #=> false (was true) 1.eql?(1.second) #=> false { 1 => "foo", 1.0 => "bar" } #=> { 1 => "foo", 1.0 => "bar" } { 1 => "foo", 1.second => "bar" } # now => { 1 => "foo", 1.second => "bar" } # was => { 1 => "bar" } And though the behavior here hasn't changed, for reference: 1 == 1.0 #=> true 1.0 == 1 #=> true 1 == 1.second #=> true 1.second == 1 #=> true
* | | | Merge pull request #12016 from roderickvd/uuid_fixesRafael Mendonça França2014-04-041-0/+28
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Auto-generate stable fixture UUIDs on PostgreSQL Conflicts: activerecord/CHANGELOG.md activerecord/lib/active_record/fixtures.rb activerecord/test/cases/adapters/postgresql/uuid_test.rb activesupport/CHANGELOG.md
| * | | Auto-generate stable fixture UUIDs on PostgreSQL.Roderick van Domburg2014-01-071-0/+28
| | | | | | | | | | | | | | | | Fixes: #11524
* | | | Merge pull request #14598 from rajcybage/assert_dprecated_for_as_test_caseRafael Mendonça França2014-04-041-4/+4
|\ \ \ \ | | | | | | | | | | Active support instead of ActiveSupport::Deprecation.silence we can use assert_deprecated
| * | | | Active support instead of ActiveSupport::Deprecation.silence we can use ↵Rajarshi Das2014-04-041-4/+4
| | | | | | | | | | | | | | | | | | | | assert_deprecated
* | | | | Move require to actual fileCarlos Antonio da Silva2014-04-021-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | Change to require all active_support/deprecation since that's the actual entry point for the deprecation methods.
* | | | | Use asert_deprecatedRafael Mendonça França2014-04-021-3/+5
| | | | |
* | | | | Make AS::SafeBuffer#prepend act like String#prependPavel Pravosud2014-03-311-0/+22
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | Make `#prepend` method modify instance in-place and return self instead of just returning modified value. That is exactly what `#prepend!` method was doing previously, so it's deprecated from now on.
* | | | HashWithIndifferentAccess better respects #to_hashPeter Jaros2014-03-281-0/+40
| | | | | | | | | | | | | | | | | | | | | | | | In particular, `.new`, `#update`, `#merge`, `#replace` all accept objects which respond to `#to_hash`, even if those objects are not Hashes directly.
* | | | Deprecate Class#superclass_delegating_accessorAkshay Vishnoi2014-03-201-6/+28
| | | |
* | | | Go with #presence_in instead of #present_in -- it doesnt sound quite as ↵David Heinemeier Hansson2014-02-241-3/+3
| | | | | | | | | | | | | | | | good, but the closer relationship to #presence over #present is ultimately worth it
* | | | Introduce Concern#class_methods and Kernel#concernJeremy Kemper2014-02-232-14/+56
| | | |
* | | | Use assert_nil instead as its clearer about what the return is expected to beDavid Heinemeier Hansson2014-02-181-1/+1
| | | |
* | | | Added Object#present_in to simplify value whitelistingDavid Heinemeier Hansson2014-02-181-0/+5
| | | |
* | | | Fix to_query with empty arrays tooRafael Mendonça França2014-02-061-0/+2
| | | |
* | | | Refatoring the method to avoid shot-circuit returnRafael Mendonça França2014-02-051-0/+2
| | | |
* | | | Test with a blank valueRafael Mendonça França2014-02-051-2/+2
| | | |
* | | | Move test to the right fileRafael Mendonça França2014-02-052-11/+9
| | | |
* | | | Fixed "Hash#to_param confused by empty hash values #13892"Hincu Petru2014-02-051-0/+11
| | | |
* | | | fix interplay of humanize and html_escapeSean Walbran2014-02-051-0/+4
| | | |
* | | | Return sized enumerator from Enumerable#index_byMarc-Andre Lafortune2014-02-051-0/+4
| | | |
* | | | Remove obsolete test (builtin group_by is now used)Marc-Andre Lafortune2014-02-051-20/+0
| | | |
* | | | Remove obsolete line (was needed for Ruby 1.8.7 support)Marc-Andre Lafortune2014-02-051-1/+0
| | | |
* | | | Assert the file is deprecatedRafael Mendonça França2014-02-011-1/+1
| | | |
* | | | Remove BigDecimal#to_dDavid Celis2014-02-011-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | This was backported for Ruby 1.8 support and is no longer needed. Signed-off-by: David Celis <me@davidcel.is>
* | | | Don't require BigDecimal serialization extensionDavid Celis2014-02-012-8/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rails currently provides an extension to BigDecimal that redefines how it is serialized to YAML. However, as noted in #12467, this does not work as expected. When ActiveSupport is required, BigDecimal YAML serialization does not maintain the object type. It instead ends up serializing the number represented by the BigDecimal itself which, when loaded by YAML later, becomes a Float: ```ruby require 'yaml' require 'bigdecimal' yaml = BigDecimal('13.37').to_yaml YAML.load(yaml).class require 'active_support/all' yaml = BigDecimal('13.37').to_yaml YAML.load(yaml).class ``` @tenderlove posits that we should deprecate the custom BigDecimal serialization and let Ruby handle it. For the time being, users who require this serialization for backwards compatibility can manually `require 'active_support/core_ext/big_decimal/yaml_conversions'`. This will close #12467 and deprecate the custom BigDecimal#to_yaml. Signed-off-by: David Celis <me@davidcel.is>
* | | | Maintain the current timezone in wrap_with_time_zoneAndrew White2014-01-311-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Extend the solution from the fix for #12163 to the general case where `Time` methods are wrapped with a time zone. Fixes #12596.
* | | | Make ActiveSupport::TimeWithZone#xmlschema consistentAndrew White2014-01-261-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | Both Time#xmlschema and DateTime#xmlschema can accept nil values for the fraction_digits parameter. This commit makes this so for TimeWithZone values as well.