aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/test
Commit message (Collapse)AuthorAgeFilesLines
...
* | | 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
* | | Make sure Array#to_sentence always returns a StringDavid Cornu2015-03-231-0/+6
| | |
* | | Remove alias for `i_suck_and_my_tests_are_order_dependent`.Guo Xiang Tan2015-03-241-11/+0
| | |
* | | Deprecate alias_method_chain in favour of Module#prependKir Shatrov2015-03-221-95/+125
| | | | | | | | | …as discussed #19413
* | | Merge pull request #19413 from kirs/replace-alias_method_chainRafael Mendonça França2015-03-201-2/+2
|\ \ \ | | | | | | | | Replace occurences of alias_method_chain with their Module#prepend counterpart
| * | | Use Module#prepend instead of alias_method_chainKir Shatrov2015-03-201-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Thanks @fbernier for suggestion! <3 At this moment we can use Module#prepend in all all cases except of Range because of the bug [1] in MRI 2.2 [1] https://bugs.ruby-lang.org/issues/10847
* | | | Test files should be named *_test.rb to be executed via rake taskAkira Matsuda2015-03-201-0/+0
|/ / /
* | | Skip the `:race_condition_ttl` branch if the option is 0 or nil. This fixes ↵Matt Wilde2015-03-111-8/+20
| | | | | | | | | | | | an issue with the redis cache, where this code will sometimes throw an error out of SETEX when passing 0 as the `expires_at`.
* | | Revert "Take DST into account when locating TimeZone from Numeric."Andrew White2015-03-091-7/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reverting this as it's not the implementation that we would like it to be. This is being used inside of ActiveSUpport::TimeZone[] and it's unaware of the context in which to find the timezone period so the timezone found changes depending on whether DST is in effect for the current period. This means that `'2001-01-01'.in_time_zone(-9)` changes from winter/summer even though it's the same date that we're trying to convert. Since finding timezones by numeric offsets is a bit hit and miss we should introduce a new API for finding them which supplies the date context in which we want to search and we should probably also deprecate the finding of timezones via the [] method, though this needs further discussion. This reverts commit 2cc2fa3633edd96773023c6b09d07c7b9d9b841d.
* | | Merge pull request #19221 from matthewd/random-testsMatthew Draper2015-03-061-5/+0
|\ \ \ | | | | | | | | Run all our tests in random order
| * | | Revert "Leave all our tests as order_dependent! for now"Matthew Draper2015-03-061-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 2f52f969885b2834198de0045748436a4651a94e. Conflicts: actionmailer/test/abstract_unit.rb actionview/test/abstract_unit.rb activemodel/test/cases/helper.rb activerecord/test/cases/helper.rb activesupport/test/abstract_unit.rb railties/test/abstract_unit.rb
* | | | `number_to_percentage` and `precision: 0` work with `NAN` and `INFINITY`.Yves Senn2015-03-061-0/+4
|/ / / | | | | | | | | | Closes #19227.
* | | Take DST into account when locating TimeZone from Numeric.Yasyf Mohamedali2015-03-031-0/+7
| | | | | | | | | | | | | | | | | | When given a specific offset, use the first result found where the total current offset (including any periodic deviations such as DST) from UTC is equal.
* | | Merge pull request #19173 from robin850/rbx-buildRafael Mendonça França2015-03-022-0/+5
|\ \ \ | | | | | | | | Improve the Rubinius build
| * | | Skip the failing tests on Rubinius for nowRobin Dupret2015-03-022-0/+5
| | | |
* | | | Move Array#without from Grouping to Access concern and add dedicated test ↵David Heinemeier Hansson2015-03-021-0/+4
| | | | | | | | | | | | | | | | (relates to #19157)
* | | | Remove not needed .tapArthur Neves2015-03-021-1/+1
| | | |
* | | | Do not output in the consoleRafael Mendonça França2015-03-021-1/+1
|/ / / | | | | | | | | | [Robin Dupret + Rafael Mendonça França]
* | | Use include? instead of in? for Enumerable#without.Juanito Fatas2015-03-021-1/+0
| | | | | | | | | | | | [egilburg]
* | | Include object inclusion for enumerable test.Juanito Fatas2015-03-021-0/+1
| | |
* | | Add Enumerable#withoutTodd Bealmear2015-03-011-0/+7
| | |
* | | Merge pull request #19076 from nygrenh/truncate-words-fixRafael Mendonça França2015-02-251-0/+9
|\ \ \ | | | | | | | | | | | | Fix a backtracking problem in String#truncate_words
| * | | Fix a backtracking problem in String#truncate_wordsHenrik Nygren2015-02-251-0/+9
| | | | | | | | | | | | | | | | Fixes #19070.
* | | | Instrument read_multi.Kasper Timm Hansen2015-02-211-0/+9
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds `read_multi` instrumentation formatted as: Caches multi read: - views/david/2/4184ab71db6849621a4d8820fcd2c0ad - views/david/2/4184ab71db6849621a4d8820fcd2c0ad - views/david/3/4184ab71db6849621a4d8820fcd2c0ad - views/david/3/4184ab71db6849621a4d8820fcd2c0ad
* | | Properly dump primitive-like AS::SafeBuffer strings as YAMLGodfrey Chan2015-02-111-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `coder.represent_scalar` means something along the lines of "Here is a quoted string, you can just add it to the output", which is not the case here. It only works for simple strings that can appear unquoted in YAML, but causes problems for e.g. primitive-like strings ("1", "true"). `coder.represent_object` on the other hand, means that "This is the Ruby-object representation for this thing suitable for use in YAML dumping", which is what we want here. Before: YAML.load ActiveSupport::SafeBuffer.new("Hello").to_yaml # => "Hello" YAML.load ActiveSupport::SafeBuffer.new("true").to_yaml # => true YAML.load ActiveSupport::SafeBuffer.new("false").to_yaml # => false YAML.load ActiveSupport::SafeBuffer.new("1").to_yaml # => 1 YAML.load ActiveSupport::SafeBuffer.new("1.1").to_yaml # => 1.1 After: YAML.load ActiveSupport::SafeBuffer.new("Hello").to_yaml # => "Hello" YAML.load ActiveSupport::SafeBuffer.new("true").to_yaml # => "true" YAML.load ActiveSupport::SafeBuffer.new("false").to_yaml # => "false" YAML.load ActiveSupport::SafeBuffer.new("1").to_yaml # => "1" YAML.load ActiveSupport::SafeBuffer.new("1.1").to_yaml # => "1.1" If we ever want Ruby to behave more like PHP or JavaScript though, this is an excellent trick to use ;)