aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/base_test.rb
Commit message (Collapse)AuthorAgeFilesLines
* Fix table_name in ActiveRecord with more than one abstract ancestorsPiotr Sarnacki2012-01-121-0/+11
| | | | | | | | | | | | | | | | | When subclassing abstract_class table_name should be always computed based on class name, no matter if superclass is subclassing base or another abstract_class. So: class FirstAbstract < ActiveRecord::Base self.abstract_class = true end class SecondAbstract < FirstAbstract self.abstract_class = true end class Post < SecondAbstract self.table_name #=> 'posts' (not 'second_abstracts') end
* Support establishing connection on ActiveRecord::Model.Jon Leighton2011-12-281-4/+15
| | | | | This is the 'top level' connection, inherited by any models that include ActiveRecord::Model or inherit from ActiveRecord::Base.
* Ensure attribute methods are included after all the AR stuffJon Leighton2011-12-241-0/+1
|
* Fix #4046.Jon Leighton2011-12-231-0/+1
|
* serialize fails on subclassAlvaro Bautista2011-12-231-1/+21
|
* remove deprecated set and original methods for table_name, primary_key, etcSergey Nartimov2011-12-211-161/+0
|
* Removed test which works only < 1.9Arun Agrawal2011-12-211-16/+0
|
* No Ruby 1.8 stuff. No more checks in code.Arun Agrawal2011-12-211-15/+0
|
* remove more uses of deprecated loggersKarunakar (Ruby)2011-12-211-2/+2
|
* remove more uses of deprecated logger methodsAaron Patterson2011-12-191-4/+2
|
* Don't store defaults in the schema cacheJon Leighton2011-12-161-0/+1
|
* Cache columns at the model level.Jon Leighton2011-12-161-2/+2
| | | | Allows two models to use the same table but have different primary keys.
* Split out most of the AR::Base code into separate modules :cake:Jon Leighton2011-12-151-13/+0
|
* Fix sequence name with abstract classes.Edgars Beigarts2011-12-041-0/+10
|
* Create method with known identifier then alias into place.Jon Leighton2011-12-011-0/+2
| | | | | | | | This means we never have to rely on define_method (which is slower and uses more memory), even when we have attributes containing characters that are not allowed in standard method names. (I am mainly changing this because the duplication annoys me, though.)
* Deprecated `define_attr_method` in `ActiveModel::AttributeMethods`Jon Leighton2011-11-291-21/+12
| | | | | This only existed to support methods like `set_table_name` in Active Record, which are themselves being deprecated.
* Deprecate set_primary_key in favour of self.primary_key=Jon Leighton2011-11-291-2/+26
|
* Make sure the original_foo accessor still works (but deprecated) if we are ↵Jon Leighton2011-11-291-7/+55
| | | | using self.foo=
* Deprecate set_sequence_name in favour of self.sequence_name=Jon Leighton2011-11-291-2/+6
|
* Add tests for set_sequence_name etcJon Leighton2011-11-291-0/+22
|
* Deprecate set_inheritance_column in favour of self.inheritance_column=Jon Leighton2011-11-291-2/+7
|
* Deprecate set_table_name in favour of self.table_name= or defining your own ↵Jon Leighton2011-11-291-7/+20
| | | | method.
* Merge pull request #3636 from joshsusser/masterJon Leighton2011-11-291-0/+9
|\ | | | | association methods are now generated in modules
| * use GeneratedFeatureMethods module for associationsJosh Susser2011-11-271-0/+9
| |
* | `ActiveRecord::Base#becomes` should retain the errors of the original object.James Adam2011-11-161-0/+8
|/ | | | This commit contains a simple failing test that demonstrates the behaviour we expect, and a fix. When using `becomes` to transform the type of an object, it should retain any error information that was present on the original instance.
* Add ActiveRecord::Relation#uniq for toggling DISTINCT in the SQL queryJon Leighton2011-11-051-0/+6
|
* Revert "Raise error on unknown primary key."Jon Leighton2011-10-051-0/+4
| | | | This reverts commit ee2be435b1e5c0e94a4ee93a1a310e0471a77d07.
* Raise error on unknown primary key.Jon Leighton2011-10-051-4/+0
| | | | | If we don't have a primary key when we ask for it, it's better to fail fast. Fixes GH #2307.
* Rename first_or_new to first_or_initialize.Jon Leighton2011-09-131-10/+2
| | | | | For consistency with find_or_initialize_by. Also remove first_or_build alias.
* Add missing require in base_test.rb, fixes isolated testGuillermo Iguaran2011-09-091-0/+1
|
* Merge pull request #2757 from andmej/first_or_create_pull_requestJon Leighton2011-09-081-0/+31
|\ | | | | Add first_or_create family of methods to Active Record
| * Adding first_or_create, first_or_create!, first_or_new and first_or_build to ↵Andrés Mejía2011-08-301-0/+31
| | | | | | | | | | | | | | | | | | | | Active Record. This let's you write things like: User.where(:first_name => "Scarlett").first_or_create!(:last_name => "Johansson", :hot => true) Related to #2420.
* | Disable active record marshalling tests on Ruby 1.8.7 on Travis CI, as they ↵Jon Leighton2011-09-061-0/+15
| | | | | | | | have been failing intermittently for a long while due to what appears to be a Ruby bug. If anyone has the skills/expertise/time to debug this, please speak to the Travis guys.
* | Need to add here to pass the testArun Agrawal2011-09-031-0/+1
|/ | | As in previous commit it's removed.
* Merge pull request #2750 from rsim/fix_test_column_names_are_escaped_for_oracleJon Leighton2011-08-301-1/+7
| | | | Fix test column names are escaped for oracle
* do not compute table names for abstract classesAkira Matsuda2011-08-241-0/+4
|
* prevent sql injection attacks by escaping quotes in column namesAaron Patterson2011-08-161-0/+17
|
* Work around for lolruby bug. (Read on for explanation.)Jon Leighton2011-08-131-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | We were experiencing CI test failures, for example: * 3-1-stable: http://travis-ci.org/#!/rails/rails/builds/79473/L407 * master: http://travis-ci.org/#!/rails/rails/builds/79507/L80 These failures only happened on 1.8.7-p352, and we were only able to reproduce on the Travis CI VM worker. We even tried creating a new 32 bit Ubuntu VM and running the tests on that, and it all worked fine. After some epic trial and error, we discovered that replacing the following: fuu = Marshal.load(Marshal.dump(fuu)) with: marshalled = Marshal.dump(fuu) fuu = Marshal.load(marshalled) seemed to prevent the failure. We have NO IDEA why this is. If anyone has some great insight to contribute then that is welcome. Otherwise, hopefully this will just help us get the CI green again. Many thanks to @joshk for help with sorting this out.
* Fully marshal AR::Base objects. Fixes #2431.Jon Leighton2011-08-081-0/+13
|
* Make it the responsibility of the connection to hold onto an ARel visitor ↵Jon Leighton2011-08-081-19/+0
| | | | for generating SQL. This improves the code architecture generally, and solves some problems with marshalling. Adapter authors please take note: you now need to define an Adapter.visitor_for method, but it degrades gracefully with a deprecation warning for now.
* remove deprication warning: ambiguous first argument; put parentheses or ↵Vishnu Atrai2011-07-261-1/+1
| | | | even spaces
* Revert "allow select to have multiple arguments"Piotr Sarnacki2011-07-261-5/+0
| | | | | | | This reverts commit 04cc446d178653d362510e79a22db5300d463161. I reverted it because apparently we want to use: select([:a, :b]) instead of select(:a, :b), but there was no tests for that form.
* allow select to have multiple argumentsSławosz Sławiński2011-07-261-0/+5
|
* use existing model for testing Base.create with #after_initializeGabriel Horner2011-07-241-9/+7
|
* simplify and be more explicit about create and after_initialize testsGabriel Horner2011-07-241-18/+10
|
* fix after_initialize edge case (close #2074 and close #2175)Les Fletcher2011-07-241-0/+23
| | | | fix behavior when after_initialize is defined and a block is passed to Base.create
* Merge pull request #2086 from amatsuda/date_multiparameter_nilXavier Noria2011-07-231-24/+9
|\ | | | | convert multiple Date parameters into a nil if any of its bits were blank
| * convert multiple Date parameters into a nil if any of its bits were blankAkira Matsuda2011-07-151-24/+9
| |
* | bigdecimal should be typecast to a float on sqlite3. fixes #2162Aaron Patterson2011-07-201-0/+11
|/
* Fix and unit test for https://github.com/rails/rails/issues/2059Evan Light2011-07-141-2/+27
| | | | | | | | | | | | Cache key was incorrectly using timezone-dependent record#updated_at when it should be using a timezone-independent value to generate the cache key Minor refactoring to cache_key timezone test Closes #2059 Adds a test to validate the format of the cache_key for nil and present updated_at values Correctly handles updated_at == nil