Commit Graph

913 Commits

Author SHA1 Message Date
Benjamin Fleischer
37a6d2b245 Be consisent in usage of ActiveSupport::Autoload 2016-01-13 20:54:22 -06:00
Mauro George
c0b99c980c Bring back assert_serializer for controller testing
The `assert_serializer` test helper was added in 0.9.0.apha1[1],
and was not included in 0.10.

This patch brings back the `assert_serializer` test helper. This is the last
revision[2] that has the helper. The original helper was used as base.

[1]: https://github.com/rails-api/active_model_serializers/pull/596
[2]: 610aeb2e92

- Create the AssertSerializer

- Use the Test namespace

- Make the tests pass on the Rails master
  - Rails 5 does not include `assert_template` but we need this on the tests of
the helper.
  - This add the `rails-controller-testing` to keep support on `assert_template`.

- Only load test helpers in the test environment
2016-01-13 20:54:22 -06:00
Benjamin Fleischer
d448481b6b Merge pull request #1386 from bf4/warnings_fix_again
Remove capture_warnings testing. Is fickle and Rubocop linting is good enough
2016-01-13 20:17:24 -06:00
Benjamin Fleischer
dde843d162 Add serialization docs PR request note for conditional attributes 2016-01-13 10:19:07 -06:00
Benjamin Fleischer
2f74dd9682 Merge pull request #1432 from biow0lf/patch-1
Fix link in ARCHITECTURE.md [ci skip]
2016-01-13 10:00:12 -06:00
Igor Zubkov
aa8e306782 Fix ARCHITECTURE.md 2016-01-13 17:45:18 +02:00
Lucas Hosseini
53c59a1510 Merge pull request #1403 from beauby/conditional-attributes
Conditional attributes/associations (if/unless).
2016-01-13 07:50:59 +01:00
Lucas Hosseini
2696557650 Replace Field#included? with Field#excluded?. 2016-01-13 06:20:05 +01:00
Lucas Hosseini
7af198653d Add tests for conditional attributes/associations. 2016-01-13 06:20:05 +01:00
Chris Nixon
7fbf7e536d Use condition_type in case statement for included?. 2016-01-13 06:20:05 +01:00
Lucas Hosseini
40ed7b57bd Factor out ancestor class Field of Attribute and Reflection. 2016-01-13 06:20:04 +01:00
Lucas Hosseini
6860318133 Add support for if/unless on associations. 2016-01-13 06:19:47 +01:00
Lucas Hosseini
a502b5d38b Add support for if/unless on attributes. 2016-01-13 06:19:28 +01:00
Lucas Hosseini
adaf5b87df Merge pull request #1248 from beauby/jsonapi-parse
JSON API deserialization.
2016-01-13 06:18:52 +01:00
Lucas Hosseini
20a58d7f5c Add support for JSON API deserialization (experimental). 2016-01-13 05:48:06 +01:00
Lucas Hosseini
2e87c8effe Fix comment. 2016-01-13 05:41:32 +01:00
Benjamin Fleischer
d466466660 Merge pull request #1427 from brigade/defunct-root-name
Remove defunct .root_name from test fixtures
2016-01-12 17:25:49 -06:00
Benjamin Fleischer
1d8226098f Merge pull request #1429 from brigade/association-inheritance
Remove unnecessary `dup` in `ActiveModel::Serializer::Associations#associate`
2016-01-12 17:25:41 -06:00
Ben Woosley
8ac1f107f4 Remove unnecessary dup in ActiveModel::Serializer::Associations#associate
The `_reflections` are duped on `inherited` - no need to `dup` them
with each addition.
2016-01-12 14:42:07 -08:00
Ben Woosley
251e33a0a1 Don't pluralize the CollectionSerializer#root for #json_key
One of three constituents is used to provide the
CollectionSerializer's #json_key:

1) the :root option - controlled by the caller
2) the #name of the first resource serializer - the root or
   underscored model name
3) the underscored #name of the resources object - generally
   equivalent to the underscored model name of #2

