aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/test
Commit message (Collapse)AuthorAgeFilesLines
* Fixed duplicate subscribers in ActiveSupport::SubscriberDennis Schoen2014-05-091-6/+19
| | | | | ActiveSupport::Subscriber no longer creates multiple subscribers when you redefine a method.
* 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.
* | several enhancements to humanize [closes #12288]Xavier Noria2014-05-061-3/+5
| | | | | | | | | | | | | | | | | | | | * Strips leading underscores. * Changes some unnecessary gsub!s to sub!s. * Replaces some anchors ^, $ with \A, \z. * Documents that human inflection rules are applied. * Documents that words are downcased except acronyms. * Adds an example with an acronym. * Rewords docs.
* | 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.
* | Warning removed for missmatched indentationArun Agrawal2014-04-261-2/+2
| |
* | 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.
* | | Merge pull request #14805 from akshay-vishnoi/structure-changeAndrew White2014-04-191-0/+0
|\ \ \ | | | | | | | | multibyte_conformance.rb --> multibyte_conformance_test.rb
| * | | multibyte_conformance.rb --> multibyte_conformance_test.rbAkshay Vishnoi2014-04-191-0/+0
| |/ /
* / / "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
| | |
* | | Add more test case for #demodulize, Improve documentationAkshay Vishnoi2014-04-111-0/+1
| | |
* | | Merge branch 'master' into rm-uuid-fixturesRafael Mendonça França2014-04-102-1/+65
|\ \ \ | | | | | | | | | | | | | | | | | | | | Conflicts: activerecord/CHANGELOG.md activesupport/CHANGELOG.md
| * \ \ Merge pull request #11656 from emre-basala/xml_mini_testRafael Mendonça França2014-04-101-1/+58
| |\ \ \ | | | | | | | | | | Add tests to ActiveSupport:XmlMini to_tag method
| | * | | Add tests to ActiveSupport:XmlMini to_tag methodemre-basala2013-08-071-1/+58
| | | | |
| * | | | 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
| | | |
* | | | fix `number_to_percentage` with `Float::NAN`, `Float::INFINITY`.Yves Senn2014-03-171-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Closes #14405. This is a follow-up to 9e997e9039435617b6a844158f5437e97f6bc107 to restore the documented behavior.
* | | | Fix #to_json for BasicObject EnumerablesSammy Larbi2014-03-141-10/+33
| | | |
* | | | Merge pull request #14244 from arthurnn/orderd_hash_select_fixSantiago Pastorino2014-03-081-1/+4
|\ \ \ \ | | | | | | | | | | Fix OrderedHash.select to return self instance.
| * | | | Fix OrderedHash.select to return self instance.Arthur Neves2014-03-071-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On ruby 2.1.1 the behavior of .select and .reject has changed. They will return a Hash new instance, so we need to override them to keep the instance object class.
* | | | | Revert "Merge pull request #14269 from arthurnn/expanded_key_array"Godfrey Chan2014-03-041-5/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 475c96589ca65282e1a61350271c2f83f0d4044f, reversing changes made to 705915ab5cf24430892107764b0050c07e1df583. We decided that this is not worth busting everyone's cache as this seems like a very unlikely problem. The problem only occurs when the user is 1) not using a namespace, or 2) using the same namesapce for different *kinds* of cache items. The recommended "fix" is to put those cache items into their own namspace: id = 1 Rails.cache.fetch(id, namespace: "user"){ User.find(id) } ids = [1] Rails.cache.fetch(ids, namespace: "users"){ User.find(ids) } See the discussion on #14269 for details.
* | | | | Cache key should be different when is Array.Arthur Neves2014-03-031-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `cache.fetch(['foo'])` and `cache.fetch('foo')` should generate different cache keys as they are not equivalents. [related #8615] [related #8614]
* | | | | Add a comment to ensure that a test won't be removed [ci skip]Robin Dupret2014-03-031-1/+1
|/ / / / | | | | | | | | | | | | | | | | | | | | The 'cow' => 'kine' inflection has gone with c300dca9 but it should not be removed from the tested irregularities since it ensures that inflections work with words that do not begin with the same letters.
* | | | Return a hash rather than array from fetch_multiParker Selbert2014-02-261-8/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The current implementation of `fetch_multi` returns an array and has no means to easily backtrack which names yielded which results. By changing the return value to a Hash we retain the name information. Hash#values can be used on the response if only the values are needed.
* | | | 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-233-16/+64
| | | |
* | | | 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
| | | |
* | | | travel_to travels back and re-raises if the block raisesXavier Noria2014-02-181-0/+12
| | | |
* | | | adds a missing travel backXavier Noria2014-02-181-4/+4
| | | |
* | | | time helpers honor the application time zone when passed a dateXavier Noria2014-02-181-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rails applications are expected to be always aware of the application time zone. To be consistent with that contract, we have to assume that a bare date passed to time helpers is a date in the application time zone, not in the system time zone. The system time zone is irrelevant, we should totally ignore it. For example, travel_to user.birth_date + 40.years should make that user be 40th years old regardless of the system time zone. Without this patch that may not be true.
* | | | Fixed an issue where reloading of removed dependencies would cause an ↵Noah Lindner2014-02-081-0/+12
| | | | | | | | | | | | | | | | unexpected circular dependency error
* | | | 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
| | | |