aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | Resolve encoding issues with arrays of hstore (bug 11135).Josh Goodall2014-02-171-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We didn't have enough encoding for the wire protocol to store an array of hstore types. So, further encode any hstore that is an array member. Whilst we're here, ensure it's an HashWithIndifferentAccess being returned, to be consistent with other serialized forms, and add testing for arrays of hstore. So now the following migration: enable_extension "hstore" create_table :servers do |t| t.string :name t.hstore :interfaces, array: true end produces a model that can used like this, to store an array of hashes: server = Server.create(name: "server01", interfaces: [ { name: "bge0", ipv4: "192.0.2.2", state: "up" }, { name: "de0", state: "disabled", by: "misha" }, { name: "fe0", state: "up" }, ]) More at http://inopinatus.org/2013/07/12/using-arrays-of-hstore-with-rails-4/
* | | | make a singleton for AssociationScopeAaron Patterson2014-02-141-2/+1
| | | | | | | | | | | | | | | | | | | | AssociationScope no longer maintains state, so we're safe to keep a singleton and save on GC time
* | | | pass the association and connection to the scope methodAaron Patterson2014-02-141-2/+4
| | | |
* | | | remove unused fixtures from sqlite3 test casesRajarshi Das2014-02-141-1/+1
| | | |
* | | | Merge pull request #14034 from ↵Yves Senn2014-02-132-3/+31
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | hdabrows/drop-correct-index-when-reverting-migration Drop the correct index after reverting a migration
| * | | | Drop the correct index after reverting a migrationHubert Dąbrowski2014-02-132-3/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously when reverting a migration which added a named index it would instead drop a corresponding index with matching columns but without a name.
* | | | | tests are responsible to clean up afterwards.Yves Senn2014-02-131-82/+114
| | | | | | | | | | | | | | | | | | | | | | | | | remove created state after test execution, not before the next test. This prevents the leak of the `ex` table outside of a single test.
* | | | | Terminate the backend ourselves on PG 9.2+Matthew Draper2014-02-121-19/+29
|/ / / / | | | | | | | | | | | | This should make it harder to accidentally break this test.
* | | | test case to illustrate current PostgreSQL composite behavior.Yves Senn2014-02-111-0/+42
| | | |
* | | | add activerecord test coverage for `sanitize_sql_array`Dmitry Polushkin2014-02-091-0/+5
| | | | | | | | | | | | | | | | check it is handles empty statement
* | | | Merge pull request #13981 from Fortisque/kevin/postgresql_reaper_threadsafeAaron Patterson2014-02-082-2/+2
|\ \ \ \ | | | | | | | | | | Reaper has access to threadsafe active? call
| * | | | Reaper has access to threadsafe active? callKevin Casey2014-02-082-2/+2
| | | | |
* | | | | Merge pull request #13978 from Fortisque/kevin/validation_context_for_childrenAaron Patterson2014-02-083-0/+26
|\ \ \ \ \ | | | | | | | | | | | | context in validation goes through has many relationship
| * | | | | context in validation goes through has many relationshipKevin Casey2014-02-083-0/+26
| | | | | |
* | | | | | Skips linked folder tests if symlink is invalidMikko Johansson2014-02-091-2/+6
| |/ / / / |/| | | |
* | | | | Add test case for autosave HasMany with accepts_nested_attributes.Lauro Caetano2014-02-083-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It should not save the parent record when the nested attributes are invalid. Test case to cover #8194.
* | | | | Adjust test value so that timezone has no effectAndrew White2014-02-071-1/+1
|/ / / / | | | | | | | | | | | | | | | | | | | | If the test is run in a timezone that is behind UTC it fails because the time generated is ahead of 0000-01-01 00:00:00. Just increase the time subtracted so that timezone has no effect.
* | | | Return sized enumerator from Batches#find_eachMarc-Andre Lafortune2014-02-052-0/+14
| | | |
* | | | Return sized enumerator from Batches#find_in_batchesMarc-Andre Lafortune2014-02-051-0/+10
| | | |
* | | | Strengthen test with different nb of rows and columnsMarc-Andre Lafortune2014-02-051-2/+4
| | | |
* | | | Merge pull request #13949 from vajrasky/fix_typo_column_definition_testYves Senn2014-02-051-2/+2
|\ \ \ \ | | | | | | | | | | Fixed typos in column_definition_test.rb.
| * | | | Fixed typo in column_definition_test.rb.Vajrasky Kok2014-02-051-2/+2
| | | | |
* | | | | docs, AR already auto-detects primary keys. Closes #13946. [ci skip]Yves Senn2014-02-052-3/+5
|/ / / / | | | | | | | | | | | | | | | | This behavior was introduced since Rails 3.1 (207f266ccaaa9cd04cd2a7513ae5598c4358b510) but the docs were still out of date.
* | | | Merge pull request #13935 from arthurnn/fix_12566Rafael Mendonça França2014-02-041-0/+15
|\ \ \ \ | | | | | | | | | | Make sure transaction state resets after commit
| * | | | Make sure transaction state resets after commitArthur Neves2014-02-031-0/+15
| | | | | | | | | | | | | | | | | | | | [fixes #12566]
* | | | | Merge pull request #13899 from ↵Rafael Mendonça França2014-02-041-0/+10
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | Fortisque/kevin/active_record_HABTM_with_belongs_to destruction errors out on HABTM w/out primary key
| * | | | fix HABTM w/out primary key errors on destructionKevin Casey2014-02-021-0/+10
| | | | |
* | | | | pass `habtm :autosave` to underlying `hm:t` association. Closes #13923.Yves Senn2014-02-032-7/+27
| | | | |
* | | | | Remove warnings for already defined methodsRafael Mendonça França2014-02-011-1/+3
| | | | |
* | | | | Merge pull request #13688 from jbaudanza/psql-index-existsRafael Mendonça França2014-02-011-0/+12
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PostgreSQL implementation of SchemaStatements#index_name_exists? Conflicts: activerecord/CHANGELOG.md
| * | | | | psql implementation of #index_name_exists?Jonathan Baudanza2014-01-161-0/+12
| | | | | |
* | | | | | Fixes issue with parsing whitespace content back from database - fixes #13907Mauricio Linhares2014-02-011-0/+12
| |/ / / / |/| | | |
* | | | | Merge pull request #13896 from laurocaetano/dangerous_association_namesCarlos Antonio da Silva2014-01-313-0/+30
|\ \ \ \ \ | | | | | | | | | | | | Associations now raises `ArgumentError` on name conflicts. Closes #13217.
| * | | | | Associations now raise `ArgumentError` on name conflicts.Lauro Caetano2014-01-313-0/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Dangerous association names conflicts include instance or class methods already defined by `ActiveRecord::Base`.
* | | | | | Remove unused variable.Tim Fenney2014-01-311-1/+1
|/ / / / /
* | | | | Merge pull request #13859 from huoxito/let-it-goRafael Mendonça França2014-01-301-0/+10
|\ \ \ \ \ | | | | | | | | | | | | Let `unscope` ignore non Arel scope.where_values
| * | | | | Let `unscope` ignore non Arel scope.where_valuesWashington Luiz2014-01-301-0/+10
| | | | | |
* | | | | | Merge pull request #13886 from arthurnn/fix_relation_arelRafael Mendonça França2014-01-301-0/+23
|\ \ \ \ \ \ | |/ / / / / |/| | | | | Fix regression on .select method
| * | | | | Fix regression on `.select_*` methods.Arthur Neves2014-01-301-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was a common pattern: ``` query = author.posts.select(:title) connection.select_one(query) ``` However `.select` returns a ActiveRecord::AssociationRelation, which has the bind information, so we can use that to get the right sql query. Also fix select_rows on postgress and sqlite3 that were not using the binds [fixes #7538] [fixes #12017] [related #13731] [related #12056]
* | | | | | Remove automatic removal of Date/Time stubs after each test caseRafael Mendonça França2014-01-301-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This behavior is only work out-of-box with minitest and also add a downside to run after each test case, even if we don't used the travel or travel_to methods
* | | | | | Merge pull request #13878 from marcandre/leave_my_options_aloneRafael Mendonça França2014-01-301-0/+6
|\ \ \ \ \ \ | |/ / / / / |/| | | | | find_in_batches should not mutate its argument
| * | | | | find_in_batches should not mutate its argumentMarc-Andre Lafortune2014-01-291-0/+6
| | | | | |
* | | | | | AestheticRafael Mendonça França2014-01-291-6/+7
| | | | | |
* | | | | | Fixing issue with activerecord serialization not being able to dump a record ↵Mauricio Linhares2014-01-291-0/+23
|/ / / / / | | | | | | | | | | | | | | | after loading it from YAML - fixes #13861
* | | | | Merge pull request #13201 from marcandre/find_in_batch_enumeratorRafael Mendonça França2014-01-291-0/+13
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `find_in_batches` now returns an `Enumerator` Conflicts: activerecord/CHANGELOG.md activerecord/lib/active_record/relation/batches.rb
| * | | | | `find_in_batches` now returns an `Enumerator` when called without a block, ↵Marc-Andre Lafortune2013-12-061-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | so that it can be chained with other `Enumerable` methods.
* | | | | | `enum` now raises on "dangerous" name conflictsGodfrey Chan2014-01-291-0/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Dangerous name conflicts includes instance or class method conflicts with methods defined within `ActiveRecord::Base` but not its ancestors, as well as conflicts with methods generated by other enums on the same class. Fixes #13389.
* | | | | | `scope` now raises on "dangerous" name conflictsGodfrey Chan2014-01-291-0/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Similar to dangerous attribute methods, a scope name conflict is dangerous if it conflicts with an existing class method defined within `ActiveRecord::Base` but not its ancestors. See also #13389. *Godfrey Chan*, *Philippe Creux*
* | | | | | Fixed a bug in AR::Base#respond_to?Godfrey Chan2014-01-291-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before: >> ActiveRecord::Base.respond_to?(:find_by_something) NoMethodError: undefined method `abstract_class?' for Object:Class After: >> ActiveRecord::Base.respond_to?(:find_by_something) => false
* | | | | | Correctly send the string given to lock! and reload(:lock) to the lock scope ↵Mauricio Linhares2014-01-291-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - fixes #13788 As per the documentation at lock!, if the :lock option is a string it should use the given SQL to generate the lock statement.