- 26 6月, 2014 1 次提交
-
-
由 Sean Griffin 提交于
We have several test cases on "tricky" types that are essentially testing that `update_all` goes through the same type casting behavior as a normal assignment + save. We recently had another case to add this test for another type in https://github.com/rails/rails/pull/12742. Rather than testing this separately for every type which is "tricky" when round tripping, let's instead have a fairly exhaustive test that ensures we're getting the correct values at every step for `update_all`. Given the structure of the code now, we can be confident that if the type is correct, and `update_all` is type casting correctly, we're going to get the right behavior for all types.
-
- 18 6月, 2014 2 次提交
-
-
由 Sean Griffin 提交于
If we want to have type decorators mess with the attribute, but not the column, we need to stop type casting on the column. Where possible, we changed the tests to test the value of `column_defaults`, which is public API. `Column#default` is not.
-
由 Sean Griffin 提交于
HStore columns come back from the database separated by a comma and a space, not just a comma. We need to mirror that behavior since we compare the two values. Also adds a regression test against JSON to ensure we don't have the same bug there.
-
- 14 6月, 2014 1 次提交
-
-
由 Sean Griffin 提交于
We have several mutable types on Active Record now. (Serialized, JSON, HStore). We need to be able to detect if these have been modified in place.
-
- 10 6月, 2014 2 次提交
-
-
由 Sean Griffin 提交于
In some cases there is a difference between the two, we should always be doing one or the other. For convenience, `type_cast` is still a private method on type, so new types that do not need different behavior don't need to implement two methods, but it has been moved to private so it cannot be used accidentally.
-
由 Sean Griffin 提交于
- The following is now true for all types, all the time - `model.attribute_before_type_cast == given_value` - `model.attribute == model.save_and_reload.attribute` - `model.attribute == model.dup.attribute` - `model.attribute == YAML.load(YAML.dump(model)).attribute` - Removes the remaining types implementing `type_cast_for_write` - Simplifies the implementation of time zone aware attributes - Brings tz aware attributes closer to being implemented as an attribute decorator - Adds additional point of control for custom types
-
- 09 6月, 2014 1 次提交
-
-
由 Sean Griffin 提交于
`serialize` is now lazy, so the workaround is no longer needed.
-
- 06 6月, 2014 1 次提交
-
-
由 Yves Senn 提交于
This adds a regression test for #14411, which was fixed by #15503. Closes #14411 Closes #14595
-
- 04 6月, 2014 2 次提交
-
-
由 Sean Griffin 提交于
`@raw_attributes` should not contain the type-cast, mutable version of the value.
-
由 Yves Senn 提交于
Revert "test pg, remove unused column assignments. Follow up to 254cdf47" Related to #15492 This reverts commit 254cdf47. This reverts commit 4bcf9029. There are public methods that assume `Column#default` is type casted. The return value of `Column#default` is publicly relevant and should not change. /cc @sgrif
-
- 03 6月, 2014 2 次提交
- 28 5月, 2014 1 次提交
-
-
由 Yves Senn 提交于
The solution presented in this patch is not efficient. We should replace it in the near future. The following needs to be worked out: * Is `@attributes` storing the Ruby or SQL representation? * `cacheable_column?` is broken but `hstore` and `json` rely on that behavior Refs #15369. /cc @sgrif @rafaelfranca
-
- 12 5月, 2014 1 次提交
-
-
由 Yves Senn 提交于
-
- 28 3月, 2014 2 次提交
- 15 3月, 2014 1 次提交
-
-
由 Guo Xiang Tan 提交于
Follow-Up to https://github.com/rails/rails/pull/14348 Ensure that SQLCounter.clear_log is called after each test. This is a step to prevent side effects when running tests. This will allow us to run them in random order.
-
- 17 2月, 2014 1 次提交
-
-
由 Josh Goodall 提交于
We didn't have enough encoding for the wire protocol to store an array of hstore types. So, further encode any hstore that is an array member. Whilst we're here, ensure it's an HashWithIndifferentAccess being returned, to be consistent with other serialized forms, and add testing for arrays of hstore. So now the following migration: enable_extension "hstore" create_table :servers do |t| t.string :name t.hstore :interfaces, array: true end produces a model that can used like this, to store an array of hashes: server = Server.create(name: "server01", interfaces: [ { name: "bge0", ipv4: "192.0.2.2", state: "up" }, { name: "de0", state: "disabled", by: "misha" }, { name: "fe0", state: "up" }, ]) More at http://inopinatus.org/2013/07/12/using-arrays-of-hstore-with-rails-4/
-
- 07 1月, 2014 1 次提交
-
-
由 Nishant Modak 提交于
- Earlier, change_table was creating database-agnostic object. - After this change, it will create correct object based on current database adapter. - This will ensure that create_table and change_table will get same objects. - This makes update_table_definition method public and nodoc. - Fixes #13577 and #13503
-
- 24 12月, 2013 2 次提交
-
-
由 Carlos Antonio da Silva 提交于
Always pass in the column for quote_bound_value and quote using it in case it exists there.
-
由 Tadas Tamosauskas 提交于
Fixes #12261. Closes #12395. Conflicts: activerecord/CHANGELOG.md activerecord/test/cases/adapters/postgresql/array_test.rb activerecord/test/cases/adapters/postgresql/json_test.rb
-
- 08 11月, 2013 1 次提交
-
-
由 Rafael Mendonça França 提交于
We can conditional define the tests depending on the adapter or connection. Lets keep the skip for fail tests that need to be fixed.
-
- 25 10月, 2013 1 次提交
-
- 08 8月, 2013 1 次提交
-
-
由 Yves Senn 提交于
-
- 27 3月, 2013 1 次提交
-
-
由 Mack Earnhardt 提交于
Disabling the hstore extension during testing created order dependent test failures.
-
- 24 3月, 2013 1 次提交
-
-
由 jlxw 提交于
Previously regex did not strip quotation marks where hstore values were multi-line strings.
-
- 28 2月, 2013 1 次提交
-
-
由 Yves Senn 提交于
Closes #9480. We use `TableDefinition` for `#create_table` and `Table` for `#change_table`. The PostgreSQL sepcifc types were only defined on `TableDefinition` so I also added them to `Table`.
-
- 07 2月, 2013 2 次提交
-
-
由 Justin George 提交于
improve tests to check for existence of extensions method, and skip testing dumped extensions if they are unsupported by the database
-
由 Justin George 提交于
-
- 06 2月, 2013 1 次提交
-
-
由 Rafael Mendonça França 提交于
-
- 29 1月, 2013 1 次提交
-
-
由 Aaron Patterson 提交于
-
- 27 4月, 2012 1 次提交
-
-
由 Jon Leighton 提交于
-
- 25 4月, 2012 1 次提交
-
-
由 Ryan Fitzgerald 提交于
escape_hstore uses quotation marks around keys and values only if it seems necessary. However, it currently breaks in the presence of some non-ASCII characters. Instead of trying to guess exactly which characters are safe, it seems better to always use quotes.
-
- 09 2月, 2012 3 次提交
- 21 12月, 2011 4 次提交
-
-
由 Aaron Patterson 提交于
-
由 Aaron Patterson 提交于
-
由 Aaron Patterson 提交于
-
由 Aaron Patterson 提交于
-