[ci skip] correct default cache store class
actionmailer_tests_are_order_dependent!
Clean adapter_test.rb and skip test for sidekiq in unsupported rubies
use :test delivery method for `base_test.rb`

This solves errors like:

```
BaseTest#test_you_can_register_multiple_observers_to_the_mail_object_that_both_get_informed_on_email_delivery:
Errno::ECONNREFUSED: Connection refused - connect(2) for "localhost" port 25
    /Users/senny/.rbenv/versions/2.1.2/lib/ruby/2.1.0/net/smtp.rb:541:in `initialize'
    /Users/senny/.rbenv/versions/2.1.2/lib/ruby/2.1.0/net/smtp.rb:541:in `open'
    /Users/senny/.rbenv/versions/2.1.2/lib/ruby/2.1.0/net/smtp.rb:541:in `tcp_socket'
    /Users/senny/.rbenv/versions/2.1.2/lib/ruby/2.1.0/net/smtp.rb:551:in `block in do_start'
    /Users/senny/.rbenv/versions/2.1.2/lib/ruby/2.1.0/timeout.rb:91:in `block in timeout'
    /Users/senny/.rbenv/versions/2.1.2/lib/ruby/2.1.0/timeout.rb:101:in `call'
    /Users/senny/.rbenv/versions/2.1.2/lib/ruby/2.1.0/timeout.rb:101:in `timeout'
    /Users/senny/.rbenv/versions/2.1.2/lib/ruby/2.1.0/net/smtp.rb:550:in `do_start'
    /Users/senny/.rbenv/versions/2.1.2/lib/ruby/2.1.0/net/smtp.rb:520:in `start'
    /Users/senny/Projects/rails/.bundle/gems/mail-2.6.1/lib/mail/network/delivery_methods/smtp.rb:112:in `deliver!'
    /Users/senny/Projects/rails/.bundle/gems/mail-2.6.1/lib/mail/message.rb:2136:in `do_delivery'
    /Users/senny/Projects/rails/.bundle/gems/mail-2.6.1/lib/mail/message.rb:232:in `block in deliver'
    /Users/senny/Projects/rails/actionmailer/lib/action_mailer/base.rb:528:in `block in deliver_mail'
    /Users/senny/Projects/rails/activesupport/lib/active_support/notifications.rb:164:in `block in instrument'
    /Users/senny/Projects/rails/activesupport/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
    /Users/senny/Projects/rails/activesupport/lib/active_support/notifications.rb:164:in `instrument'
    /Users/senny/Projects/rails/actionmailer/lib/action_mailer/base.rb:526:in `deliver_mail'
    /Users/senny/Projects/rails/.bundle/gems/mail-2.6.1/lib/mail/message.rb:232:in `deliver'
    /Users/senny/Projects/rails/actionmailer/test/base_test.rb:598:in `block (2 levels) in <class:BaseTest>'
    /Users/senny/Projects/rails/actionmailer/test/base_test.rb:801:in `mail_side_effects'
    /Users/senny/Projects/rails/actionmailer/test/base_test.rb:593:in `block in <class:BaseTest>'
```
where the `:smtp` delivery method was leaked over to other test cases.
Correctly determine if migration is needed.

This method would assume that if last migration in the migrations
directory matched the current schema version, that the database was up
to date, but this does not account for new migrations with older
timestamps that may be pending.
Fix assert_template for files.

The test was not failing for `assert_template file: nil` when a file
has been rendered.
Missing ActiveSupport require for calling String#first
Merge pull request #16493 from aditya-kapoor/correct-cache-store-doc

[ci skip] correct default cache store class
`overriden` => `overridden`
[ci skip] First version of the Active Job guide
Merge branch 'master' into activejob
Update ActiveJob guide [ci skip]
[ci skip] add note about the ERB escape in generator docs
Merge pull request #16408 from aditya-kapoor/add-doc-ERB-escape

[ci skip] add note about the ERB escape in generator docs
Remove redundant NullSerializer

Use one from ActiveSupport::MessageEncryptor module.
UnexpectedErrors may reference exceptions that can't be dumped

UnexpectedError exceptions wrap the original exception, and the original
exception may contain a reference to something that can't be marshal
dumped which will cause the process to die.
this should be accessing the hash, not calling a method
fewer operations on the options hash

since we pass `as` down, then we won't have to do an insert / delete
dance with the options hash
pass consistent parameters to canonical_action?

now we only have to look up @scope[:scope_level] once per call to
canonical_action? and we don't have a variable named "flag"
only test `prefix` once

we don't need to repeat if statements