aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/persistence_test.rb
Commit message (Collapse)AuthorAgeFilesLines
* Provide :touch option to save() to accommodate saving without updating ↵Dan Olson2014-12-271-0/+31
| | | | timestamps. [#18202]
* Pass symbol as an argument instead of a blockErik Michaels-Ober2014-11-291-2/+2
|
* Build fix when running in isolationArun Agrawal2014-11-141-0/+1
| | | | | `Computer` class needs to be require See #17217 for more details
* Fix mysql/mysql2 failing with FK constraint errorsGodfrey Chan2014-07-051-1/+1
| | | | | | | | | One of the author fixture we have ("david") references an author address by ID. Since we disable FK checks when inserting fixtures, this is all fine until we try to update it, at which point MySQL would complain about the missing row referenced by the `author_address_id`. [Godfrey Chan, Matthew Draper]
* After find-via-reload, the record is not newMatthew Draper2014-07-051-0/+12
|
* `reload` should fully reload attributesSean Griffin2014-06-221-0/+7
| | | | | | `reload` is meant to put a record in the same state it would be if you were to do `Post.find(post.id)`. This means we should fully replace the attributes hash.
* Merge pull request #15593 from sgrif/sg-attributeRafael Mendonça França2014-06-131-9/+4
|\ | | | | Introduce an Attribute object to handle the type casting dance
| * Introduce an Attribute object to handle the type casting danceSean Griffin2014-06-131-9/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There's a lot more that can be moved to these, but this felt like a good place to introduce the object. Plans are: - Remove all knowledge of type casting from the columns, beyond a reference to the cast_type - Move type_cast_for_database to these objects - Potentially make them mutable, introduce a state machine, and have dirty checking handled here as well - Move `attribute`, `decorate_attribute`, and anything else that modifies types to mess with this object, not the columns hash - Introduce a collection object to manage these, reduce allocations, and not require serializing the types
* | Update test data which doesn't reflect expected usageSean Griffin2014-06-121-6/+6
|/ | | | | | Topics call `serialize :content`, which means that the values in the database should be YAML encoded, and we would only expect to receive YAML strings to `update_column` and `update_columns`.
* Merge pull request #15503 from sgrif/sg-json-hstore-storageYves Senn2014-06-061-2/+2
|\ | | | | Bring type casting behavior of hstore/json in line with serialized
| * Bring type casting behavior of hstore/json in line with serializedSean Griffin2014-06-041-2/+2
| | | | | | | | | | `@raw_attributes` should not contain the type-cast, mutable version of the value.
* | Merge pull request #14971 from versioncontrol/#14785Yves Senn2014-06-061-0/+9
|\ \ | |/ |/| | | Baseclass becomes! subclass
| * Fix Baseclass becomes! subclass.Edo Balvers2014-05-131-0/+9
| |
* | docs, `instantiate` expects `String` keys. [Rafal Piekarski & Yves Senn]Yves Senn2014-05-201-0/+11
|/ | | | | Closes #15122 Closes #15107
* test, persist inherited class with different table name. Refs #14971.Yves Senn2014-05-071-0/+14
| | | | | This case prevents against regressions. The change was suggested in a recent PR but the all our tests passed.
* Move dup destroyed test to specific file that tests dup logicCarlos Antonio da Silva2014-05-021-9/+2
| | | | | Also change other related test to use existing record rather than creating new one.
* `@destroyed` should always be set to `false` when an object is duped.Kuldeep Aggarwal2014-04-191-0/+16
|
* Change usec to 0 on tests that compare secondsArthur Neves2014-03-121-3/+3
| | | | | Avoid rounding problems with `.usec` method rounding the seconds when the field doesn't persist the `.usec` piece.
* use the new clear_validators! api everywhere to reset validators in testsKuldeep Aggarwal2014-01-281-2/+2
|
* Copy changed_attributes across to newly become'd recordsJonathan del Strother2013-12-271-0/+14
| | | Without this, the original record's values won't get saved, since the partial insertions support (https://github.com/rails/rails/commit/144e8691cbfb8bba77f18cfe68d5e7fd48887f5e) checks for changed values and thinks there are none.
* Raising an error when nil or non-hash is passed to update_attributes.wangjohn2013-06-251-4/+11
|
* Extract AR::Persistence#becomes's test code out from base_test.rbTakehiro Adachi2013-05-221-0/+13
| | | | | The method got extracted out from AR::Base in commit d916c62cfc7c59ab6411407a05b946d3dd7535e9, but the tests never did.
* Fix class and method name typosVipul A M2013-05-121-1/+1
|
* Add missing require to inheritance testCarlos Antonio da Silva2013-04-031-1/+1
|
* Use snake case variable names, stick with the conventionCarlos Antonio da Silva2013-03-281-13/+13
|
* Fix updates not working within after_create hooksAaron Pfeifer2013-03-271-0/+16
|
* When we pass id to update_attributes it will try to set new id for that recordDmitry Vorotilin2013-03-221-0/+9
|
* Remove regression test added in 0268b5d8cdc3c5a1337462135f0a326a2654ba1aRafael Mendonça França2013-03-071-8/+0
| | | | | | It was added because a regression caused by a712e08ebe21f6d8653a0e6602df2e0f5d40d9ca Closes #9255
* Skip failing test and add a FIXME noteRafael Mendonça França2013-02-201-0/+2
|
* test for regression from a712e08ebe21f6d8653a0e6602df2e0f5d40d9caAaron Patterson2013-02-111-0/+6
|
* Change duplicated test nameRafael Mendonça França2013-01-031-2/+2
|
* Rename update_attributes method to update, keep update_attributes as an aliasAmparo Luna + Guillermo Iguaran2013-01-031-5/+42
|
* remove meaningless AS::FrozenObjectErrorAkira Matsuda2013-01-021-3/+2
|
* Unscope update_column(s) query to ignore default scopeCarlos Antonio da Silva2012-12-061-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | When applying default_scope to a class with a where clause, using update_column(s) could generate a query that would not properly update the record due to the where clause from the default_scope being applied to the update query. class User < ActiveRecord::Base default_scope where(active: true) end user = User.first user.active = false user.save! user.update_column(:active, true) # => false In this situation we want to skip the default_scope clause and just update the record based on the primary key. With this change: user.update_column(:active, true) # => true Fixes #8436.
* Remove not used variable warnignsCarlos Antonio da Silva2012-12-011-1/+1
|
* AR::Base.becomes should not change the STI typeThomas Hollstegge2012-11-171-1/+12
| | | | If you want to change the STI type too, use AR::Base.becomes! instead
* Enable update_column(s) for the primary key attribute.Henrik N2012-10-281-0/+13
| | | | Didn't work before because it updated the model-in-memory first, so the DB query couldn't find the record.
* Remove mass_assignment_options from ActiveRecordGuillermo Iguaran2012-09-161-40/+0
|
* Revert "Remove update_attribute."Rafael Mendonça França2012-08-251-0/+40
| | | | | | | | | | | This reverts commit a7f4b0a1231bf3c65db2ad4066da78c3da5ffb01. Conflicts: activerecord/lib/active_record/associations/has_one_association.rb activerecord/lib/active_record/persistence.rb activerecord/test/cases/base_test.rb activerecord/test/cases/dirty_test.rb activerecord/test/cases/timestamp_test.rb
* Remove the deprecation of update_column.Rafael Mendonça França2012-07-301-38/+17
| | | | | | update_column was suggested as replacement of update_attribute at the last release of 3-2-stable, so deprecating it now will confuse the users.
* Deprecate ActiveRecord::Base.scoped.Jon Leighton2012-07-271-3/+3
| | | | | | | It doesn't serve much purpose now that ActiveRecord::Base.all returns a Relation. The code is moved to active_record_deprecated_finders.
* ActiveRecord::Base.all returns a Relation.Jon Leighton2012-07-271-1/+1
| | | | | | | | | | | Previously it returned an Array. If you want an array, call e.g. `Post.to_a` rather than `Post.all`. This is more explicit. In most cases this should not break existing code, since Relations use method_missing to delegate unknown methods to #to_a anyway.
* Deprecate update_column in favor of update_columns.Rafael Mendonça França2012-07-241-17/+38
| | | | Closes #1190
* Use update_columns to implemente the update_columnRafael Mendonça França2012-07-241-2/+36
|
* New #update_columns method.Sebastian Martinez2012-07-241-0/+57
|
* Remove update_attribute.Steve Klabnik2012-06-141-62/+1
| | | | | | | | | | | Historically, update_attribute and update_attributes are similar, but with one big difference: update_attribute does not run validations. These two methods are really easy to confuse given their similar names. Therefore, update_attribute is being removed in favor of update_column. See the thread on rails-core here: https://groups.google.com/forum/?fromgroups#!topic/rubyonrails-core/BWPUTK7WvYA
* + ActiveRecord::Base#destroy!Marc-Andre Lafortune2012-06-061-0/+7
|
* Remove unused assignments from activerecord testsMark Rushakoff2012-04-291-1/+0
|
* remove deprecated callsJon Leighton2012-04-271-1/+1
|
* %s/find(:\(first\|last\|all\), \([^()]*\))/scoped(\2).\1/gcI amongst other ↵Jon Leighton2012-04-271-1/+1
| | | | things