aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | | Memoize user provided defaults before type castingSean Griffin2016-03-241-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a proc is given as a default value, the form builder ends up displaying `Proc#to_s` when the default is used. That's because we didn't handle the proc until type casting. This issue technically can occur any time that a proc is the value before type casting, but in reality the only place that will occur is when a proc default is provided through the attributes API, so the best place to handle this edge case is there. I've opted to memoize instead of just moving the `Proc#call` up, as this made me realize that it could potentially interact very poorly with dirty checking. The code here is a little redundant, but I don't want to rely on how `value_before_type_cast` is implemented in the super class, even if it's just an `attr_reader`. Fixes #24249 Close #24306
* | | | | | Make 'migrate' clear the schema cache afterwardChris Arcand2016-03-241-2/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Without clearing the caches afterward, removals done in migrations would not be reflected in a separate task in the same process. That is, given a table with a migration to remove a column, the schema cache would still reflect that a table has that in something such as the 'db:seed' task: `rake db:migrate db:seed` (A common thing to do in a script for a project ala `bin/setup`) vs `rake db:migrate && rake db:seed` (Two processes) The first would not reflect that the column was removed. The second would (cache reset).
* | | | | | Change for `ActiveRecord::Migration.[]` to raise `ArgumentError` instead of ↵yui-knk2016-03-241-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `RuntimeError` The error is raised because user passed invalid version number to a public api of `ActiveRecord`, so `ArgumentError` is more suitable. And add a test case checking if an error is raised when unknown migration version is passed, because these test cases are not implemented.
* | | | | | Merge pull request #24167 from ↵Jeremy Daer2016-03-231-25/+25
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | kamipo/append_sql_mode_instead_of_overwriting_in_strict_mode Append sql_mode instead of overwriting in strict mode
| * | | | | Append sql_mode instead of overwriting in strict modeRyuta Kamizono2016-03-131-25/+25
| |/ / / / | | | | | | | | | | | | | | | For keep the default SQL mode.
* | | | | Merge pull request #22518 from ↵Arthur Nogueira Neves2016-03-181-0/+17
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | RochesterinNYC/better-error-message-for-includes-relations-missing Improve error message for missing relations for includes and eager_load
| * | | | | Improve clarity of error message for missing includes and eager_loadJames Wen2016-01-281-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | relations
* | | | | | Merge pull request #24201 from rails/rake-db-createRafael França2016-03-171-6/+14
|\ \ \ \ \ \ | |_|_|_|_|/ |/| | | | | Creates development and test databases in db:migrate task
| * | | | | Creates development and test databases in db:migrate taskRafael Mendonça França2016-03-141-6/+14
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts a334425caff9b2140d5e99fcfc2eb8c4ab10bdfa. The main reason is that now the workflow is inconsistent when using spring. When using spring `RAILS_ENV` is always set, so only one database is created. This means that in development `bin/rake db:create` and `bundle exec rake db:create` have different results. It also breaks the `bin/setup` script since `bin/rake db:setup db:test:prepare` will fail.
* / | | | Remove log-related stuff from ActiveSupport::DependenciesAaron Ang2016-03-151-5/+0
|/ / / / | | | | | | | | | | | | | | | | In this patch, all log-related stuff in `ActiveSupport::Dependencies` is removed because the logging is no longer useful.
* | | | Merge pull request #23797 from ↵Rafael França2016-03-111-0/+9
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | kamipo/case_sensitive_comparison_for_non_string_column The BINARY Operator is only needed for string columns
| * | | | The BINARY Operator is only needed for string columnsRyuta Kamizono2016-02-221-0/+9
| | | | | | | | | | | | | | | | | | | | Follow up to #13040.
* | | | | Fix test failures caused by #23958Sean Griffin2016-03-111-1/+1
| | | | | | | | | | | | | | | | | | | | I'm unsure how this passed CI in the pull request.
* | | | | Merge pull request #24054 from kamipo/extract_default_primary_keyRafael França2016-03-111-2/+2
|\ \ \ \ \ | | | | | | | | | | | | Extract `default_primary_key?` to refactor `column_spec_for_primary_key`
| * | | | | Extract `default_primary_key?` to refactor `column_spec_for_primary_key`Ryuta Kamizono2016-03-111-2/+2
| | | | | |
* | | | | | Merge pull request #24087 from kamipo/dump_bigint_instead_of_integer_limit_8Rafael França2016-03-112-7/+7
|\ \ \ \ \ \ | | | | | | | | | | | | | | Dump `bigint` instead of `integer` with `limit: 8` for schema dumper
| * | | | | | Dump `bigint` instead of `integer` with `limit: 8` for schema dumperRyuta Kamizono2016-03-112-7/+7
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before: ```ruby create_table "big_numbers", force: :cascade do |t| t.integer "bigint_column", limit: 8 end ``` After: ```ruby create_table "big_numbers", force: :cascade do |t| t.bigint "bigint_column" end ```
* | | | | | Merge pull request #23677 from kamipo/passing_table_name_to_column_initializeRafael França2016-03-111-0/+26
|\ \ \ \ \ \ | |/ / / / / |/| | | | | Passing `table_name` to `Column#initialize` to avoid `instance_variable_set`
| * | | | | Initialize `column.table_name` immediately for `column.serial?` correctly ↵Ryuta Kamizono2016-03-081-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | working Currently the results of `column.serial?` is not correct. For `column.serial?` correctly working, initialize `column.table_name` immediately.
* | | | | | Merge pull request #23958 from kamipo/fix_bigserial_appears_with_limit_8Rafael França2016-03-111-2/+2
|\ \ \ \ \ \ | | | | | | | | | | | | | | Fix bigserial appears with limit 8 for schema dumper
| * | | | | | Fix bigserial appears with limit 8 for schema dumperRyuta Kamizono2016-03-041-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before: ```ruby create_table "postgresql_big_serials", force: :cascade do |t| t.bigserial "seq", limit: 8, null: false end ``` After: ```ruby create_table "postgresql_big_serials", force: :cascade do |t| t.bigserial "seq", null: false end ```
* | | | | | | Merge pull request #23666 from meinac/fix_abstract_default_scope_bugSean Griffin2016-03-081-0/+12
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Execute default_scope defined by abstract class within the scope of subclass
| * | | | | | | Execute default_scope defined by abstract class within the scope of subclassMehmet Emin İNAÇ2016-03-081-0/+12
| | |/ / / / / | |/| | | | |
* / | | | | | add test case for schema dumping of PG bytea columns.Yves Senn2016-03-081-0/+9
|/ / / / / /
* | | | | | Merge pull request #23922 from rthbound/fix-funny-spellingArthur Nogueira Neves2016-03-071-2/+2
|\ \ \ \ \ \ | | | | | | | | | | | | | | Fixes funny spelling in an AR test
| * | | | | | Fixes funny spellingRyan T. Hosford2016-02-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - marked_for_destroyal -> marked_for_destruction
* | | | | | | remove outdated comment [ci skip]yuuji.yaginuma2016-03-051-6/+0
| |/ / / / / |/| | | | | | | | | | | | | | | | | Currently use minitest mock, mocha is not used.
* | | | | | don't treat all associations with extensions as instance dependent.Yves Senn2016-03-031-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Closes #23934. This is a forward port of ac832a43b4d026dbad28fed196d2de69ec9928ac Previously the scope of all associations with extensions were wrapped in an instance dependent proc. This made it impossible to preload such associations.
* | | | | | Deprecate `{insert|update|delete}_sql` in `DatabaseStatements`Ryuta Kamizono2016-03-023-59/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Originally, `{insert|update|delete}_sql` is protected methods. We can use the `{insert|update|delete}` public methods instead.
* | | | | | Merge pull request #23932 from arthurnn/arthurnn/remove_load_pathsArthur Nogueira Neves2016-03-011-2/+0
|\ \ \ \ \ \ | | | | | | | | | | | | | | Remove load_paths file
| * | | | | | Remove load_paths fileArthur Neves2016-02-271-2/+0
| | | | | | |
* | | | | | | Remove duplicated `test_` prefix [ci skip]Ryuta Kamizono2016-03-021-1/+1
| | | | | | |
* | | | | | | Merge pull request #23959 from kamipo/add_test_primary_key_should_be_not_nullRafael França2016-03-011-3/+4
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Add a test for primary key should be not null
| * | | | | | | Add a test for primary key should be not nullRyuta Kamizono2016-02-291-3/+4
| |/ / / / / /
* | | | | | | Merge pull request #23953 from ↵Rafael França2016-03-0111-135/+95
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | kamipo/fix_tests_failure_with_prepared_statements_false Fix tests failure with `prepared_statements: false`
| * | | | | | | Remove unnecessary namespaces in `explain_test.rb`Ryuta Kamizono2016-02-293-40/+28
| | | | | | | |
| * | | | | | | Fix tests failure with `prepared_statements: false`Ryuta Kamizono2016-02-2910-97/+69
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some tests does not work for unprepared statements. Add `if ActiveRecord::Base.connection.prepared_statements` and fix a regex for fix tests failure with `prepared_statements: false`.
* | | | | | | Merge pull request #23954 from kamipo/fix_undefined_method_fieldsRafael França2016-03-011-0/+18
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Fix `NoMethodError: undefined method `fields' for nil:NilClass`
| * | | | | | | Fix `NoMethodError: undefined method `fields' for nil:NilClass`Ryuta Kamizono2016-02-291-0/+18
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently `exec_query` raises `NoMethodError` when executing no result queries (`INSERT`, `UPDATE`, `DELETE`, and all DDL) in mysql2 adapter. ``` irb(main):002:0> conn.execute("create table t(a int)") (43.3ms) create table t(a int) => nil irb(main):003:0> conn.execute("insert into t values (1)") (19.3ms) insert into t values (1) => nil irb(main):004:0> conn.exec_query("insert into t values (1)") SQL (28.6ms) insert into t values (1) NoMethodError: undefined method `fields' for nil:NilClass ```
* | | | | | | Merge pull request #23417 from sgringwe/masterRafael Mendonça França2016-03-011-0/+36
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Add option to error on ignored order or limit
| * | | | | | | Add initial support for allowing an error on order or limit of queries being ↵Scott Ringwelski2016-02-021-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ignored in batches add some documentation and add 4 tests regarding error vs. warning behavior fix a typo when referring to the message go back to default in tests so that ordering is not important. use a constant instead of method. fix assert_nothing_raised call. use self.klass to allow per class configuration remove logger warn assets as that is tested elsewhere. pass error_on_ignore through find_each and find_in_batches also. add blocks to the finds so that the code is actually executed put the setting back to default in an ensure Add a changelog entry
* | | | | | | | Merge pull request #23807 from matthewd/executorMatthew Draper2016-03-022-73/+47
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Publish AS::Executor and AS::Reloader APIs
| * | | | | | | | Publish AS::Executor and AS::Reloader APIsMatthew Draper2016-03-022-73/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These should allow external code to run blocks of user code to do "work", at a similar unit size to a web request, without needing to get intimate with ActionDipatch.
* | | | | | | | | Merge pull request #23598 from brchristian/activerecord_second_to_lastMatthew Draper2016-03-021-0/+60
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | ActiveRecord #second_to_last tests and finder methods
| * | | | | | | | | comment out failing .second and .third testsBrian Christian2016-02-271-3/+3
| | | | | | | | | |
| * | | | | | | | | adding additional tests for offset and limit behaviorBrian Christian2016-02-271-0/+8
| | | | | | | | | |
| * | | | | | | | | additional test assertions (limit and offset)Brian Christian2016-02-271-0/+16
| | | | | | | | | |
| * | | | | | | | | AR #second_to_last tests and finder methodsBrian Christian2016-02-271-0/+36
| | |_|/ / / / / / | |/| | | | | | |
* | | | | | | | | Merge pull request #22170 from ↵Matthew Draper2016-03-021-0/+88
|\ \ \ \ \ \ \ \ \ | |_|/ / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | samphilipd/sam/properly_deallocate_prepared_statements_outside_of_transaction Correctly deallocate prepared statements if we fail inside a transaction
| * | | | | | | | Make tests a bit more beautifulSam Davies2015-11-051-10/+13
| | | | | | | | |