| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|\
| |
| | |
drop extra variable
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
1) Use `assert` and `refute` where possible.
2) Separately include the setup, subject, and assertions in each test - don't hide the tested call in an assertion method.
3) Name things based on their role rather than incidental facts about them - e.g. `@bird[1]` -> `bird_to_destroy`. `bird2_deletion_attributes` -> `destroy_bird_attributes`.
4) Use more succinct naming where possible - e.g. `birds_with_callback` -> `birds_with_add`, `@pirate_with_two_birds` -> `@pirate`
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
records, and don't bother updating the association if the update is going to be rejected anyway.
This requires adding a `skip_callbacks` argument to `#add_to_target`
so that we don't call the callbacks multiple times in this case,
which is functionally an application of existing association data,
rather than an addition of a new record to the association.
|
| |
| |
| |
| |
| | |
Issue #1: :before_add callback is called when nested attributes assignment assigns to existing record if the association is not yet loaded
Issue #2: Nested Attributes assignment does not affect the record in the association target when callback triggers loading of the association
|
| | |
|
| |
| |
| |
| |
| | |
If you're using an in-memory database for the test database,
reconnecting will lose all information that schema:load did for us.
|
|/
|
|
|
| |
If 'enable_extension' is used in a migration's 'change' method, use
'disable_extension' on down migration (and vice-versa).
|
| |
|
|\
| |
| | |
Set field encoding to client_encoding for mysql adapter.
|
| | |
|
|/ |
|
|\
| |
| | |
Remove conditional, results are always an instance of `ActiveRecord::Result`
|
| |
| |
| |
| | |
`ActiveRecord::Result`
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
...
```
|
| |
| |
| |
| | |
Closes #11062
|
| | |
|
| | |
|
| |
| |
| |
| | |
Fix in-memory tests
|
| |
| |
| |
| | |
[ci skip]
|
| | |
|
| |
| |
| |
| |
| | |
This change was breaking the Railties tests. See
https://travis-ci.org/rails/rails/jobs/9865969
|
| |
| |
| |
| | |
The deprecation message was removed on 50cbc03d18c5984347965a94027879623fc44cce but the code was not.
|
|\ \
| | |
| | | |
Load fixtures from linked folders[master]
|
| | | |
|
|\ \ \
| | | |
| | | | |
Free result_metadata directly instead of freeing 2nd, redundant call.
|
| | | |
| | | |
| | | | |
`result_metadata` returns a new object each time it is called, so calling `result_metadata.free` is essentially a noop. Instead call `free` directly on the metadata when we're done with it.
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If the `db/` directory is not present on a remote machine it will blow up in unexpected ways with error messages that do not indicate there is a missing directory:
```
SQLite3::CantOpenException: unable to open database file
```
This PR checks to see if a directory exists for the sqlite3 file and if not creates it for you.
This PR is an alternative to #11692 as suggested by @josevalim
|
|\ \ \
| | | |
| | | | |
Minor optimization and code cleanup in query_methods.rb
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
- Use symbols rather than strings where possible to avoid extra object construction
- Use destructive methods where possible to avoid extra object construction
- Use array union rather than concat followed by uniq
- Use shorthand block syntax where possible
- Use consistent multiline block styles, method names, method parenteses style, and spacing
|
|\ \ \ \
| | | | |
| | | | | |
Changing the def self.table_name to self.table_name in the column_name.r...
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
fix for postgresql failing test in local
|
| |/ / / / |
|
|/ / / / |
|
| |/ /
|/| | |
|
|\ \ \
| | | |
| | | | |
Define enable_extension method to prevent undefined method error
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When mixing postgresql and another adapter like sqlite3 (for dev and test
respectively), the task `db:test:prepare` will fail due to the `enable_extension`
method not being defined in the abstract adapter. This patch simply adds an
empty definition to prevent it.
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
Removed redundant xml override from pg adapter
|
| | | | |
| | | | |
| | | | |
| | | | | |
Closes: #11706
|
| | | | | |
|
| | | | | |
|
|/ / / / |
|
| | | | |
|