@@ -115,26 +115,49 @@ mod tests {
115
115
session. sandbox ( ) . set_timestamp ( timestamp) ;
116
116
}
117
117
118
+ /// Returns farm details.
119
+ fn get_farm_details ( session : & mut Session < MinimalRuntime > , farm : & Farm ) -> farm:: FarmDetails {
120
+ session
121
+ . query ( farm. view_farm_details ( ) )
122
+ . unwrap ( )
123
+ . result
124
+ . unwrap ( )
125
+ }
126
+
127
+ /// Starts a farm with given start and end timestamps and rewards.
128
+ fn setup_farm_start (
129
+ session : & mut Session < MinimalRuntime > ,
130
+ farm : & Farm ,
131
+ start : u64 ,
132
+ end : u64 ,
133
+ rewards : Vec < u128 > ,
134
+ caller : drink:: AccountId32 ,
135
+ ) -> Result < ( ) > {
136
+ let _ = session. set_actor ( caller) ;
137
+
138
+ session
139
+ . execute ( farm. owner_start_new_farm ( start, end, rewards) )
140
+ . unwrap ( )
141
+ . result
142
+ . unwrap ( )
143
+ . unwrap ( ) ;
144
+
145
+ Ok ( ( ) )
146
+ }
147
+
148
+ const ICE : & str = "ICE" ;
149
+ const WOOD : & str = "WOOD" ;
150
+ const SAND : & str = "SAND" ;
151
+
118
152
#[ test]
119
153
fn farm_start ( ) {
120
154
let mut session: Session < MinimalRuntime > = Session :: new ( ) . expect ( "Init new Session" ) ;
121
155
122
- let ice = {
123
- let ice = "ICE" . to_string ( ) ;
124
- setup_psp22 ( & mut session, ice. clone ( ) , ice. clone ( ) , BOB )
125
- } ;
156
+ let ice = setup_psp22 ( & mut session, ICE . to_string ( ) , ICE . to_string ( ) , BOB ) ;
126
157
127
- let wood = {
128
- let wood = "WOOD" . to_string ( ) ;
129
- setup_psp22 ( & mut session, wood. clone ( ) , wood. clone ( ) , BOB )
130
- } ;
131
-
132
- let sand = {
133
- let sand = "SAND" . to_string ( ) ;
134
- setup_psp22 ( & mut session, sand. clone ( ) , sand. clone ( ) , BOB )
135
- } ;
158
+ let wood = { setup_psp22 ( & mut session, WOOD . to_string ( ) , WOOD . to_string ( ) , BOB ) } ;
136
159
137
- let _farm_code_hash = session. upload_code ( farm :: upload ( ) ) . unwrap ( ) ;
160
+ let sand = { setup_psp22 ( & mut session, SAND . to_string ( ) , SAND . to_string ( ) , BOB ) } ;
138
161
139
162
let farm = setup_farm (
140
163
& mut session,
@@ -143,11 +166,7 @@ mod tests {
143
166
BOB ,
144
167
) ;
145
168
146
- let farm_details: farm:: FarmDetails = session
147
- . query ( farm. view_farm_details ( ) )
148
- . unwrap ( )
149
- . result
150
- . unwrap ( ) ;
169
+ let farm_details: farm:: FarmDetails = get_farm_details ( & mut session, & farm) ;
151
170
152
171
let expected_details = farm:: FarmDetails {
153
172
pool_id : ice. into ( ) ,
@@ -189,15 +208,14 @@ mod tests {
189
208
let farm_wood_balance_before = balance_of ( & mut session, wood. into ( ) , farm. into ( ) ) ;
190
209
let farm_sand_balance_before = balance_of ( & mut session, sand. into ( ) , farm. into ( ) ) ;
191
210
192
- let call_result = session
193
- . execute ( farm. owner_start_new_farm (
194
- farm_start,
195
- farm_end,
196
- vec ! [ rewards_amount, rewards_amount] ,
197
- ) )
198
- . unwrap ( )
199
- . result
200
- . unwrap ( ) ;
211
+ let call_result = setup_farm_start (
212
+ & mut session,
213
+ & farm,
214
+ farm_start,
215
+ farm_end,
216
+ vec ! [ rewards_amount, rewards_amount] ,
217
+ BOB ,
218
+ ) ;
201
219
202
220
assert ! ( call_result. is_ok( ) ) ;
203
221
@@ -209,11 +227,7 @@ mod tests {
209
227
end : farm_end,
210
228
} ;
211
229
212
- let farm_details: farm:: FarmDetails = session
213
- . query ( farm. view_farm_details ( ) )
214
- . unwrap ( )
215
- . result
216
- . unwrap ( ) ;
230
+ let farm_details: farm:: FarmDetails = get_farm_details ( & mut session, & farm) ;
217
231
218
232
assert ! ( farm_details == expected_details) ;
219
233
0 commit comments