aboutsummaryrefslogtreecommitdiffstats
path: root/railties/test
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | remove args from assert_nothing_raised in testsTara Scherner de la Fuente2016-02-224-10/+10
| | | |
* | | | reestablish previous connection after creating all databasesAaron Patterson2016-02-231-0/+13
|/ / / | | | | | | | | | | | | | | | creating all databases mutates the connection pool. This patch restores the connection pool to the connection spec established before creating all databases. Fixes #23279
* | | Generate ApplicationCable files if they do not already existJon Moss2016-02-221-0/+12
| | |
* | | Generate ApplicationRecord if it does not already existJon Moss2016-02-221-0/+8
| | |
* | | make sure `rake test` respects TESTOPTSAaron Patterson2016-02-221-0/+13
| | | | | | | | | | | | | | | We should be able to pass options to minitest via TESTOPTS environment variable
* | | Make collection caching explicit.Kasper Timm Hansen2016-02-201-0/+2
| |/ |/| | | | | | | | | | | | | | | | | | | | | Having collection caching that wraps templates and automatically tries to infer if they are cachable proved to be too much of a hassle. We'd rather have it be something you explicitly turn on. This removes much of the code and docs to explain the previous automatic behavior. This change also removes scoped cache keys and passing cache_options.
* | Merge pull request #23756 from tenderlove/move_digest_cacheAaron Patterson2016-02-181-2/+3
|\ \ | | | | | | move digest cache on to the DetailsKey object
| * | move digest cache on to the DetailsKey objectAaron Patterson2016-02-181-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This moves digest calculation cache on to the details key object. Before, the digest cache was a class level ivar, and one of the keys was the hash value of the details key object: https://github.com/rails/rails/blob/13c4cc3b5aea02716b7459c0da641438077f5236/actionview/lib/action_view/digestor.rb#L28 An object's hash value is not unique, so it's possible for this cache key to produce colliding keys with no resolution. This commit move cache on to the details key object itself, so we know that the digests are always unique per details key object.
* | | set `skip_listen` option to dummy appplicationyuuji.yaginuma2016-02-181-0/+8
|/ / | | | | | | | | | | If you want to use `EventedFileUpdateChecker`, need to specify `listen` to plugin's gemspec. However, the default is not specified `listen` to plugin's gemspec, `EventedFileUpdateChecker` should be disabled.
* | Merge pull request #23730 from y-yagi/fail_fast_when_test_errorAndrew White2016-02-171-3/+14
|\ \ | |/ |/| modify to `error` also abort when specify fail fast option
| * modify to `error` also abort when specify fail fast optionyuuji.yaginuma2016-02-171-3/+14
| |
* | Implement ActionController::Parameters#inspectBenjamin Quorning2016-02-171-1/+1
|/ | | | Now that AC::Parameters is no longer a Hash, it shouldn't look like a hash.
* adds --skip-listen to the application generator [closes #23590]Xavier Noria2016-02-172-10/+28
|
* Merge pull request #23630 from akshaymohite/correct-test-name-api-onlyYves Senn2016-02-161-1/+1
|\ | | | | Correct config option from only_api to api_only in test
| * Correct config option from only_api to api_only in testAkshay2016-02-121-1/+1
| |
* | reset `ActionMailer::Base.deliveries` in `ActionDispatch::IntegrationTest`.Yves Senn2016-02-161-0/+46
| | | | | | | | | | | | | | | | | | Whenever you are sending emails in integration tests using the `:test` delivery method you need to make sure that `ActionMailer::Base.deliveries` is reset after every test. This piece of boilerplate code is present in all my applications that send emails. Let's have `ActionDispatch::IntegrationTest` reset the deliveries automatically.
* | fix more failing tests due to 07e422f ... :pray:Yves Senn2016-02-151-2/+2
| |
* | fixing the build take II. :sweat:Yves Senn2016-02-151-1/+1
| |
* | fix build broken by 07e422f58d61da0.Yves Senn2016-02-151-1/+1
| |
* | Merge pull request #23631 from y-yagi/generate_mailer_views_in_apiYves Senn2016-02-152-1/+13
|\ \ | | | | | | generate mailer views in Rails API
| * | generate mailer views in Rails APIyuuji.yaginuma2016-02-152-1/+13
| |/ | | | | | | | | View files is necessary to send mail, it should be generated even Rails API. Fixes #23617
* | test runner, relay minitest information about the error location.Yves Senn2016-02-151-1/+1
| | | | | | | | | | This is a follow-up to ea70c29 to bring back the assertion error location information provided by minitest.
* | Revert "Prefer Minitest's location for test failures."Yves Senn2016-02-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 0db310586ac3e15be95d2ef27ff40cfa24c05c10. Closes #23686. Conflicts: railties/test/application/test_runner_test.rb It's possible that the `result.location` returned by minitest is outside the test file itself. For example in the case of mocha. This resulted in bad rerun snipptets: ``` bin/rails test app/models/deliveries/delivery.rb:103 ``` Let's always use the first line of the failed test-case in our rerun snippet. We can display the line number of the assertion error elsewhere.
* | Fix expected hash syntax.Kasper Timm Hansen2016-02-121-3/+3
| | | | | | | | | | | | 3f70e8bd2 set a new bar for tests, but they weren't updated. Update their expectation.
* | Merge pull request #23611 from abhishekjain16/routes_optionsKasper Timm Hansen2016-02-121-1/+9
|\ \ | |/ |/| Fix routes to match verb and URL path with -g option also.
| * Fixes routes to match verbs and path with -g optionAbhishek Jain2016-02-111-1/+9
| |
* | Merge pull request #23512 from y-yagi/set_association_name_to_fixtureDavid Heinemeier Hansson2016-02-102-10/+9
|\ \ | |/ |/| set association name to generated fixtures if attribute is reference
| * set association name to generated fixtures if attribute is referenceyuuji.yaginuma2016-02-062-10/+9
| | | | | | | | | | | | | | It has been changed to require `belongs_to` by default in Rails 5. Therefore in order to pass the controller test, have association of set to fixtures. Fixes #23384
* | prevent apps in the railties test suite from running the evented monitorXavier Noria2016-02-101-3/+12
| |
* | include spring-watcher-listen in the Gemfile of new applicationsXavier Noria2016-02-101-0/+1
| |
* | enables the evented monitor in new applicationsXavier Noria2016-02-101-0/+22
| |
* | revert dev:cache to rake task, fixes #23410Scott Bronson2016-02-072-32/+34
|/
* Fix mixing line filters with Minitest's -n filter.Kasper Timm Hansen2016-02-051-0/+24
| | | | | | | | | | | Previous commit accidentally broke mixing line filters with string -n filter. Fix by checking if it is a string and returning it. We also need to ensure the -n filter carry forward into any other composite filters. Fix by letting the named filter be extractable, so we'll keep this for the next runnable's run.
* - app generate option --skip-sprockets leaves jquery-rails gem, which relies ↵Vipul A M2016-02-041-1/+2
| | | | | | | | on sprockets environment - Remove jquery-rails if --skip-sprockets is true Fixes #23431
* Update assertion on redis in generated GemfilePrem Sichanugrist2016-02-041-1/+1
| | | | | | | | Redis now included in Gemfile but commented out. This change was made in 91864439c7aebb6ca710831aac6781903a433904 and is causing the test failure. See https://travis-ci.org/rails/rails/jobs/106994913#L1025
* Fix model test path typo uncovered in previous commit.Kasper Timm Hansen2016-02-031-1/+1
| | | | | | | | | | | | Because of the expanding whitelist for test filters, this test ended up running the tests on lines 4 and 9 in the post test even though the path wasn't right. Happened incidentally because the same line numbers were used in both account and post test. Add the .rb line so the file is required correctly and the filters are applied.
* Fix line filters running tests from multiple runnables.Kasper Timm Hansen2016-02-031-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | `derive_regexp` was written with the assumption that we were run from a blank slate — that if the filter didn't match we might as well return it because it was nil. This isn't the case because minitest calls `run` on every runnable. Which is any subclass of Minitest::Runnable, such as ActiveSupport::TestCase, ActionDispatch::IntegrationTest as well as any inheriting from those. Thus after the first `run` we'd have put in a composite filter in `options[:filter]` making the next `run` create a linked list when it failed to match the regexp and put the composite filter as the head. Every runnable would accumulate more and more of the same filters, which effectively acted like an expanding whitelist and we ran tests from other runnables. Clog the accumulation by returning nil if there's no filter to derive a regexp from. Note: we pass a seed in the tests because Minitest shuffles the runnables to ensure the whitelist is expanded enough that the failure is triggered.
* use rails command in routes taskyuuji.yaginuma2016-02-031-7/+7
| | | | | For other task has become to use the rails command at doc and test, I think that routes task also it is better to use the rails command.
* Merge pull request #23420 from y-yagi/move_api_test_to_appropriate_fileRafael França2016-02-022-11/+10
|\ | | | | move `test_generator_if_skip_action_cable_is_given_for_an_api_app` to the appropriate file
| * move `test_generator_if_skip_action_cable_is_given_for_an_api_app` to the ↵yuuji.yaginuma2016-02-022-11/+10
| | | | | | | | | | | | appropriate file Test of Rails API should be in `api_app_generator_test.rb`.
* | Generated engines should protect from forgeryAaron Patterson2016-02-011-3/+3
|/ | | | | | Generated engines should call `protect_from_forgery`. If this method isn't called, then the Engine could be susceptible to XSS attacks. Thanks @tomekr for reporting this to us!
* Merge pull request #23225 from vipulnsward/20420-rake-routes-optionsKasper Timm Hansen2016-02-011-2/+61
|\ | | | | Add options for rake routes task
| * Add options for rake routes taskVipul A M2016-02-021-2/+61
| | | | | | | | | | | | | | | | | | | | Add two options: `-c` and `-g`. `-g` option returns the urls name, verb and path fields that match the pattern. `-c` option returns the urls for specific controller. Fixes #18902, and Fixes #20420 [Anton Davydov & Vipul A M]
* | Merge pull request #23025 from ↵Sean Griffin2016-02-012-3/+3
|\ \ | |/ |/| | | | | yahonda/shorten_internal_metadata_table_name_less_than_30_byte Shorten ActiveRecord::InternalMetadata.table_name to ar_internal_metadata
| * Shorten ActiveRecord::InternalMetadata.table_name to ar_internal_metadataYasuo Honda2016-02-012-3/+3
| | | | | | | | to support Oracle database which only supports 30 byte identifier length
* | Merge pull request #23057 from schneems/schneems/default-puma-configRichard Schneeman2016-02-011-0/+9
|\ \ | | | | | | Add Default Puma Config
| * | Add Default Puma Configschneems2016-01-291-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the `puma` command is run without any configuration options it will detect presence of a `config/puma.rb` file and use that. Currently there is discrepancy between `puma` command and `rails server` but Evan said it would be reasonable to add in reading in config from the default location. I am working on that right now as a feature in puma/puma. Why do we need this? By default Puma uses 16 threads, and by default ActiveRecord only has 5 threads. Due to the architecture of AR it is guaranteed that if you're running with fewer DB connections than your server has threads you will hit `ActiveRecord::ConnectionTimeoutError ` eventually if your app gets modest amounts of traffic. Since we are providing a default webserver, we should provide reasonable configuration for that webserver. This PR does a few things, first it sets the default Puma thread count to 5 to mach ActiveRecord's default. It sets the default environment to `"development"` and the default port to 300 so that booting the server with `$ puma` will give you the same default port as `rails server`. It is worth mentioning that by reading in from `PORT` environment variable this config can work with containerized deployments, such as on Heroku. We are not using worker processes by default, that way JRuby and windows devs can use this configuration without modification. I went ahead and included a default `on_worker_boot`. It won't be used unless a worker count is specified, that means this config will not use it. Even though it's not being used now It will make someone who wants to try modifying their config to run extra workers easier. cc/ @pixeltrix
* | | Merge pull request #23381 from matthewd/uneventful-redisMatthew Draper2016-02-021-3/+0
|\ \ \ | |_|/ |/| | Redis sans EventMachine
| * | Switch the default redis adapter to a single-stream modelMatthew Draper2016-02-011-3/+0
| | | | | | | | | | | | | | | | | | This new adapter does get a little more intimate with the redis-rb gem's implementation than I would like, but it's the least bad of the approaches I've come up with.
* | | make rake proxy work in rails enginesyuuji.yaginuma2016-01-312-5/+5
|/ /