aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | | | | | | | | | Decouple the building Arel ASTs for uniqueness validatorRyuta Kamizono2016-12-254-38/+48
| | |_|_|_|_|_|_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently uniqueness validator is coupled with building Arel ASTs. This commit extracts `WhereClauseFactory#build_for_case_sensitive` for decouple the building Arel ASTs.
* | | | | | | | | | | | Remove useless `column_alias` in `subquery_for_count`Ryuta Kamizono2017-02-062-5/+5
| |_|/ / / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If select clause is specified and last column has a column alias, additional column alias causes a statement invalid. Add test coverage for counting a single column with NULL values. Fixes #27676, #27682, and #27705.
* | | | | | | | | | | Merge pull request #27389 from kamipo/fix_mysql_pk_dumping_correctlyJeremy Daer2017-02-0611-236/+191
|\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Restore the behaviour of the compatibility layer for integer-like PKs * kamipo/fix_mysql_pk_dumping_correctly: Restore custom primary key tests lost at #26266 Restore the behaviour of the compatibility layer for integer-like PKs Correctly dump integer-like primary key with default nil
| * | | | | | | | | | | Restore custom primary key tests lost at #26266Ryuta Kamizono2017-02-041-25/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some custom primary key tests (added at #17631, #17696, #18220, #18228) were lost at #26266. Restore the tests to improve test coverage.
| * | | | | | | | | | | Restore the behaviour of the compatibility layer for integer-like PKsRyuta Kamizono2017-02-046-174/+111
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The PR #27384 changed migration compatibility behaviour. ```ruby class CreateMasterData < ActiveRecord::Migration[5.0] def change create_table :master_data, id: :integer do |t| t.string :name end end end ``` Previously this migration created non-autoincremental primary key expected. But after the PR, the primary key changed to autoincremental, it is unexpected. This change restores the behaviour of the compatibility layer.
| * | | | | | | | | | | Correctly dump integer-like primary key with default nilRyuta Kamizono2017-02-045-40/+40
| | |_|/ / / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The PR #27384 changed integer-like primary key to be autoincrement unless an explicit default. This means that integer-like primary key is restored as autoincrement unless dumping the default nil explicitly. We should dump integer-like primary key with default nil correctly.
* | | | | | | | | | | Merge pull request #27884 from kamipo/deprecate_migration_keysJeremy Daer2017-02-067-6/+18
|\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Deprecate `ColumnDumper#migration_keys`
| * | | | | | | | | | | Deprecate `ColumnDumper#migration_keys`Ryuta Kamizono2017-02-077-6/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `ColumnDumper#migration_keys` was extracted to customize keys for standardized column arguments widths. But the feature was removed in df84e98. The internal method is no longer used for that.
* | | | | | | | | | | | Merge pull request #27929 from kamipo/remove_useless_mysql_column_testsJeremy Daer2017-02-061-42/+0
|\ \ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / / |/| | | | | | | | | | | Remove superfluous `MySQL::Column` tests
| * | | | | | | | | | | Remove useless `MySQL::Column` testsRyuta Kamizono2017-02-071-42/+0
|/ / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since text default treated as an empty string in non-strict mode has been removed in #26154, `MySQL::Column` behaves like any other column. Also, The difference between strict and non-strict mode is covered by `test_mysql_not_null_defaults_strict` and `test_mysql_not_null_defaults_non_strict`.
* | | | | | | | | | | Merge pull request #27928 from y-yagi/remove_activemodel_testcase_from_libRafael França2017-02-064-6/+5
|\ \ \ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|_|/ / / |/| | | | | | | | | | Remove `ActiveModel::TestCase` from lib
| * | | | | | | | | | Remove `ActiveModel::TestCase` from libyuuji.yaginuma2017-02-074-6/+5
| | |_|_|_|/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `ActiveModel::TestCase` is used only for the test of Active Model. Also, it is a private API and can not be used in applications. Therefore, it is not necessary to include it in lib.
* | | | | | | | | | Merge pull request #27919 from bf4/correct_spellingArthur Nogueira Neves2017-02-0621-29/+29
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | Correct spelling
| * | | | | | | | | | Correct spellingBenjamin Fleischer2017-02-0521-29/+29
| |/ / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ``` go get -u github.com/client9/misspell/cmd/misspell misspell -w -error -source=text . ```
* | | | | | | | | | Merge pull request #27924 from kenta-s/add-test-for-datetime-blankRafael França2017-02-063-0/+12
|\ \ \ \ \ \ \ \ \ \ | |_|_|_|/ / / / / / |/| | | | | | | | | Add test for DateTime#blank?
| * | | | | | | | | Add tests for `blank?`kenta-s2017-02-063-0/+12
|/ / / / / / / / /
* | | | | | | | | Merge pull request #27902 from kirs/yaml-column-errorKasper Timm Hansen2017-02-064-10/+10
|\ \ \ \ \ \ \ \ \ | |/ / / / / / / / |/| | | | | | | | Indicate action that failed in YamlColumn
| * | | | | | | | Indicate action that failed in YamlColumnKir Shatrov2017-02-054-10/+10
| |/ / / / / / /
* | | | | | | | Merge pull request #27900 from y-yagi/add_arg_key_to_process_action_mailer_eventKasper Timm Hansen2017-02-053-1/+25
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Add `:args` to `process.action_mailer` event.
| * | | | | | | | Add `:args` to `process.action_mailer` eventyuuji.yaginuma2017-02-043-1/+25
| |/ / / / / / /
* | | | | | | | Merge pull request #27802 from domcleal/27801-multiple-rake-testsKasper Timm Hansen2017-02-053-7/+28
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Collect all file patterns when running multiple rake test tasks
| * | | | | | | | Collect all file patterns when running multiple rake test tasksDominic Cleal2017-02-043-7/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replaces the rake_patterns instance variable with simple require, as `autorun` will run tests from all eagerly required test files. Fixes #27801
* | | | | | | | | Merge pull request #27898 from jaredbeck/docs_module_delegation_errorEileen M. Uchitelle2017-02-041-7/+9
|\ \ \ \ \ \ \ \ \ | |_|/ / / / / / / |/| | | | | | | | Docs: Correction: Module::DelegationError
| * | | | | | | | Docs: Correction: Module::DelegationErrorJared Beck2017-02-031-7/+9
|/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the delegation target is nil and the allow_nil option is not in use, a Module::DelegationError is raised. class C delegate :a, to: :b def b nil end end C.new.a # => Module::DelegationError: C#a delegated to b.a, but b is nil [ci skip]
* | | | | | | | Merge pull request #27896 from meagar/fix-assigns-typo-in-guideEileen M. Uchitelle2017-02-031-1/+1
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Fix typo in guide: _articles should be _article
| * | | | | | | | Fix typo in guide: _articles should be _articleMatthew Eagar2017-02-031-1/+1
|/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The guide contains a typo in the "local_assigns" section, where rendering a model named 'Article' via `render @articles` is shown to render a partial called `_articles.html.erb`, when in fact the necessary partial name is `_article.html.erb`
* | | | | | | | Merge pull request #27865 from composerinteralia/collection-ids-setter-bugEileen M. Uchitelle2017-02-033-2/+17
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Fix collection_singular_ids= bug
| * | | | | | | | Fix collection_singular_ids= bugDaniel Colson2017-02-023-2/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the association's primary key is manually set as a symbol and called with an array of strings, CollectionAssociation#ids_writer fails to cast the ids to integers. This is because AssociationReflection#association_primary_key_type and ThroughReflection#association_primary_key_type return the incorrect type, since ModelSchema.type_for_attribute only accepts a string. The result is an ActiveRecord::RecordNotFound error.
* | | | | | | | | Merge pull request #27881 from koic/fix_test_type_map_lookup_using_oracleEileen M. Uchitelle2017-02-031-6/+14
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | Fix a test of AR::Type::TypeMap#lookup when using Oracle
| * | | | | | | | | Fix a test of AR::Type::TypeMap#lookup when using OracleKoichi ITO2017-02-021-6/+14
| | | | | | | | | |
* | | | | | | | | | Merge pull request #27891 from y-yagi/ignore_yarn_error_logEileen M. Uchitelle2017-02-032-0/+6
|\ \ \ \ \ \ \ \ \ \ | |_|/ / / / / / / / |/| | | | | | | | | Ignore yarn error log file
| * | | | | | | | | Ignore yarn error log fileyuuji.yaginuma2017-02-032-0/+6
| |/ / / / / / / /
* | | | | | | | | Merge pull request #27880 from ↵Kasper Timm Hansen2017-02-021-1/+1
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | y-yagi/generate_mailer_layout_files_only_when_it_does_not_exist generate mailer layout files only when it does not exist
| * | | | | | | | | generate mailer layout files only when it does not existyuuji.yaginuma2017-02-021-1/+1
| |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | If already have layout files, in many cases use it.
* | | | | | | | | Merge pull request #27885 from kamipo/fix_ci_failureAkira Matsuda2017-02-031-1/+1
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | Fix CI failure caused by aa647b46cce55ec12f5895e403c0d1b85502c8e0
| * | | | | | | | | Fix CI failure caused by aa647b46cce55ec12f5895e403c0d1b85502c8e0Ryuta Kamizono2017-02-021-1/+1
|/ / / / / / / / /
* | | | | | | | | Fix test failures only seen when executed via bin/testAkira Matsuda2017-02-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sub_template_message distracts Rails.root from its message only when Rails.root is defined, and Rails.root is defined at tools/test.rb
* | | | | | | | | Properly escape test namesAkira Matsuda2017-02-021-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | since the test names become Regexp filters, non-escaped test names cause RegexpError on isolated test via bin/test
* | | | | | | | | module Blog; class Post appears twice in AV testsAkira Matsuda2017-02-021-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This causes TypeError when loaded separately
* | | | | | | | | DRY fake models for testingAkira Matsuda2017-02-022-37/+7
| | | | | | | | |
* | | | | | | | | bin/test for Active Job and Action Cable testsAkira Matsuda2017-02-022-0/+8
|/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to the commit comment on 54d84cbb77a7fbc6359eda4eb40cc7da29c426e1, AJ/bin/test was intentionally not added, but AJ tests doesn't actually do anything special other than specifying ENV['AJ_ADAPTER'], which can be easily done via command line environment variable.
* | | | | | | | Virtual/generated column support for MySQL 5.7.5+ and MariaDB 5.2.0+Ryuta Kamizono2017-02-0113-28/+170
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MySQL generated columns: https://dev.mysql.com/doc/refman/5.7/en/create-table-generated-columns.html MariaDB virtual columns: https://mariadb.com/kb/en/mariadb/virtual-computed-columns/ Declare virtual columns with `t.virtual name, type: …, as: "expression"`. Pass `stored: true` to persist the generated value (false by default). Example: create_table :generated_columns do |t| t.string :name t.virtual :upper_name, type: :string, as: "UPPER(name)" t.virtual :name_length, type: :integer, as: "LENGTH(name)", stored: true t.index :name_length # May be indexed, too! end Closes #22589
* | | | | | | | explicitly require `listen` in `EventedFileUpdateCheckerTest` (#27867)Arthur Nogueira Neves2017-02-011-0/+1
|\ \ \ \ \ \ \ \ | |/ / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, executing the `test_initialize_raises_an_ArgumentError_if_no_block_given` test alone will result in an error. ``` $ ./bin/test test/evented_file_update_checker_test.rb -n test_initialize_raises_an_ArgumentError_if_no_block_given Run options: -n test_initialize_raises_an_ArgumentError_if_no_block_given --seed 6692 # Running: E Error: EventedFileUpdateCheckerTest#test_initialize_raises_an_ArgumentError_if_no_block_given: NameError: uninitialized constant EventedFileUpdateCheckerTest::Listen rails/activesupport/test/evented_file_update_checker_test.rb:21:in `teardown' ``` This is because if do not specify a file or directory for `EventedFileUpdateChecker`, do not require `listen`, and using listen method in teardown. https://github.com/rails/rails/blob/master/activesupport/lib/active_support/evented_file_update_checker.rb#L53..L65 Therefore, added listen's require to avoid errors.
| * | | | | | | explicitly require `listen` in `EventedFileUpdateCheckerTest`yuuji.yaginuma2017-02-011-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, executing the `test_initialize_raises_an_ArgumentError_if_no_block_given` test alone will result in an error. ``` $ ./bin/test test/evented_file_update_checker_test.rb -n test_initialize_raises_an_ArgumentError_if_no_block_given Run options: -n test_initialize_raises_an_ArgumentError_if_no_block_given --seed 6692 # Running: E Error: EventedFileUpdateCheckerTest#test_initialize_raises_an_ArgumentError_if_no_block_given: NameError: uninitialized constant EventedFileUpdateCheckerTest::Listen rails/activesupport/test/evented_file_update_checker_test.rb:21:in `teardown' ``` This is because if do not specify a file or directory for `EventedFileUpdateChecker`, do not require `listen`, and using listen method in teardown. https://github.com/rails/rails/blob/master/activesupport/lib/active_support/evented_file_update_checker.rb#L53..L65 Therefore, added listen's require to avoid errors.
* | | | | | | | Merge pull request #27869 from y-yagi/call_gem_before_require_erubisMatthew Draper2017-02-011-0/+1
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | call `gem` `erubis` before require
| * | | | | | | | call `gem` `erubis` before requireyuuji.yaginuma2017-02-011-0/+1
|/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | For inform that need to add `erubis` to gemfile.
* | | | | | | | Merge pull request #27866 from y-yagi/remove_unused_variableRafael França2017-01-311-1/+1
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | remove unused variable
| * | | | | | | | remove unused variableyuuji.yaginuma2017-02-011-1/+1
| |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes the following warnings. ``` activesupport/test/file_update_checker_shared_tests.rb:279: warning: assigned but unused variable - checker ```
* | | | | | | | Merge pull request #27795 from meagar/fix-missing-partial-iterationRafael França2017-01-314-1/+12
|\ \ \ \ \ \ \ \ | |/ / / / / / / |/| | | | | | | Fix missing partial iteration
| * | | | | | | Merge branch 'master' into fix-missing-partial-iterationMatthew Eagar2017-01-266-7/+10
| |\ \ \ \ \ \ \