File tree Expand file tree Collapse file tree 1 file changed +37
-0
lines changed Expand file tree Collapse file tree 1 file changed +37
-0
lines changed Original file line number Diff line number Diff line change
1
+ require 'spec_helper'
2
+
3
+ describe "description" do
4
+ it "complex nested attributes" do
5
+ class ClassRoom < Grape ::Entity
6
+ expose ( :parents , using : 'Parent' ) { |_ | [ { } , { } ] }
7
+ end
8
+
9
+ class Person < Grape ::Entity
10
+ expose :user do
11
+ expose ( :id ) { |_ | 'value' }
12
+ end
13
+ end
14
+
15
+ class Student < Person
16
+ expose :user do
17
+ expose ( :user_id ) { |_ | 'value' }
18
+ expose ( :user_display_id , as : :display_id ) { |_ | 'value' }
19
+ end
20
+ end
21
+
22
+ class Parent < Person
23
+ expose ( :children , using : 'Student' ) { |_ | [ { } , { } ] }
24
+ end
25
+
26
+ ClassRoom . represent ( { } ) . serializable_hash . should == {
27
+ :parents => [
28
+ { :children =>
29
+ [
30
+ { user : { user_id : 'value' , display_id : 'value' } } ,
31
+ { user : { user_id : 'value' , display_id : 'value' } }
32
+ ]
33
+ }
34
+ ]
35
+ }
36
+ end
37
+ end
You can’t perform that action at this time.
0 commit comments