aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test
Commit message (Collapse)AuthorAgeFilesLines
* Fixing multi-word automatic inverse detection.wangjohn2013-08-153-0/+17
| | | | | 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
* Use the proper encoding comment on the fileRafael Mendonça França2013-08-061-0/+2
|
* 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-062-0/+8
|
* Merge pull request #11767 from kassio/master-load-fixtures-from-linked-folderRafael Mendonça França2013-08-054-2/+15
|\ | | | | Load fixtures from linked folders[master]
| * load fixtures from linked foldersKassio Borges2013-08-054-2/+15
| |
* | 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
* | Merge pull request #11740 from Karunakar/self_tableRafael Mendonça França2013-08-031-2/+2
|\ \ | | | | | | Changing the def self.table_name to self.table_name in the column_name.r...
| * | Changing the def self.table_name to self.table_name in the column_name.rbKarunakar (Ruby)2013-08-031-2/+2
| | |
* | | 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
| |
* | this code is dead, removingAaron Patterson2013-08-011-6/+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
| * | Add ability to specify how a class is converted to Arel predicatesgrif2013-07-281-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds the ability for rails apps or gems to have granular control over how a domain object is converted to sql. One simple use case would be to add support for Regexp. Another simple case would be something like the following: class DateRange < Struct.new(:start, :end) def include?(date) (start..end).cover?(date) end end class DateRangePredicate def call(attribute, range) attribute.in(range.start..range.end) end end ActiveRecord::PredicateBuilder.register_handler(DateRange, DateRangePredicate.new) More complex cases might include taking a currency object and converting it from EUR to USD before performing the query. By moving the existing handlers to this format, we were also able to nicely refactor a rather nasty method in PredicateBuilder.
* | | Merge pull request #11651 from ↵Carlos Antonio da Silva2013-07-291-1/+1
|\ \ \ | | | | | | | | | | | | | | | | neerajdotname/log_should_mimick_original_log_method interceptor should mimick original method
| * | | interceptor should mimick original methodNeeraj Singh2013-07-291-1/+1
| |/ / | | | | | | | | | This fix also makes the test order independent.
* | | Merge pull request #11649 from ↵Carlos Antonio da Silva2013-07-291-30/+20
|\ \ \ | | | | | | | | | | | | | | | | neerajdotname/use_method_with_active_record_default_timezone use method with_active_record_default_timezone