aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/test
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | Publish AS::Executor and AS::Reloader APIsMatthew Draper2016-03-022-0/+161
|/ / / | | | | | | | | | | | | | | | These should allow external code to run blocks of user code to do "work", at a similar unit size to a web request, without needing to get intimate with ActionDipatch.
* | | Merge pull request #23616 from piotrj/issue_23609_logger_broadcast_silencingRafael Mendonça França2016-02-241-0/+44
|\ \ \ | | | | | | | | | | | | Fix logger silencing for broadcasted loggers
| * | | Fix logger silencing for broadcasted loggersPiotr Jakubowski2016-02-111-0/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix #23609 Commit 629efb6 introduced thread safety to logger silencing but it didn't take into account the fact that the logger can be extended with broadcasting to other logger. This commit introduces local_level to broadcasting Module which enables broadcasted loggers to be properly silenced.
* | | | remove args from assert_nothing_raised in testsTara Scherner de la Fuente2016-02-223-4/+4
| | | |
* | | | Merge pull request #23776 from chi6rag/masterSantiago Pastorino2016-02-211-0/+4
|\ \ \ \ | | | | | | | | | | Adding test to verify the last week when the year is leap
| * | | | Adding test to verify the last week when the year is leapChirag Aggarwal2016-02-201-0/+4
| | | | | | | | | | | | | | | | | | | | Fixing failing specification for verifying the last week when the year is leap
* | | | | Merge pull request #23695 from kaspth/remove-automatic-collection-cachingKasper Timm Hansen2016-02-201-9/+0
|\ \ \ \ \ | | | | | | | | | | | | Make collection caching explicit.
| * | | | | Revert "Instrument read_multi".Kasper Timm Hansen2016-02-201-9/+0
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reevaluating the log output generated from this instrumentation, we've found that it wasn't all that useful in practice. ``` Caches multi read: - views/david/2/4184ab71db6849621a4d8820fcd2c0ad - views/david/2/4184ab71db6849621a4d8820fcd2c0ad - views/david/3/4184ab71db6849621a4d8820fcd2c0ad - views/david/3/4184ab71db6849621a4d8820fcd2c0ad ``` If rendering many templates the output is inscrutable, and it's impossible to see how many cache misses there were. Revert ca6aba7f30 and implement a better way later.
* | | | | Make benchmark('something', silence: true) actually workDavid Heinemeier Hansson2016-02-201-0/+14
| | | | |
* | | | | Dependencies clean upSruli Rapps2016-02-191-10/+3
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cleans up four items I came across in ActiveSupport::Dependencies: - DependenciesTest# test_dependency_which_raises_exception_isnt_added_to_loaded_set: Fixes current implementation which will pass no matter what since the filepath is never added to "loaded" or "history" without being expanded first. - Remove DependenciesTest#test_unhook. Seems leftover from when alias_method_chain was used in Loadable and ModuleConstMissing. The test will always pass since Module never responds to those methods - WatchStack#new_constants documentation: update self to @stack. Looks like self was leftover from when WatchStack inherited from Hash - Remove ActiveSupport namespace from call to Dependencies.constant_watch_stack.watching? since the namespace is not needed, Dependencies is called two other times in the same method without it (even on the same line) and it brings the line to within 80 characters
* | | | Add `#on_weekday?` method to `Date`, `Time`, and `DateTime`.Vipul A M2016-02-151-0/+10
| | | |
* | | | Merge pull request #23596 from afn/issue-23058Aaron Patterson2016-02-101-2/+2
|\ \ \ \ | | | | | | | | | | Converting backtrace to strings before calling set_backtrace
| * | | | Converting backtrace to strings before calling set_backtraceTony Novak2016-02-101-2/+2
| | | | | | | | | | | | | | | | | | | | Fixes #23058
* | | | | rename to 'second_to_last' and 'third_to_last'Brian Christian2016-02-101-2/+2
| | | | |
* | | | | allow Array.penultimate and Array.antepenultiate access methodsBrian Christian2016-02-091-0/+2
|/ / / /
* | | | Test the happy path for recursive yields tooMatthew Draper2016-02-081-0/+35
| | | |
* | | | Fix a nonsensical ShareLock test.thedarkone2016-02-071-22/+21
| | | |
* | | | AS::Conc::ShareLock#yield_shares tests.thedarkone2016-02-071-0/+107
| | | |
* | | | Hand off the interlock to the new thread in AC::LiveMatthew Draper2016-02-071-0/+26
|/ / / | | | | | | | | | | | | | | | Most importantly, the original request thread must yield its share lock while waiting for the live thread to commit -- otherwise a request's base and live threads can deadlock against each other.
* | | Fix regression in `Hash#dig` for HashWithIndifferentAccess.Jon Moss2016-02-011-0/+6
| | |
* | | After completing a load, give other threads a chance tooMatthew Draper2016-02-021-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | While we know no user code is running, we should do as much loading as we can. That way, all the threads will then be able to resume running user code together. Otherwise, only the last arriving thread would get to do its load, and would then return to userspace, leaving the others still blocked.
* | | While new sharers are blocked, an existing sharer remains re-entrantMatthew Draper2016-02-021-0/+29
| | |
* | | Block new share attempts if there's an exclusive waiterMatthew Draper2016-02-021-0/+32
| | |
* | | Change number_to_currency behavior for checking negativityPrathamesh Sonpatki2016-01-291-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Instead of using `to_f.phase`, just use `to_f.negative`?. - This change works same for all cases except when number is "-0.0". -0.0.to_f.negative? => false -0.0.to_f.phase? => pi - So -0.0 will be treated as positive from now onwards. - So this change reverts changes from https://github.com/rails/rails/pull/6512. - But it should be acceptable as we could not find any currency which supports negative zeros.
* | | Put test-case dependent helper Class inside the test caseAkira Matsuda2016-01-243-39/+39
| | | | | | | | | | | | This fixes :warning: previous definition of download was here
* | | :warning: mismatched indentations at 'end' with 'unless'Akira Matsuda2016-01-242-4/+4
| | |
* | | Test files has to be named *_test.rbAkira Matsuda2016-01-242-0/+0
| |/ |/|
* | Merge pull request #22278 from poporul/masterGodfrey Chan2016-01-151-3/+5
|\ \ | | | | | | Allow to store .keep file in cache directory
| * | Allow to store .keep file in cache directoryAlexey Pokhozhaev2015-11-131-3/+5
| | |
* | | Match HashWithIndifferentAccess#default's behaviour with Hash#defaultDavid Cornu2016-01-071-2/+2
| | |
* | | [close #22917] Don't output to `STDOUT` twiceschneems2016-01-061-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When `rails console` or `rails server` are used along with a logger set to output to `STDOUT` then the contents will show up twice. This happens because the logger is extended with `ActiveSupportLogger.broadcast` with a destination of STDOUT even if it is already outputting to `STDOUT`. Previously PR #22592 attempted to fix this issue, but it ended up causing NoMethodErrors. A better approach than relying on adding a method and flow control is to inspect the log destination directly. For this `ActiveSupport::Logger.logger_outputs_to?` was introduced ```ruby logger = Logger.new(STDOUT) ActiveSupport::Logger.logger_outputs_to?(logger, STDOUT) # => true ``` To accomplish this we must look inside of an instance variable of standard lib's Logger `@logdev`. There is a related Ruby proposal to expose this method in a standard way: https://bugs.ruby-lang.org/issues/11955
* | | Revert "Add Logger option to disable message broadcasts"schneems2016-01-051-32/+18
| | | | | | | | | | | | This reverts related commits due to #22917.
* | | Merge pull request #22856 from ↵Rafael França2016-01-011-1/+1
|\ \ \ | | | | | | | | | | | | | | | | rthbound/adds-exception-object-to-instrumenter-payload Adds exception object to instrumenter's payload
| * | | Adds exception object to instrumenter's payloadRyan T. Hosford2015-12-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Adds new key/value pair to payload when an exception is raised e.g. `:exception_object=> #<RuntimeError: FAIL>` - Updates relevant test - Adds CHANGELOG entry
* | | | Merge pull request #12877 from aroben/extended-graphemesRafael França2015-12-313-3/+234
|\ \ \ \ | |/ / / |/| | | Support extended grapheme clusters and UAX 29
| * | | Beef up #grapheme_length testsAdam Roben2013-11-131-3/+29
| | | | | | | | | | | | | | | | We how have tests for every rule in UAX 29.
| * | | Support extended grapheme clusters and UAX 29Adam Roben2013-11-131-0/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | http://www.unicode.org/reports/tr29/tr29-21.html is the version of UAX 29 that corresponds to Unicode 6.2.0. Unicode.unpack_graphemes now implements all the rules listed there, including the ones for extended grapheme clusters. I added a new optional test, test/multibyte_grapheme_break_conformance.rb, that is heavily based on test/multibyte_normalization_conformance.rb, which runs the Unicode test suite.
| * | | Rename multibyte_conformance.rb to multibyte_normalization_conformance.rbAdam Roben2013-11-131-2/+2
| | | | | | | | | | | | | | | | | | | | This test is only testing normalization behavior, not any other Unicode behaviors.
* | | | Fix - to_s(:db) on Numeric rangeAkshay Vishnoi2015-12-292-0/+26
| | | |
* | | | Merge pull request #22824 from maclover7/add-numericwithformat-testsYves Senn2015-12-291-0/+6
|\ \ \ \ | | | | | | | | | | Add test coverage for ActiveSupport::NumericWithFormat#to_formatted_s
| * | | | Add test coverage for ActiveSupport::NumericWithFormat#to_formatted_sJon Moss2015-12-281-0/+6
| | | | |
* | | | | Merge pull request #22759 from akshay-vishnoi/human-size-helperEileen M. Uchitelle2015-12-272-2/+26
|\ \ \ \ \ | | | | | | | | | | | | Add support for Petabyte and Exabyte in number to human size
| * | | | | Add support for Petabyte and Exabyte in number to human sizeAkshay Vishnoi2015-12-222-2/+26
| |/ / / /
* / / / / Fixes LoggerSilence#silence threadsafetyCarl P. Corliss2015-12-231-2/+83
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | - uses instance defined level if no custom local log level defined - Keeps track of local log level per [ thread + object-instance ] - prevents memory leakage by removing local level hash key/value on #silence method exit - avoids the use of Thread local variables
* | | | Suppress warning ambiguous first argumentyui-knk2015-12-201-1/+1
| | | | | | | | | | | | | | | | | | | | Suppress warning (warning: ambiguous first argument; put parentheses or a space even after `/' operator)
* | | | Deprecation warning now targets at 5.1Akira Matsuda2015-12-191-1/+5
| | | | | | | | | | | | | | | | | | | | Also, added a test case to make sure that the default deprecation horizon is always bigger than the current Rails version.
* | | | Merge pull request #22479 from RobinClowers/fix-cache-notification-orderKasper Timm Hansen2015-12-191-12/+16
|\ \ \ \ | | | | | | | | | | Fix cache fetch miss notification order
| * | | | Fix cache fetch miss notification orderRobin Clowers2015-12-021-12/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes https://github.com/rails/rails/issues/22477. When I improved the caching instrumentation in edd33c08d98723ae9bb89cf7f019277117ed6414, I inadvertently changed the order of AS notifications when there is a cache miss.
* | | | | Fix test that fails in isolationeileencodes2015-12-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This test needs to have a require for the Listen gem or else it returns an error when run by itself or with a certain order in the Active Support tests. We use `silence_warnings` because Listen has some warnings about private methods. It's already silenced when it's required in Active Support EventedFileUpdateChecker. ``` 1) Error: EventedFileUpdateCheckerTest#test_should_not_execute_the_block_if_no_paths_are_given: NameError: uninitialized constant EventedFileUpdateCheckerTest::Listen test/evented_file_update_checker_test.rb:21:in `teardown' ```
* | | | | Delete duplicate testeileencodes2015-12-181-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The test was was in here twice so we were seeing this error: ``` activesupport/test/caching_test.rb:658: warning: method redefined; discarding old test_local_cache_of_read_nil activesupport/test/caching_test.rb:634: warning: previous definition of test_local_cache_of_read_nil was here ```