aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/test
Commit message (Collapse)AuthorAgeFilesLines
* Adds titleize/titlecase to AS::Multibyte::CharsNorman Clarke2010-06-201-0/+14
| | | | | | [#2794 state:resolved] Signed-off-by: José Valim <jose.valim@gmail.com>
* Remove descendants warning while executing tests.José Valim2010-06-191-1/+1
|
* Change callbacks to automatically include DescendantsTracker and rename ↵José Valim2010-06-191-2/+5
| | | | descendents to descendants.
* Add ActiveSupport::DescendantsTracker.José Valim2010-06-191-0/+72
|
* when the timezone is nil, a TimeWithZone object should not be constructed. ↵Aaron Patterson2010-06-171-0/+7
| | | | | | [#4881 state:resolved] Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
* revises implementation of AS::OrderedHash#merge!Xavier Noria2010-06-131-16/+17
|
* Revert "hash merging with a block ignores non-existing keys altogether"Xavier Noria2010-06-131-16/+17
| | | | | | This reverts commit 72f9fec607c4a72b2e88995d0cb32b16b96e9068. It is wrong, this feature is a little undocumented, doing some research.
* hash merging with a block ignores non-existing keys altogetherXavier Noria2010-06-131-17/+16
|
* re-organized test for merge into separate testsPaul Barry2010-06-131-13/+21
| | | | Signed-off-by: Xavier Noria <fxn@hashref.com>
* Support passing a block to ActiveSupport::OrderedHash's merge and merge! ↵Paul Mucur2010-06-131-0/+13
| | | | | | | | [#4838 state:committed] For better consistency with Ruby's own Hash implementation. Signed-off-by: Xavier Noria <fxn@hashref.com>
* Date#since, #ago, #beginning_of_day, #end_of_day, #xmlschema return ↵Geoff Buesing2010-06-121-1/+50
| | | | | | TimeWithZone when Time.zone_default is set Signed-off-by: Xavier Noria <fxn@hashref.com>
* Remove String#constantize depsJeremy Kemper2010-06-111-7/+8
|
* Merge remote branch 'rsim/oracle_enhanced_rails3'wycats2010-06-072-3/+3
|\
| * fix conditions when DateTime#to_date and DateTime#xmlschema methods are definedRaimonds Simanovskis2010-06-042-3/+3
| |
* | oops, two cancelling errors made a previous test pass, fixing itXavier Noria2010-06-071-1/+1
| |
* | the order in which we apply deltas in Date#advance matters, add test ↵Xavier Noria2010-06-071-0/+10
| | | | | | | | coverage for that
* | ActiveSupport::Dependencies.constantize shortcut for caching named constant ↵Jeremy Kemper2010-06-051-0/+6
| | | | | | | | lookups
* | Optimize LookupContextwycats2010-06-041-0/+15
| |
* | removes Array#random_element and backports Array#sample from Ruby 1.9, ↵Xavier Noria2010-06-051-7/+23
|/ | | | thanks to Marc-Andre Lafortune
* Extracted String#truncate from TextHelper#truncate [DHH]David Heinemeier Hansson2010-06-011-0/+29
|
* Fix test incorrectly using a bare assert to use assert_kind_ofSantiago Pastorino2010-05-241-1/+1
| | | | Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
* Use multibyte proxy class on 1.9, refactor Unicode.Norman Clarke2010-05-214-58/+53
| | | | | | | | | | Makes String#mb_chars on Ruby 1.9 return an instance of ActiveSupport::Multibyte::Chars to work around 1.9's lack of Unicode case folding. Refactors class methods from ActiveSupport::Multibyte::Chars into new Unicode module, adding other related functionality for consistency. [#4594 state:resolved] Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
* 1.day should respond_to kind_of tooNeeraj Singh2010-05-211-0/+1
| | | | | | [#4656 state:resolved] Signed-off-by: José Valim <jose.valim@gmail.com>
* refactor evals and adds some __FILE__ and __LINE__Santiago Pastorino2010-05-202-3/+3
| | | | Signed-off-by: José Valim <jose.valim@gmail.com>
* Final iteration of use better testing methodsNeeraj Singh2010-05-1913-44/+44
| | | | | | [#4652 state:resolved] Signed-off-by: José Valim <jose.valim@gmail.com>
* removes deprecations of last_(month|year) from master, they will be ↵Xavier Noria2010-05-192-16/+0
| | | | deprecated in 2.3 instead
* Better error messages for some of ActiveSupport testsNeeraj Singh2010-05-181-6/+6
| | | | | | [#4635 state:resolved] Signed-off-by: José Valim <jose.valim@gmail.com>
* Renames Array#rand -> Array#random_elementRizwan Reza2010-05-171-4/+0
| | | | Signed-off-by: Xavier Noria <fxn@hashref.com>
* Revert "Moved encoding work in progress to a feature branch."wycats2010-05-171-0/+8
| | | | This reverts commit ade756fe42423033bae8e5aea8f58782f7a6c517.
* Moved encoding work in progress to a feature branch.Jeremy Kemper2010-05-161-8/+0
| | | | This reverts commits af0d1a88157942c6e6398dbf73891cff1e152405 and 64d109e3539ad600f58536d3ecabd2f87b67fd1c.
* Change on Array extension from rand => random_element [#4555 state:committed]Santiago Pastorino2010-05-161-4/+8
| | | | Signed-off-by: Xavier Noria <fxn@hashref.com>
* Initial work to improve the state of encodings for templateswycats2010-05-161-0/+8
|
* Make use of assert_equal to test equallity between object assert expects and ↵Santiago Pastorino2010-05-162-4/+4
| | | | | | | | object and a message of error [#4611 state:committed] Signed-off-by: José Valim <jose.valim@gmail.com>
* Reorganized initializers a bit to enable better hooks for common cases ↵wycats2010-05-151-0/+67
| | | | | | | | | | | | | | | without the need for Railtie. Specifically, the following hooks were added: * before_configuration: this hook is run immediately after the Application class comes into existence, but before the user has added any configuration. This is the appropriate place to set configuration for your plugin * before_initialize: This is run after all of the user's configuration has completed, but before any initializers have begun (in other words, it runs right after config/environments/{development,production,test}.rb) * after_initialize: This is run after all of the initializers have run. It is an appropriate place for forking in a preforking setup Each of these hooks may be used via ActiveSupport.on_load(name) { }. In all these cases, the context inside the block will be the Application object. This means that for simple cases, you can use these hooks without needing to create a Railtie.
* defines prev_(month|year) in Date and Time to ease transition to 1.9, and ↵Xavier Noria2010-05-123-18/+34
| | | | deprecates last_(month|year)
* adds calendar reform test coverage for more relevant date calculationsXavier Noria2010-05-091-1/+14
|
* Backports Date#>> from 1.9 so that calculations do the right thing around ↵Xavier Noria2010-05-091-0/+27
| | | | | | | | | | the calendar reform Our next_month gives November for some late dates in September of 1582. Related methods, last_*, and in general advance have the same issues. This commit fixes those, see the test suite for expected behavior, which we still run in 1.9 to ensure it matches as we do with other methods defined in Date in 1.9.
* add test coverage for (last|next)_year on leap yearsXavier Noria2010-05-081-0/+8
|
* let Time.time_with_datetime_fallback handle properly years in the range 0..138Xavier Noria2010-05-053-1/+19
|
* BigDecimal#as_json does not really specify the F format, it delegates that ↵Xavier Noria2010-05-031-1/+3
| | | | to whatever BigDecimal#to_s default format is, do the same in its test
* adds test coverage for Date.current vs Date.today in ↵Xavier Noria2010-05-031-1/+45
| | | | Date.(yesterday|tomorrow) implementation
* Event should be aware if yielded block failed or not.José Valim2010-05-021-0/+2
|
* Make notifications go off even when an error is raised, so that we capture ↵Justin George2010-05-021-2/+2
| | | | | | | | | | | | | | the underlying performance data [#4505 state:resolved] This is important when trying to keep track of many layers of interrelated calls i.e.: ActiveRecord::Base.transaction do MyModel.find(1) #ActiveRecord::NotFound end # should capture the full time until the error propagation Signed-off-by: José Valim <jose.valim@gmail.com>
* revises tests for Date.yesterday and Date.tomorrowXavier Noria2010-05-021-3/+3
|
* repair the activesupport message encryptor tests for me, do so in the same ↵Marius Nuennerich2010-05-011-0/+10
| | | | | | | | way as jeremy did with message verifier [#4517 state:committed] Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
* Delegate Inflector.transliterate to i18n. [#4508 state:resolved]Norman Clarke2010-04-301-33/+18
| | | | | | | Ancillary changes: Moved Chars#normalize into a class method; removed unused UTF_PAT constant. Signed-off-by: José Valim <jose.valim@gmail.com>
* array.to_xml should be able to handle all types of data elements [#4490 ↵Neeraj Singh2010-04-291-5/+5
| | | | | | state:resolved] Signed-off-by: José Valim <jose.valim@gmail.com>
* Fix BigDecimal JSON encoding test. [#4495 state:resolved]Cezary Baginski2010-04-281-3/+3
| | | | Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
* ActiveSupport::Cache refactoringBrian Durand2010-04-271-188/+461
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | All Caches * Add default options to initializer that will be sent to all read, write, fetch, exist?, increment, and decrement * Add support for the :expires_in option to fetch and write for all caches. Cache entries are stored with the create timestamp and a ttl so that expiration can be handled independently of the implementation. * Add support for a :namespace option. This can be used to set a global prefix for cache entries. * Deprecate expand_cache_key on ActiveSupport::Cache and move it to ActionController::Caching and ActionDispatch::Http::Cache since the logic in the method used some Rails specific environment variables and was only used by ActionPack classes. Not very DRY but there didn't seem to be a good shared spot and ActiveSupport really shouldn't be Rails specific. * Add support for :race_condition_ttl to fetch. This setting can prevent race conditions on fetch calls where several processes try to regenerate a recently expired entry at once. * Add support for :compress option to fetch and write which will compress any data over a configurable threshold. * Nil values can now be stored in the cache and are distinct from cache misses for fetch. * Easier API to create new implementations. Just need to implement the methods read_entry, write_entry, and delete_entry instead of overwriting existing methods. * Since all cache implementations support storing objects, update the docs to state that ActiveCache::Cache::Store implementations should store objects. Keys, however, must be strings since some implementations require that. * Increase test coverage. * Document methods which are provided as convenience but which may not be universally available. MemoryStore * MemoryStore can now safely be used as the cache for single server sites. * Make thread safe so that the default cache implementation used by Rails is thread safe. The overhead is minimal and it is still the fastest store available. * Provide :size initialization option indicating the maximum size of the cache in memory (defaults to 32Mb). * Add prune logic that removes the least recently used cache entries to keep the cache size from exceeding the max. * Deprecated SynchronizedMemoryStore since it isn't needed anymore. FileStore * Escape key values so they will work as file names on all file systems, be consistent, and case sensitive * Use a hash algorithm to segment the cache into sub directories so that a large cache doesn't exceed file system limits. * FileStore can be slow so implement the LocalCache strategy to cache reads for the duration of a request. * Add cleanup method to keep the disk from filling up with expired entries. * Fix increment and decrement to use file system locks so they are consistent between processes. MemCacheStore * Support all keys. Previously keys with spaces in them would fail * Deprecate CompressedMemCacheStore since it isn't needed anymore (use :compress => true) [#4452 state:committed] Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
* JSON: encode objects that don't have a native JSON representation using ↵Jeremy Kemper2010-04-261-2/+19
| | | | to_hash, if available, instead of instance_values (the old fallback) or to_s (other encoders' default). Encode BigDecimal and Regexp encode as strings to conform with other encoders. Try to transcode non-UTF-8 strings.