Tema Bolshakov and Dmitry Myaskovskiy
eaedcefa4e
Test::Unit assert_serializer implemented
...
So you can assert specific serializer to be used.
2014-08-18 18:04:51 +04:00
Tema Bolshakov
e3ab34dd74
Array serializer pass except and only options to item serializers
2014-08-18 14:21:08 +04:00
Tema Bolshakov
6869cc9c3b
No need to instantiate serializer
2014-08-18 12:47:22 +04:00
Tema Bolshakov
c389ae2207
Support customer array serializer
2014-08-18 12:37:01 +04:00
Jean Boussier
6f8343d06e
Manually include AC::Serialization module in test suite
2014-08-16 20:39:38 -04:00
Vladimir Lyzo
c4e6cd48b6
Add failing test: serialize array with format_keys w/o root
2014-08-15 14:45:51 +04:00
Stanley Stuart
e650863c6d
fix tests from rebasing master for embed_namespace
2014-08-13 11:38:01 -05:00
Tim Petricola
14b1df5c36
Custom options are accessible in serializer (via :context)
2014-07-28 13:10:02 -04:00
Steve Klabnik
045ba2a48c
Merge pull request #534 from kylefritz/master
...
Support lowerCamel key format
2014-07-28 12:43:36 -04:00
Steve Klabnik
55fc6536fe
Remove Coveralls
...
Coveralls is fine, but it's interfering with Travis somehow.
2014-07-04 22:11:49 -04:00
Kyle Fritz
76c8de7b9f
root key format
2014-04-14 13:45:12 -04:00
Kyle Fritz
00c54baae3
Support lowerCamel key format
2014-03-30 12:31:21 -04:00
Wojtek Mach
2e31a14125
Add :only/:except options
2014-03-12 16:55:08 -03:00
Ken Ip
8ca4d4fcd6
HasOne nil object should return [] under embedded key.
...
Ensure that @wrap_in_array is always respected when set to true even
when associated object is nil.
2014-03-10 16:42:04 -03:00
Arthur Neves
b6520315d8
only require coverage_setup on CI
2014-03-10 15:23:09 -04:00
Santiago Pastorino
1ec499bd64
Use Minitest::Test instead of ActiveModel::TestCase
2014-01-09 21:52:10 -02:00
Adrian Mugnolo and Santiago Pastorino
cec7980208
Don't embed empty associations in root
2014-01-09 15:45:20 -02:00
Santiago Pastorino
3e510c829b
Don't concat to nil objects
2014-01-09 15:35:29 -02:00
Jorge Bejar
df481b2b35
Don't memoize association serializer
2014-01-09 15:30:51 -02:00
Santiago Pastorino
ed9a5288f9
Revert "Merge branch 'context'"
...
This reverts commit 1bd8180a94 , reversing
changes made to 9bb32331f4 .
2014-01-07 15:02:09 -02:00
Adrian Mugnolo and Santiago Pastorino
0d8ef2b165
Nest scope under context option
2014-01-06 15:50:30 -02:00
Santiago Pastorino
8bd2542ed2
Allow to pass context around serializers
2014-01-06 12:22:16 -02:00
Santiago Pastorino
5fa4002039
Allow only to pass scope to associations
...
Closes #483
2014-01-03 19:48:01 -02:00
Santiago Pastorino
60fc55021c
Revert "Allow to pass options to associations"
...
This reverts commit c8cfe94f29 .
2014-01-03 19:44:40 -02:00
Santiago Pastorino
c8cfe94f29
Allow to pass options to associations
...
Closes #331
2014-01-02 19:56:08 -02:00
Santiago Pastorino
67c550f2ee
Serialize embedding in root deeply nested associations
...
Closes #444
2014-01-02 18:34:11 -02:00
Adrian Mugnolo
3cbcf461a3
Set up a logger on tests
2013-12-30 14:14:08 -02:00
Santiago Pastorino and Adrian Mugnolo
8f03596d7b
Use railtie + initialize on tests
...
Use Rails::Application#initialize! instead of Rails::Engine#load_generators in
integration tests.
2013-12-30 12:03:45 -02:00
Santiago Pastorino
7c68ee4b3f
Remove unneeded require
2013-12-26 19:47:52 -02:00
Santiago Pastorino
f18594a980
Add missing json require
2013-12-26 17:16:48 -02:00
Santiago Pastorino
d04cbb3806
Add dependencies needed to run Rubinius tests
2013-12-19 15:59:43 -02:00
Santiago Pastorino
039fa05018
Remove useless test that behaves differently in different Rails versions
2013-12-18 13:14:40 -02:00
Santiago Pastorino
62a6b6ffc6
Test using a structure that returns a consistent value on Rails 4.0 & 4.1
2013-12-18 13:04:41 -02:00
Adrian Mugnolo and Santiago Pastorino
f14f931957
Clean up HasOne array wrapping logic
...
Introduce private _wrap_in_array option for now.
2013-12-17 15:42:35 -02:00
Santiago Pastorino
80d9fb56d2
Merge pull request #452 from plexus/has_one_each_serializer_fix
...
Using a HasOne association twice raises an exception (Undefined method `map')
2013-12-16 17:49:26 -08:00
Adrian Mugnolo and Santiago Pastorino
700e6b83c1
Serializers now inherit root
2013-12-16 17:55:50 -02:00
Santiago Pastorino
f72115fb79
Test association inheritance in serializers
2013-12-16 17:45:24 -02:00
Santiago Pastorino
adee76181f
Merge pull request #468 from stas/attrs_and_assoc_inheritance
...
Serializers now inherit attributes and associations.
2013-12-16 11:14:16 -08:00
Adrian Mugnolo and Santiago Pastorino
e2b7bba626
Stub out comments writer when needed
2013-12-16 17:10:20 -02:00
Adrian Mugnolo and Santiago Pastorino
ceded40aa1
Move serialization tests to serialization_test.rb
2013-12-16 16:59:04 -02:00
Adrian Mugnolo and Santiago Pastorino
af7437b7e4
Split basic object and model array serialization tests
2013-12-16 16:50:50 -02:00
Santiago Pastorino
5c00ce0443
Merge pull request #451 from plexus/embed_in_root_merge
...
embed_in_root only returns the associated objects of a single instance
2013-12-16 10:39:53 -08:00
Stas SUȘCOV
0febd8f628
Serializers now inherit attributes and associations.
2013-12-11 17:59:32 +02:00
Jason Truluck
a110df6caf
Add @options back into serializers to maintain the functionality of render :json as noted in the docs
...
This functionality used to exist in v0.8.1. This adds the ability to
pass other options that will be usable in the serializer via the
options accessor.
This works by adding an attr_accessor for options so it is available
and is set by the remaining options in the provided options hash during
initialization.
2013-11-12 12:57:31 -05:00
Arne Brasseur
8c3866532a
Fixes a bug in the HasOne association where serializing twice in a row causes
...
an exception.
2013-11-11 15:30:46 +01:00
Arne Brasseur
1db96ec7a9
When using embed: :ids ; embed_in_root: true, and serializing multiple objects,
...
only the associated objects of the last object in the collection will actually
show up in the serialized data.
For example, if you serialize a collection of two posts, each containing one or
more comments, only the comments of the last post show up. The reason is a
Hash#merge wich overwrites the array rather than appending to it.
This commit fixes this by merging the collection arrays, rather than the top-level
hashes.
2013-11-11 14:30:34 +01:00
Todd Bealmear
6f04f86ae5
Fixed test for Rails versions prior to 4
2013-11-05 10:42:55 -08:00
Todd Bealmear
f10f72c763
Fixed Rails 4 Controller Scaffold Generator.
2013-11-04 17:31:19 -08:00
Santiago Pastorino
99677c0c58
Pass scope through to associations via @lastobelus
...
Closes #433
2013-11-04 10:48:19 -02:00
Santiago Pastorino
60b5901af8
Don't treat has_one associations embed objects as an array
...
Closes #442
Thanks @arrtchiu for reporing and giving a test case
2013-11-04 10:09:29 -02:00
Jorge Bejar
021efae95b
Change hardcoded class in favor of using provided serializer class in AR integration tests
2013-11-03 18:21:21 -02:00
Santiago Pastorino
66f9256534
Embed objects should return singular and not wrap in array
...
Closes #437
2013-11-01 14:22:52 -02:00
Santiago Pastorino
5598bb0f79
Make Associations in root work with ArraySerializer
...
Closes #414
2013-10-31 17:27:36 -02:00
Santiago Pastorino
4d4b820cbe
has_one returns arrays with roots pluralized
2013-10-30 15:26:13 -02:00
Santiago Pastorino
49ab359a34
Support passing a custom ArraySerializer for has_many associations
...
Thanks @phoet
Closes #316
2013-10-29 00:26:45 -02:00
Arthur Neves
860acad9af
s/side_load/embed_in_root
2013-10-24 14:12:02 -04:00
Santiago Pastorino
cef6f85f44
Deprecate include in favor of side_load
2013-10-24 15:09:26 -02:00
Santiago Pastorino
48db253765
embed_in_root is now side_load
2013-10-24 14:57:41 -02:00
Santiago Pastorino
d26b7df158
Add test that checks if configs are applied to associations
2013-10-24 14:26:56 -02:00
Santiago Pastorino
a732efbc3c
Clean up tests a bit
2013-10-24 13:54:49 -02:00
Santiago Pastorino
d2f2508825
Reuse ivar
2013-10-24 13:40:24 -02:00
Santiago Pastorino
04f8c0c16f
Those are config tests
2013-10-24 13:37:15 -02:00
Santiago Pastorino
c83e643edd
Those lines are not needed
2013-10-24 13:35:57 -02:00
Santiago Pastorino
5c6541145a
Allow to embed nothing but still side loading
...
Closes #361 , #399 , #401
2013-10-24 13:24:49 -02:00
Santiago Pastorino
df5ef33ae6
Allow to turn off ams
...
Closes #378
You can define now
```
def default_serializer_options
{ serializer: false }
end
```
2013-10-23 20:34:34 -02:00
Santiago Pastorino
06e4c2c9d6
Test attributes declared as strings
...
Thanks @mikegee
Closes #380
2013-10-22 11:55:32 -02:00
Arthur Neves
55baaf2005
Dont use Class.embed on test
2013-10-21 15:10:00 -04:00
Arthur Neves
2ea0920f08
s/assert/assert_equal
2013-10-21 14:27:18 -04:00
Santiago Pastorino
7dcef9f0f5
Rename Settings to Config and use accessors to configure things
2013-10-21 16:23:35 -02:00
Arthur Neves
41f1855056
Add accessors to settings class
2013-10-21 13:05:39 -04:00
Arthur Neves
f6d5340f89
Require minitest instead of test/unit
2013-10-18 17:49:22 -02:00
Arthur Neves
cf8b55ea01
Setting join_table on AR tests
2013-10-18 17:49:22 -02:00
Santiago Pastorino
b81deac320
Add coverage tools
2013-10-18 17:49:21 -02:00
Santiago Pastorino
73774649e3
Implement Generators
2013-10-18 17:49:21 -02:00
Santiago Pastorino
b9a6dfac2f
Do not call send on associated objects, do it through elem.read_attribute_for_serialization
2013-10-18 17:49:21 -02:00
Santiago Pastorino
94a83c1cc0
Make relationship graph of AR integration tests bigger
2013-10-18 17:49:21 -02:00
Santiago Pastorino
4f70dc2091
has_one serialized objects shouldn't be wrapped in an array and it's key is singular
2013-10-18 17:49:20 -02:00
Santiago Pastorino
23e6ed32be
Add default_serializer_options test
2013-10-18 17:49:20 -02:00
Santiago Pastorino
dbf512c14c
Make embed nil ids work
2013-10-18 17:49:20 -02:00
Santiago Pastorino
841f3b8181
Add filter to allow users implement filter method to include/exclude attributes and relations
2013-10-18 17:49:20 -02:00
Santiago Pastorino
daa9304398
Do not convert root and meta_key to Strings
2013-10-18 17:49:20 -02:00
Santiago Pastorino
75e9a2599d
Store attributes as they are instead of converting them into Strings
2013-10-18 17:49:20 -02:00
Santiago Pastorino
10e882a14f
Allow to set embed options from AM::Serializer
2013-10-18 17:49:20 -02:00
Santiago Pastorino
aa23e811cc
Use controller name as root when serializing an array and not root is defined
2013-10-18 17:49:20 -02:00
Santiago Pastorino
8006529e20
Allow ArraySerializer to pass the options down to item serializers
2013-10-18 17:49:19 -02:00
Santiago Pastorino
6f3503c965
Use serializer name as root when root not set
2013-10-18 17:49:19 -02:00
Santiago Pastorino
626a85bc3e
Allow using root = false in initialize
2013-10-18 17:49:19 -02:00
Santiago Pastorino
8462a73f3a
Make render json work when not using AMS
2013-10-18 17:49:19 -02:00
Santiago Pastorino
7405baafd7
Serialize associations that doesn't have an associated serializer
2013-10-18 17:49:19 -02:00
Santiago Pastorino
513e7f2166
Add setup method and Setting object to configure AMS
2013-10-18 17:49:19 -02:00
Santiago Pastorino
29148cbe1c
Add AC::Serialization#serialization_scope as a class level method
2013-10-18 17:49:19 -02:00
Santiago Pastorino
0e0341effc
Implement embed in root
2013-10-18 17:49:19 -02:00
Santiago Pastorino
af34adc7b5
Move key's initialization code to initializers
2013-10-18 17:49:19 -02:00
Santiago Pastorino
280fd65db8
Allow to set key for associations through options
2013-10-18 17:49:19 -02:00
Santiago Pastorino
48590a2e37
Allow to set root for associations through options
2013-10-18 17:49:19 -02:00
Santiago Pastorino
8a495b1d00
Embedded has_one returns an array with the key pluralized
2013-10-18 17:49:19 -02:00
Santiago Pastorino
e6993c677b
Add missing requires
2013-10-18 17:49:18 -02:00
Santiago Pastorino
a820e9774f
Add ArraySerializer's root and meta features
2013-10-18 17:49:18 -02:00
Santiago Pastorino
70ea6c6bc7
Add has_one and has_many :serialize => tests
2013-10-18 17:49:18 -02:00
Santiago Pastorino
cd3e5e9de2
Assign the association in the setup method
2013-10-18 17:49:18 -02:00