aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #10901 from ↵Yves Senn2013-06-221-0/+27
|\ | | | | | | | | armstrjare/fix_query_null_foreign_key_on_new_record_collection_ids_reader Fixes CollectionAssociation#ids_reader returning incorrect ids for new records
| * Fixes CollectionAssociation#ids_reader returning incorrect ids for new recordsJared Armstrong2013-06-211-0/+27
| |
* | Merge pull request #10925 from senny/10917_test_to_prevent_regressionYves Senn2013-06-151-0/+26
|/ | | | | | | regression test + mysql2 adapter raises correct error if conn is closed. Conflicts: activerecord/CHANGELOG.md
* adding a test for #10830Aaron Patterson2013-06-051-0/+46
|
* Using 1.8.7 syntax for 3-2-stableArun Agrawal2013-05-243-6/+6
|
* Merge pull request #10713 from senny/10693_fix_primary_key_option_on_has_manyRafael Mendonça França2013-05-232-0/+9
| | | | | | | Fix the `:primary_key` option for `has_many` associations. Conflicts: activerecord/CHANGELOG.md activerecord/lib/active_record/associations/has_many_association.rb
* destroys association records before saving/inserting new association recordsJohnny Holton2013-05-181-3/+19
| | | | | | | | | | | | | | | | | | | | | | | | This is a backport of #10417 fixes bug introduced by #3329 These are the conditions necessary to reproduce the bug: - For an association, autosave => true. - An association record is being destroyed - A new association record is being created. - There is a unique index one of the association's fields. - The record being created has the same value as the record being destroyed on the indexed field. Before, the deletion of records was postponed until after all insertions/saves. Therefore the new record with the identical value in the indexed field caused a non-unique value error to be thrown at the database level. With this fix, the deletions happen first, before the insertions/saves. Therefore the record with the duplicate value is gone from the database before the new record is created, thereby avoiding the non-uniuqe value error.
* Backport a super-simplified version of #6792, fixingBen Woosley2013-05-141-0/+12
| | | | | | | | | | | | | that #exists? and others can produce invalid SQL: "SELECT DISTINCT DISTINCT" The combination of a :uniq => true association and the #distinct call in #construct_limited_ids_condition combine to create invalid SQL, because we're explicitly selecting DISTINCT, and also sending #distinct on to AREL, via the relation#distinct_value. Where #6792 was the forever fix, this is the minimal fix. Instead of properly indicating the distinctness of the query through #uniq_value alone, we use a literal select statement and set #uniq_value to always be falsey
* Preserve context for joins while merging relationsAndrew Horner2013-05-111-1/+8
| | | | | | This is a backport of #10164, already merged into master. The issue is described in lengthy detail in issues #3002 and #5494.
* Don't try to EXPLAIN select_db callsDaniel Schierbeck2013-05-121-0/+7
| | | | Now with a non-broken test.
* Revert "Don't try to EXPLAIN select_db calls"Xavier Noria2013-05-111-7/+0
| | | | | | Reason: This was backported, but the test does not pass as is. This reverts commit a33d320cf4b57fabd9c299b09c217ee3955ecc77.
* Merge pull request #10555 from dasch/dasch/3-2-stableXavier Noria2013-05-101-0/+7
|\ | | | | Don't try to EXPLAIN select_db calls
| * Don't try to EXPLAIN select_db callsDaniel Schierbeck2013-05-101-0/+7
| |
* | Fixed pluck to be working with selects.Arun Agrawal2013-05-101-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | See #9777 for details. Previously pluck is not returning what we wanted to Added a test also to make sure it's working fine. This will also fix the build for 1.8.7 as we were doing some sort on hash. Thanks @pixeltrix for helping me out. Thanks @linduxed for pairing with me.
* | Revert "Merge pull request #8209 from senny/backport_8176"Rafael Mendonça França2013-05-081-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 724020278480855bddfe749c91f1074d4f50f3c6, reversing changes made to e4e2bcce75b85fb8c1c49509a17bd5dfe6034c32. Conflicts: activerecord/CHANGELOG.md activerecord/lib/active_record/relation/calculations.rb activerecord/test/cases/calculations_test.rb Reason: This caused a regression since it changed the behavior in a stable release. Fixes #9777
* | Merge pull request #10489 from greenriver/ar_counter_cache_multiple_destroyRafael Mendonça França2013-05-061-0/+20
|/ | | | | | | | | | | Confirm a record has not already been destroyed before decrementing counter cache Conflicts: activerecord/CHANGELOG.md Conflicts: activerecord/CHANGELOG.md activerecord/lib/active_record/associations/builder/belongs_to.rb
* adding test for the symbol refsAaron Patterson2013-04-261-0/+7
|
* Correctly parse bigint defaults in PostgreSQL, Backpost #10098.Erik Peterson2013-04-112-0/+6
| | | | | | | | Conflicts: activerecord/CHANGELOG.md activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb activerecord/test/cases/schema_dumper_test.rb
* Merge branch '3-2-later' into 3-2-stableAaron Patterson2013-04-091-0/+10
|\ | | | | | | | | * 3-2-later: adding test for CVE
| * adding test for CVEAaron Patterson2013-02-091-0/+10
| |
| * Merge pull request #9224 from dylanahsmith/bigdecimal-takes-stringGuillermo Iguaran2013-02-091-1/+1
| | | | | | | | [3.2] Fix test failure for ruby 1.8.
| * Merge pull request #9208 from dylanahsmith/3-2-mysql-quote-numericGuillermo Iguaran2013-02-094-10/+37
| | | | | | | | | | | | [3.2] active_record: Quote numeric values compared to string columns. Conflicts: activerecord/CHANGELOG.md
* | Merge pull request #7792 from seejee/chained_scopes_preload_properlyCarlos Antonio da Silva2013-04-032-0/+10
|\ \ | | | | | | Fixes Issue #7490: Chained scopes will preload properly
| * | Chained scopes will be preloaded properly. Fixes #7490Chris Geihsler2013-04-032-0/+10
| | |
* | | Don't reset inheritance_column when setting explicitly.Fred Wu2013-03-271-0/+10
| | | | | | | | | This is backported from master (cdfcbc4).
* | | use ruby 1.8 Hash syntax [ci skip]Yves Senn2013-03-221-1/+1
| | |
* | | do not reset associations when preloading twice.Yves Senn2013-03-221-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | Closes #9806. As the `through_options` always contained `{:order=>nil}` the second time, the preloader ran, the association was always reset. This patch only adds the `:order` to the `through_options` if it is set.
* | | Wrong exception is occured when raising no translatable exceptionkennyj2013-03-201-0/+6
| | | | | | | | | | | | | | | Conflicts: activerecord/CHANGELOG.md
* | | Bring back test and changelog entry from #pluck method and select clauseCarlos Antonio da Silva2013-03-181-0/+6
| | |
* | | Merge branch '3-2-13' into 3-2-stableAaron Patterson2013-03-183-14/+8
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 3-2-13: bumping to 3.2.13 fix protocol checking in sanitization [CVE-2013-1857] JDOM XXE Protection [CVE-2013-1856] fix incorrect ^$ usage leading to XSS in sanitize_css [CVE-2013-1855] stop calling to_sym when building arel nodes [CVE-2013-1854] Merge pull request #9616 from exviva/multiple_select_name_double_square_brackets bumping to rc2 Revert "Merge pull request #8209 from senny/backport_8176" Freeze columns only once per Result Preparing for 3.2.13.rc1 release Update CHANGELOGs for 3.2.13 release. Conflicts: actionmailer/CHANGELOG.md actionpack/CHANGELOG.md activemodel/CHANGELOG.md activeresource/CHANGELOG.md activesupport/CHANGELOG.md railties/CHANGELOG.md
| * | | stop calling to_sym when building arel nodes [CVE-2013-1854]Aaron Patterson2013-03-152-8/+8
| |/ /
| * | Revert "Merge pull request #8209 from senny/backport_8176"Aaron Patterson2013-03-051-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 724020278480855bddfe749c91f1074d4f50f3c6, reversing changes made to e4e2bcce75b85fb8c1c49509a17bd5dfe6034c32. Conflicts: activerecord/CHANGELOG.md activerecord/lib/active_record/relation/calculations.rb activerecord/test/cases/calculations_test.rb
* | | Fix ar:mysql2 build on Ruby 1.8.7Andrew White2013-03-131-4/+12
| | | | | | | | | | | | | | | The `skip` method is a no-op on Ruby 1.8.7 so we still need to force skip by returning early from each test.
* | | Merge pull request #9613 from arunagw/remove_fixmeCarlos Antonio da Silva2013-03-081-9/+8
|\ \ \ | | | | | | | | Removing FIXME
| * | | Removing FIXMEArun Agrawal2013-03-081-9/+8
| | | | | | | | | | | | As we did in master.
* | | | Merge pull request #9549 from larrylv/reload-stable-target-before-savingRafael Mendonça França2013-03-071-0/+14
|\ \ \ \ | | | | | | | | | | Fix issue #7526. Reload the association target if it's stale.
| * | | | Fix issue #7526. Reload the target if it's stale.larrylv2013-03-051-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * This has been fixed at master via `365b8b6`, but not at 3-2-stable branch. * @stale_state should be nil when a model isn't saved. via `0f3901e`. * set @stale_state to nil when reset the target.
* | | | | Use shorter prefix and suffix as in Oracle database identifierYasuo Honda2013-03-071-4/+5
|/ / / / | | | | | | | | | | | | cannot be larger than 30 characters
* | | | Revert "Skip test_remove_column_with_array_as_an_argument_is_deprecated with ↵Yasuo Honda2013-02-281-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Oracle adapter." This reverts commit 7544c7a9f290a3ea25099ae38d52795458391785. Oracle enhanced adapter is supporting remove_column with Array.
* | | | Fix ORA-00972 error at test_rename_table_with_prefix_and_suffixYasuo Honda2013-02-281-4/+4
| |/ / |/| | | | | | | | backport pull request#5837 to 3-2-stable
* | | Revert "Merge pull request #9208 from dylanahsmith/3-2-mysql-quote-numeric"Steve Klabnik2013-02-264-37/+10
| | | | | | | | | | | | This reverts commit 921a296a3390192a71abeec6d9a035cc6d1865c8.
* | | Do not override attributes on `dup` by default scopesHiroshige Umino2013-02-261-0/+9
| | |
* | | Backported #7072 to 3-2-stable. Use database value for uniqueness validation ↵Narihiro Nakamura2013-02-261-0/+16
| | | | | | | | | | | | scope.
* | | Sqlite preserves primary keys when copying/altering tables.Yves Senn2013-02-232-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | Backport #2312. Fixes #9367. I also added a test-case to make sure that renaming or removing a column preserves the primary key.
* | | Use order to get the first record since postgresql returns in theRafael Mendonça França2013-02-201-1/+1
| | | | | | | | | | | | desired order
* | | keep the build :green_heart:, #first on 1.8.7 and pg is differentYves Senn2013-02-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The build only failed for ruby-1.8.7 and pg. The problem was that the statement: ```ruby author = Author.includes(:comments_with_order_and_conditions, :posts).first ``` resulted in Author with ID 2 where on all other rubies / db-engines Author with ID 1 was retunred. Of course this breaks the assertions.
* | | don't cache invalid subsets when preloading hmt associations.Yves Senn2013-02-191-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Backport #9252. Conflicts: activerecord/CHANGELOG.md activerecord/test/cases/associations/eager_test.rb The preloader code on 3-2-stable is not based on relations but on option hashes. I had to modify the original patch and comparing the option hashes could be more fuzzy than comparing the relations. All the tests passed though.
* | | Fix handling of dirty time zone aware attributesLilibeth De La Cruz2013-02-171-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, when `time_zone_aware_attributes` were enabled, after changing a datetime or timestamp attribute and then changing it back to the original value, `changed_attributes` still tracked the attribute as changed. This caused `[attribute]_changed?` and `changed?` methods to return true incorrectly. Example: in_time_zone 'Paris' do order = Order.new original_time = Time.local(2012, 10, 10) order.shipped_at = original_time order.save order.changed? # => false # changing value order.shipped_at = Time.local(2013, 1, 1) order.changed? # => true # reverting to original value order.shipped_at = original_time order.changed? # => false, used to return true end (cherry picked from commit bc982cbcb34129ea2cfe8aa1f8e0b40e444e68db) Conflicts: activerecord/CHANGELOG.md activerecord/lib/active_record/attribute_methods/time_zone_conversion.rb Backport of #9073 Fixes #8898
* | | Revert "Merge pull request #9252 from senny/8423_hmt_preloading_bug"Rafael Mendonça França2013-02-151-6/+0
| | | | | | | | | | | | | | | | | | | | | This reverts commit c5451777b038c5e48567f69256986ae42a2cde48. Conflicts: activerecord/CHANGELOG.md
* | | Merge pull request #9252 from senny/8423_hmt_preloading_bugRafael Mendonça França2013-02-141-0/+6
| | | | | | | | | | | | | | | | | | | | | don't cache invalid subsets when preloading hmt associations Conflicts: activerecord/CHANGELOG.md activerecord/test/cases/associations/eager_test.rb