aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/test
Commit message (Collapse)AuthorAgeFilesLines
* Privatize unneededly protected methods in Active Support testsAkira Matsuda2016-12-247-8/+8
|
* Fix Complex and Rational are duplicable?utilum2016-12-211-2/+2
| | | | See [this test](https://gist.github.com/utilum/78918f1b64f8b61ee732cb266db7c43a).
* Merge pull request #27366 from utilum/avoid_fixnum_warningMatthew Draper2016-12-181-1/+1
|\ | | | | Fix Fixnum deprecated warning in Ruby 2.4+
| * Fix Fixnum deprecated warning in Ruby 2.4+utilum2016-12-161-1/+1
| |
* | Merge pull request #27368 from matthewd/doubled-callbacksMatthew Draper2016-12-161-15/+68
|\ \ | |/ |/| Support double-yield inside an around callback
| * Support double-yield inside an around callbackMatthew Draper2016-12-151-15/+68
| | | | | | | | | | | | | | It's questionable whether this is a good thing -- it forces any later/ inner callback to handle multiple invocations, along with the actual wrapped action. But it worked prior to 871ca21f6a1d65c0ec78cb5a9641411e2210460b, so we shouldn't break it unintentionally.
* | Fix constantize edge case involving prepend, autoloading and name conflictsJean Boussier2016-12-143-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the following situation: ```ruby class Bar end module Baz end class Foo prepend Baz end class Foo::Bar end ``` Running `Inflector.constantize('Foo::Bar')` would blow up with a NameError. What is happening is that `constatize` was written before the introduction of prepend, and wrongly assume that `klass.ancestors.first == klass`. So it uses `klass.ancestors.inject` without arguments, as a result a prepended module is used in place of the actual class.
* | fix new warning in ruby 2.4yuuji.yaginuma2016-12-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes the following warning. ``` test/caching_test.rb:986: warning: parentheses after method name is interpreted as test/caching_test.rb:986: warning: an argument list, not a decomposed argument test/cases/adapters/mysql2/reserved_word_test.rb:146: warning: parentheses after method name is interpreted as test/cases/adapters/mysql2/reserved_word_test.rb:146: warning: an argument list, not a decomposed argument ``` Ref: https://github.com/ruby/ruby/commit/65e27c8b138d6959608658ffce2fa761842b8d24
* | change return value of `duplicable?` with Ruby 2.4+yuuji.yaginuma2016-12-131-2/+7
| | | | | | | | | | | | | | `NilClass`, `FalseClass`, `TrueClass`, `Symbol` and `Numeric` can dup with Ruby 2.4+. Ref: https://bugs.ruby-lang.org/issues/12979
* | :nail_care:Akira Matsuda2016-12-131-2/+1
| |
* | nil, true, 1, etc. don't raise on #dup since Ruby 2.4Akira Matsuda2016-12-131-1/+1
|/ | | | https://bugs.ruby-lang.org/issues/12979
* Exclude singleton classes from `subclasses` and `descendants`Sean Griffin2016-12-011-0/+10
| | | | | | | | This behavior changed in Ruby starting with 2.3.0, as a result of https://bugs.ruby-lang.org/issues/11360. This results in a change in behavior of these methods which is likely undesirable. Fixes #27238
* Treat combined durations as a single unitSean Griffin2016-11-291-0/+11
| | | | | | | | | | | | Prior to this commit, `3.months - 3.months` would result in a duration that has the "parts" of `[[:months, 3], [:months, -3]]`. This would mean that it was subtly different than `2.months - 2.months`. When applied to a time, the date might actually change if the resulting day doesn't exist however many months in the future, even though in both cases we just wanted to add `0`, which should always be an identity operation. With this change, we now store the parts as a hash, so `3.months - 3.months` is simply stored as `{ months: 0 }`.
* use public Module#include instead of send :includeyuuji.yaginuma2016-11-271-1/+1
| | | | Follow up to #18767
* Merge pull request #26874 from tgxworld/fix_broadcast_loggerMatthew Draper2016-11-251-3/+19
|\ | | | | `Broadcast#silence` breaks custom loggers that do not include `Logg…
| * `Broadcast#silence` breaks custom loggers that does not include `LoggerSilence`.Guo Xiang Tan2016-10-241-3/+19
| |
* | ✂️ needless lines beneath private.Kasper Timm Hansen2016-11-206-6/+0
| |
* | Move tests to a module, include in subclasses, style lintingJon Moss2016-11-201-188/+195
| | | | | | | | | | | | | | | | This fixes an error where the test runner would try and run XMLMiniEngineTest like a normal test class, except it's abstract. Now, to circumvent this, we don't include any of the actual tests in XMLMiniEngineTest; they are wrapped in a module that is included in subclass when they inherit from XMLMiniEngineTest. Pretty neat, huh?
* | Create XMLMiniEngineTest; base class for all testsJon Moss2016-11-207-63/+33
| |
* | Code styling cleanupJon Moss2016-11-207-152/+162
| |
* | Create `CommonXMLMiniAdapterTest`; common tests moduleJon Moss2016-11-207-916/+279
| | | | | | | | | | | | Created a new module (a la Action Cable subscription adapter's test suite) to be included in all sub class test to ensure compatability and reduce duplicated code.
* | Do not include `ActiveSupport` into test classesJon Moss2016-11-193-33/+27
| | | | | | | | | | | | | | | | | | | | | | Will help get rid of errors like the following: ``` 1) Error: JDOMEngineTest#test_order=: ArgumentError: wrong number of arguments (0 for 1) /Users/jon/code/rails/rails/activesupport/lib/active_support/core_ext/module/attribute_accessors.rb:106:in `test_order=' ```
* | Call fallback exception handlers with the right exceptionSean Griffin2016-11-171-1/+1
| | | | | | | | | | | | | | | | The issue presented in #26246 showed a deeper underlying problem. When we fell back to the exception handler for an exceptions cause, we were calling that handler with the outer raised exception. This breaks the calling code's expectations, especially if the exception has methods on it behond those from `StandardError`.
* | Merge pull request #27035 from rails/remove-active-support-deprecationsAndrew White2016-11-149-457/+0
|\ \ | | | | | | Remove Active Support deprecations
| * | Remove deprecated separator argument from parameterizeAndrew White2016-11-142-34/+0
| | |
| * | Remove deprecated method Numeric#to_formatted_sAndrew White2016-11-141-6/+0
| | |
| * | Remove deprecated method alias_method_chainAndrew White2016-11-141-215/+0
| | |
| * | Remove deprecated constant MissingSourceFIleAndrew White2016-11-141-8/+0
| | |
| * | Remove deprecated Module.qualified_const_get/set/defined?Andrew White2016-11-141-118/+0
| | |
| * | Remove deprecated :prefix optionAndrew White2016-11-132-32/+0
| | |
| * | Remove deprecated new_from_hash_copying_defaultAndrew White2016-11-131-7/+0
| | |
| * | Remove deprecated local_constantsAndrew White2016-11-131-10/+0
| | |
| * | Remove deprecated namespaced_keyAndrew White2016-11-131-6/+0
| | |
| * | Remove deprecated set_cache_valueAndrew White2016-11-131-9/+0
| | |
| * | Remove deprecated escape_keyAndrew White2016-11-131-6/+0
| | |
| * | Remove deprecated key_file_pathAndrew White2016-11-131-6/+0
| | |
* | | Revert "Merge pull request #25811 from oss92/to_sentence_fallback_string"Rafael Mendonça França2016-11-141-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | This reverts commit bad3a120f1690f393d8f6204b3ceee60f0ce707b, reversing changes made to 2384317465ccb1dfca456a2b7798714b99f32711. Reason: Adding a new option in the API for something that can be done with a `#presence` check could do.
* | | Remove warning from access to Bignum class, 2**64 is already a known bignum ↵Vipul A M2016-11-131-1/+0
|/ / | | | | | | value. See also http://patshaughnessy.net/2014/1/9/how-big-is-a-bignum for smallest bignum value
* | Fix typo in constant referenceAndrew White2016-11-131-1/+1
| |
* | It's a NAN not InfinityAndrew White2016-11-131-1/+1
| |
* | Use literal values in assertionsAndrew White2016-11-131-6/+4
| | | | | | | | | | Using the method you're testing to generate expected values can lead to bugs being masked.
* | Merge pull request #26933 from prathamesh-sonpatki/fix-26877Andrew White2016-11-131-0/+22
|\ \ | | | | | | Fix an issue with JSON encoding of "Infinity" and "NaN" values
| * | Fix an issue with JSON encoding of "Infinity" and "NaN" valuesPrathamesh Sonpatki2016-10-301-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - When `as_json` returns `Infinity` or `NaN` as the value of any of the key, we don't used to call `as_json` on it as it was treated as primitive. - This used to pass `Infinity` or `NaN` to `JSON.generate` and Ruby used to throw an error for `Infinity/NaN not allowed in JSON.` - This patch changes the code to call `as_json` on these primitives so that they are converted to proper values before being passed to `JSON.generate`. - Fixes #26877.
* | | Tweaking some test data due to sprintf behavior change in 2.4Akira Matsuda2016-11-051-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | 2.3: sprintf('%0.1f', 5.55) #=> "5.5" 2.4: sprintf('%0.1f', 5.55) #=> "5.6" see: https://github.com/ruby/ruby/commit/6ed8c79ddb11ccfb580bb0a22b22cc1362250255 and https://github.com/ruby/ruby/commit/295f60b94d5ff6551fab7c55e18d1ffa6a4cf7e3
* | | Ensure duration parsing is consistent across DST changesAndrew White2016-10-311-0/+31
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously `ActiveSupport::Duration.parse` used `Time.current` and `Time#advance` to calculate the number of seconds in the duration from an arbitrary collection of parts. However as `advance` tries to be consistent across DST boundaries this meant that either the duration was shorter or longer depending on the time of year. This was fixed by using an absolute reference point in UTC which isn't subject to DST transitions. An arbitrary date of Jan 1st, 2000 was chosen for no other reason that it seemed appropriate. Additionally, duration parsing should now be marginally faster as we are no longer creating instances of `ActiveSupport::TimeWithZone` every time we parse a duration string. Fixes #26941.
* / Add more rubocop rules about whitespacesRafael Mendonça França2016-10-2935-960/+960
|/
* Merge pull request #26843 from denisovlev/strptime_timestampsRafael França2016-10-221-0/+18
|\ | | | | Fix `ActiveSupport::TimeZone#strptime` cannot parse timestamps (%Q, %s)
| * Fix `ActiveSupport::TimeZone#strptime` cannot parse timestamps (%Q, %s)denisovlev2016-10-211-0/+18
| |
* | Skip test that depends on RubyVM when it is not available (JRuby).Charles Oliver Nutter2016-10-211-0/+2
|/
* Merge pull request #26839 from renuo/fix-missing-nsec-transferAndrew White2016-10-211-1/+3
|\ | | | | Fix copy_time_to: Copy nsec instead of usec