Of the three, only the latter 2 are out of the callers control, and
only the latter two are expected to be singular by default. Not
pluralizing the root gives the caller additional flexibility in
defining the desired root, whether conventionally plural,
unconventionally plural (e.g. objects_received:) or singular.
2016-01-12 09:32:43 -08:00
Lucas Hosseini
f6fe0c8aa3 Extract links and type-related methods to their own module. 2016-01-12 15:05:39 +01:00
Benjamin Fleischer
e3b9597d1a Remove warning capture; more trouble than worth 2016-01-11 23:48:40 -06:00
Benjamin Fleischer
2a171da6b9 Hack Minitest to make it less dependent on at_exit 2016-01-11 23:42:45 -06:00
Benjamin Fleischer
3133422654 Add .bundle/ to simplecov exclude 2016-01-11 23:42:45 -06:00
Ben Woosley
c8839f427b Remove defunct .root_name from test fixtures
Was removed elsewhere in
7847d05ecb
2016-01-11 17:16:00 -08:00
Benjamin Fleischer
34e5faa1c4 Merge pull request #1423 from brigade/tidy-tests
Tidy up the tests
2016-01-11 18:40:11 -06:00
Ben Woosley
0a6c133d25 Tidy up the tests
* Use assert_nil where appropriate
* Lead with the expected value in collection_serializer_test.rb, etc
 so that expected/actual in test failure messages are not reversed
2016-01-07 11:21:19 -08:00
Kory Tegman
aeefb6a080 revised docs to reflect the feedback 2016-01-06 22:21:19 -08:00
Kory Tegman
d153dfe2cd added documentation for adding custom root 2016-01-06 15:57:49 -08:00
Mauro George
a183645ed4 Create the Namespace RFC
[ci skip]

Update the RFC adding info from discussion

[ci skip]
2016-01-06 19:13:31 -02:00
lcp
43312fa083 support read_multi 2016-01-05 20:55:34 +08:00
Benjamin Fleischer
7d4f0c5c8a Merge branch 'bf4-consider_association_blocks' 2016-01-03 23:16:49 -06:00
Benjamin Fleischer
41ae5f7b6f Add 1356 to changelog; given credit for 1336 2016-01-03 23:14:38 -06:00
Benjamin Fleischer
81b1654c4e Merge pull request #1388 from bf4/restore_docs_from_older_releases
Restore docs from older releases
2016-01-03 23:10:41 -06:00
Benjamin Fleischer
b51a43262f Merge pull request #1370 from beauby/simplify-attributes
Simplify attributes handling.
2016-01-03 22:04:44 -06:00
Benjamin Fleischer
df594c630d Merge pull request #1410 from georgemillo/patch-1
Fix broken link in guides
2015-12-31 10:19:11 -06:00
George Millo
fdbc13c2de fix broken link 2015-12-31 16:44:54 +01:00
Lucas Hosseini
ccb05f11ef Add changelog. 2015-12-30 17:46:29 +01:00
Lucas Hosseini
77095f2a84 Add ActiveSupport::Autoload extension to Attribute. 2015-12-30 17:44:19 +01:00
Lucas Hosseini
a586a45863 Remove key from Attribute class. 2015-12-30 16:47:10 +01:00
Lucas Hosseini
7d24cbfd3d Extract latent Attribute object. 2015-12-30 16:47:10 +01:00
Lucas Hosseini
1d4b27f60f Improve attribute value computation. 2015-12-30 16:47:10 +01:00
Lucas Hosseini
ee0283cb57 Simplify attributes handling. 2015-12-30 16:47:10 +01:00
Lucas Hosseini
7bc66c5334 Merge pull request #1385 from bf4/remove_raw_minitest_test
Favor ActiveSupport::TestCase over Minitest::Test
2015-12-30 16:05:57 +01:00
Benjamin Fleischer
a4d5e3885a Merge pull request #1407 from CorainChicago/fix-link-on-Getting-Started.md
Fix link on Getting Started page [ci skip]
2015-12-29 23:07:38 -06:00
CorainChicago
66b068c542 fix link on Getting Started
update link on Getting Started to use the relative path
2015-12-29 22:52:22 -06:00
Benjamin Fleischer
d7de53ce30 Consider evaluating association in serializer context
For discussion:

Consider evaluating association in serializer context

That way, associations are really just anything that
can be conditionally included.  They no longer
have to actually be methods on the object or serializer.

e.g.

```diff
has_many :comments do
- last(1)
+ Comment.active.for_serialization(object).last(1)
end
```
2015-12-29 22:16:42 -06:00
Benjamin Fleischer
6f8f511eda Merge pull request #1405 from bf4/jruby9-update
Fix JRruby at 9.0.4.0 since TravisCI is using pre1 for some reason
2015-12-29 21:32:31 -06:00
Benjamin Fleischer
7f9c09998a Fix JRruby at 9.0.4.0 since TravisCI is using pre1 for some reason 2015-12-27 23:02:35 -06:00
Lucas Hosseini
12cd190cfc Merge pull request #1402 from beauby/extract-caching
Extract caching into its own module
2015-12-28 03:33:44 +01:00