@@ 190-234 (lines=45) @@ | ||
187 | ); |
|
188 | } |
|
189 | ||
190 | public function testSerializeAdrienBrault() |
|
191 | { |
|
192 | $hateoas = HateoasBuilder::buildHateoas(); |
|
193 | $adrienBrault = new AdrienBrault(); |
|
194 | ||
195 | $this |
|
196 | ->json($hateoas->serialize($adrienBrault, 'json')) |
|
197 | ->isEqualTo(<<<JSON |
|
198 | { |
|
199 | "first_name": "Adrien", |
|
200 | "last_name": "Brault", |
|
201 | "_links": { |
|
202 | "self": { |
|
203 | "href": "http:\/\/adrienbrault.fr" |
|
204 | }, |
|
205 | "computer": { |
|
206 | "href": "http:\/\/www.apple.com\/macbook-pro\/" |
|
207 | }, |
|
208 | "dynamic-relation": { |
|
209 | "href": "awesome!!!" |
|
210 | } |
|
211 | }, |
|
212 | "_embedded": { |
|
213 | "computer": { |
|
214 | "name": "MacBook Pro" |
|
215 | }, |
|
216 | "broken-computer": { |
|
217 | "name": "Windows Computer" |
|
218 | }, |
|
219 | "smartphone": [ |
|
220 | { |
|
221 | "name": "iPhone 6" |
|
222 | }, |
|
223 | { |
|
224 | "name": "Nexus 5" |
|
225 | } |
|
226 | ], |
|
227 | "dynamic-relation": [ |
|
228 | "wowowow" |
|
229 | ] |
|
230 | } |
|
231 | } |
|
232 | JSON |
|
233 | ); |
|
234 | } |
|
235 | ||
236 | public function testSerializeInlineJson() |
|
237 | { |
@@ 77-111 (lines=35) @@ | ||
74 | ); |
|
75 | } |
|
76 | ||
77 | public function testSerializeAdrienBrault() |
|
78 | { |
|
79 | $hateoas = HateoasBuilder::buildHateoas(); |
|
80 | $adrienBrault = new AdrienBrault(); |
|
81 | ||
82 | $this |
|
83 | ->string($hateoas->serialize($adrienBrault, 'xml')) |
|
84 | ->isEqualTo(<<<XML |
|
85 | <?xml version="1.0" encoding="UTF-8"?> |
|
86 | <result> |
|
87 | <first_name><![CDATA[Adrien]]></first_name> |
|
88 | <last_name><![CDATA[Brault]]></last_name> |
|
89 | <link rel="self" href="http://adrienbrault.fr"/> |
|
90 | <link rel="computer" href="http://www.apple.com/macbook-pro/"/> |
|
91 | <link rel="dynamic-relation" href="awesome!!!"/> |
|
92 | <computer rel="computer"> |
|
93 | <name><![CDATA[MacBook Pro]]></name> |
|
94 | </computer> |
|
95 | <computer rel="broken-computer"> |
|
96 | <name><![CDATA[Windows Computer]]></name> |
|
97 | </computer> |
|
98 | <smartphone rel="smartphone"> |
|
99 | <name><![CDATA[iPhone 6]]></name> |
|
100 | </smartphone> |
|
101 | <smartphone rel="smartphone"> |
|
102 | <name><![CDATA[Nexus 5]]></name> |
|
103 | </smartphone> |
|
104 | <entry rel="dynamic-relation"> |
|
105 | <entry><![CDATA[wowowow]]></entry> |
|
106 | </entry> |
|
107 | </result> |
|
108 | ||
109 | XML |
|
110 | ); |
|
111 | } |
|
112 | ||
113 | private function createXmlSerializationVisitor() |
|
114 | { |