@@ -48,6 +48,42 @@ def teardown
4848 end
4949 end
5050
51+ test 'creates an object using multipart form data' do
52+ with_simple_service do
53+ name = 'An unexpected occurance'
54+ response =
55+ @reynard
56+ . serializer ( 'application/json' , nil )
57+ . operation ( 'createBook' )
58+ . body ( { 'name' => name } )
59+ . execute
60+ assert_equal '200' , response . code
61+ book = response . object
62+ assert_kind_of Reynard ::Models ::Book , book
63+ assert_equal name , book . name
64+ end
65+ end
66+
67+ test 'creates an object using multipart form data including a file' do
68+ filename = File . join ( FILES_ROOT , 'ok.txt' )
69+ with_simple_service do
70+ File . open ( filename ) do |file |
71+ name = 'An unexpected occurance'
72+ response =
73+ @reynard
74+ . serializer ( 'application/json' , nil )
75+ . operation ( 'createBook' )
76+ . body ( { 'name' => name , 'avatar' => file } )
77+ . execute
78+ assert_equal '200' , response . code
79+ book = response . object
80+ assert_kind_of Reynard ::Models ::Book , book
81+ assert_equal name , book . name
82+ assert_equal File . read ( filename ) , book . avatar
83+ end
84+ end
85+ end
86+
5187 test 'returns an error when fetching an object fails' do
5288 with_simple_service do
5389 response = @reynard . operation ( 'fetchBook' ) . params ( id : -1 ) . execute
0 commit comments