aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases
Commit message (Collapse)AuthorAgeFilesLines
* Adding deprecation assertions for proper_table_name.wangjohn2013-08-241-7/+21
| | | | This prevents deprecation warnings from popping up.
* Making proper_table_name take in options.wangjohn2013-08-221-1/+28
| | | | | | | | | | | The options will specify the prefix and the suffix. Also, I'm moving the method to be an instance method on the +Migration+ instance. This makes more sense than being a class method on the +Migrator+ class because the only place that uses it is on a +Migration+ instance (in a method_missing hook). The logic for the Migrator shouldn't be doing any work to calculate the table name, it should be the Migration itself. Also made some small indentation fixes.
* Avoid compiling regexs in AR::Base.respond_to?John Hawthorn2013-08-211-0/+5
| | | | | Caches the patterns of ActiveRecord::DynamicMatchers in a class instance variable.
* Merge pull request #11922 from Empact/string-confusionYves Senn2013-08-201-1/+1
|\ | | | | Stop interpreting SQL 'string' columns as :string type.
| * Stop interpreting SQL 'string' columns as :string type.Ben Woosley2013-08-171-1/+1
| | | | | | | | | | | | | | | | SQL doesn't have a string type, and interpreting 'string' as text is contrary to at least SQLite3's behavior: "Note that a declared type of 'STRING' has an affinity of NUMERIC, not TEXT." http://www.sqlite.org/datatype3.html
* | let AR::FinderMethods#exists? return singletons in all cases [closes #11592]Xavier Noria2013-08-191-27/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a regression. The documentation said in its introduction paragraph that the method returns truthy/falsy, but then below it was said that if there were no arguments you'd get `true` or `false`. Also when the argument is exactly `false` a singleton is documented to be returned. The method was not returning the singletons so it didn't conform to those special cases. The best solution here seems to be to just return singletons in all cases. This solution is backwards compatible. Also, the contract has been revised because it has no sense that the predicate varies that way depending on the input. I bet the previous contract was just an accident, not something mixed on purpose. Conflicts: activerecord/lib/active_record/relation/finder_methods.rb activerecord/test/cases/finder_test.rb
* | Merge branch 'master' of github.com:rails/docrailsVijay Dev2013-08-172-6/+1
|\ \ | |/ |/| | | | | | | | | | | Conflicts: actionview/README.rdoc activerecord/lib/active_record/migration.rb guides/source/development_dependencies_install.md guides/source/getting_started.md
| * Revert "Merge branch 'master' of github.com:rails/docrails"Vijay Dev2013-08-172-6/+1
| | | | | | | | | | | | | | This reverts commit 70d6e16fbad75b89dd1798ed697e7732b8606fa3, reversing changes made to ea4db3bc078fb3093ecdddffdf4f2f4ff3e1e8f9. Seems to be a code merge done by mistake.
* | Fixing multi-word automatic inverse detection.wangjohn2013-08-151-0/+14
| | | | | | | | | | Currently, ActiveRecord models with multiple words cannot have their inverse associations detected automatically.
* | Merge pull request #11574 from jetthoughts/11552_rescue_on_invalid_inet_assignYves Senn2013-08-141-0/+14
|\ \ | | | | | | Fix assign ip address with invalid values raise exception
| * | Rescue invalid ip address exceptions on assign.Paul Nikitochkin2013-08-141-0/+14
| | | | | | | | | | | | In order that set attribute should not be bang method
* | | Removed redundant asserts for assigns attribute operationPaul Nikitochkin2013-08-141-28/+28
|/ /
* | test-case for fixed issue #11870.Yves Senn2013-08-141-0/+4
| |
* | using assert_not instead of refuteRajarshi Das2013-08-132-4/+4
| |
* | Use assert_not rather than refutePiotr Sarnacki2013-08-121-5/+5
| |
* | Refactor NestedAttributesWithCallbacksTest for clarityBen Woosley2013-08-121-67/+66
| | | | | | | | | | | | | | 1) Use `assert` and `refute` where possible. 2) Separately include the setup, subject, and assertions in each test - don't hide the tested call in an assertion method. 3) Name things based on their role rather than incidental facts about them - e.g. `@bird[1]` -> `bird_to_destroy`. `bird2_deletion_attributes` -> `destroy_bird_attributes`. 4) Use more succinct naming where possible - e.g. `birds_with_callback` -> `birds_with_add`, `@pirate_with_two_birds` -> `@pirate`
* | Fix interactions between :before_add callbacks and nested attributes assignmentDr.(USA) Joerg Schray2013-08-121-0/+145
| | | | | | | | | | Issue #1: :before_add callback is called when nested attributes assignment assigns to existing record if the association is not yet loaded Issue #2: Nested Attributes assignment does not affect the record in the association target when callback triggers loading of the association
* | chmod -xAkira Matsuda2013-08-121-0/+0
| |
* | Make 'enable_extension' revertibleEric Tipton2013-08-101-0/+10
| | | | | | | | | | If 'enable_extension' is used in a migration's 'change' method, use 'disable_extension' on down migration (and vice-versa).
* | Remove redundant `string_to_binary` from type-castingVipul A M2013-08-091-19/+0
| |
* | Merge pull request #11802 from ko1/fix_field_encoding_for_mysqlAaron Patterson2013-08-071-2/+0
|\ \ | | | | | | Set field encoding to client_encoding for mysql adapter.
| * | Set field encoding to client_encoding for mysql adapter.Koichi Sasada2013-08-081-2/+0
| | |
* | | cast hstore values on write to be consistent with reading from the db.Yves Senn2013-08-081-0/+7
|/ /
* | use `skip` so we can see what tests are not runAaron Patterson2013-08-081-6/+5
| |
* | Fix multidimensional PG arrays containing non-string itemsYves Senn2013-08-071-14/+19
| |
* | skip `test_unicode_column_name` for `MysqlAdapter`.Yves Senn2013-08-071-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit fixes the build but we need to further investigate the root cause, to see if it can be fixed. The test fails under `MysqlAdapter` with: ``` ActiveRecord::UnknownAttributeError: unknown attribute: なまえ ``` The root cause is that the returned column names from the adapter have the wrong encoding: ```ruby columns = Weird.columns_hash.keys columns # => ["id", "a$b", "\xE3\x81\xAA\xE3\x81\xBE\xE3\x81\x88", "from"] columns.map(&:encoding) # => [#<Encoding:ASCII-8BIT>, #<Encoding:ASCII-8BIT>, #<Encoding:ASCII-8BIT>, #<Encoding:ASCII-8BIT>] columns.map {|c| c.dup.force_encoding "utf-8"} # => ["id", "a$b", "なまえ", "from"] ``` From what I can tell the MySQL variables are fine: ``` ActiveRecord::Base.connection.execute("show variables") ... character_set_client utf8 character_set_connection utf8 character_set_database utf8 character_set_filesystem binary character_set_results utf8 character_set_server utf8 character_set_system utf8 character_sets_dir /usr/local/Cellar/mysql/5.5.29/share/mysql/charsets/ collation_connection utf8_general_ci collation_database utf8_unicode_ci collation_server utf8_general_ci ... ```
* | test to express that we can't turn non-array columns to array columns.Yves Senn2013-08-061-0/+9
| | | | | | | | Closes #11062
* | Fix indentationRafael Mendonça França2013-08-061-3/+2
| |
* | asakusa.rb hack night!Aaron Patterson + Akira Matsuda2013-08-062-0/+5
| | | | | | | | Fix in-memory tests
* | adding a weird test caseAaron Patterson2013-08-061-0/+7
| |
* | Merge pull request #11767 from kassio/master-load-fixtures-from-linked-folderRafael Mendonça França2013-08-051-2/+2
|\ \ | | | | | | Load fixtures from linked folders[master]
| * | load fixtures from linked foldersKassio Borges2013-08-051-2/+2
| | |
* | | Create sqlite3 directory if not presentschneems2013-08-051-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the `db/` directory is not present on a remote machine it will blow up in unexpected ways with error messages that do not indicate there is a missing directory: ``` SQLite3::CantOpenException: unable to open database file ``` This PR checks to see if a directory exists for the sqlite3 file and if not creates it for you. This PR is an alternative to #11692 as suggested by @josevalim
* | | fix for postgresql failing test in localKarunakar (Ruby)2013-08-041-1/+1
| | |
* | | add a test for concat on hm:t associationsAaron Patterson2013-08-021-0/+7
|/ /
* | Merge pull request #11455 from antonio/fix_enable_extension_not_being_definedRafael Mendonça França2013-08-022-0/+24
|\ \ | | | | | | Define enable_extension method to prevent undefined method error
| * | Define enable_extension method to prevent undefined method errorAntonio Santos2013-08-022-0/+24
| | | | | | | | | | | | | | | | | | | | | When mixing postgresql and another adapter like sqlite3 (for dev and test respectively), the task `db:test:prepare` will fail due to the `enable_extension` method not being defined in the abstract adapter. This patch simply adds an empty definition to prevent it.
* | | Use assert_nil instead of testing for equalityCarlos Antonio da Silva2013-08-021-2/+1
| | |
* | | Removed redundant xml override from pg adapterPaul Nikitochkin2013-08-021-0/+39
| | | | | | | | | | | | Closes: #11706
* | | Change test_registering_new_handlers and test_count_on_invalid_columns_raisesYasuo Honda2013-08-022-2/+2
| | | | | | | | | | | | | | | tesetcases assertion to case insensitive because Oracle database adapter handles table name in uppercase.
* | | association builder classes no longer need the modelAaron Patterson2013-08-011-1/+1
| | | | | | | | | | | | | | | decouple the builder classes from the model. Builder objects should be easier to reuse now.
* | | no need to define the constant twiceAaron Patterson2013-08-011-1/+0
| | |
* | | assert that constants have been set rather than the namesAaron Patterson2013-08-011-6/+8
| | |
* | | do is_a? tests on assignment so runtime is fasterAaron Patterson2013-07-311-2/+2
| | |
* | | Merge pull request #11668 from neerajdotname/make_test_order_independent_2Rafael Mendonça França2013-07-302-3/+6
|\ \ \ | | | | | | | | Make test order independent
| * | | assert_no_queries should ignore certain sqlsNeeraj Singh2013-07-301-1/+3
| | | | | | | | | | | | | | | | | | | | postgresql test if randomly executed then executes "SHOW max_identifier_length". Hence the need to ignore certain predefined sqls that deal with system calls.
| * | | assert_no_queries should allow to ignore some queriesNeeraj Singh2013-07-301-2/+3
| | | |
* | | | Merge branch 'revert-order-prepending'Rafael Mendonça França2013-07-304-15/+15
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Conflicts: activerecord/CHANGELOG.md
| * | | | Revert change on ActiveRecord::Relation#order method that prepends newRafael Mendonça França2013-07-294-15/+15
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | order on the old ones The previous behavior added a major backward incompatibility since it impossible to have a upgrade path without major changes on the application code. We are taking the most conservative path to be consistent with the idea of having a smoother upgrade on Rails 4. We are reverting the behavior for what was in Rails 3.x and, if needed, we will implement a new API to prepend the order clauses in Rails 4.1.
* | | | Merge pull request #10673 from sgrif/masterRafael Mendonça França2013-07-291-0/+14
|\ \ \ \ | |/ / / |/| | | Add ability to specify how a class is converted to Arel predicate when passed to where