Improve the testing guide [ci skip]

Improve the "Testing Rails Applications" guide adding a section for
testing helpers and a little note about associations with ActiveRecord
and YAML fixtures.

Also add a link to Fixture Builder ; yet another replacement for
fixtures such as Machinist or FactoryGirl.
Remove conditional, since results are always an instance of `ActiveRecord::Result`
Added SanitizeHelper to rails guide docs [ci skip]

Added SanitizeHelper to rails guide docs [ci skip]

Added SanitizeHelper to rails guide docs update [ci skip]
Creating an SSE class to be used with ActionController::Live.
Added Action View in 'rake about' [ci skip]
added String#to_date documentation to Rails 4 upgrade guide

[ci skip]
Add a missing require.

This makes the rack_logger_test.rb runnable by itself (outside of the `rake test` suite).
"Naked" rescue clauses only catch StandardError subclasses.

Similar to #11497.
Merge pull request #11780 from thedarkone/logger-naked-rescue-fix

Rack::Logger naked rescue fix
test to express that we can't turn non-array columns to array columns.

Closes #11062
Removing obsolete html tags in favor of markdown code block.
Revert "Removing obsolete html tags in favor of markdown code block"

This reverts commit 157dc275da0ad38635337b7c1d96de656d91de8e.
Bump ruby version [ci skip]
Bump ruby version [ci skip]
Merge pull request #11783 from davetoxa/patch-1

Bump ruby version [ci skip]
Merge pull request #11784 from davetoxa/patch-2

Bump ruby version [ci skip]
RDoc tweaks
skip `test_unicode_column_name` for `MysqlAdapter`.

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
...
```
Avoid defining multibyte method names in JSON decoding test for JRuby Compat

This change is similar to #11736 & in same way switched with fixed string & the index of the hash for method name. the index was added because otherwise, ruby will raise Error.
document how to deploy to a subdirectory. #2992 [ci skip]