21
21
22
22
use super :: * ;
23
23
use frame_benchmarking:: { account, benchmarks, whitelisted_caller} ;
24
- use frame_support:: traits:: { Currency , EnsureOrigin , Get } ;
24
+ use frame_support:: traits:: { nonfungible :: Inspect , Currency , EnsureOrigin , Get } ;
25
25
use frame_system:: RawOrigin ;
26
26
use sp_arithmetic:: Perquintill ;
27
27
use sp_runtime:: {
@@ -106,6 +106,7 @@ benchmarks! {
106
106
T :: Currency :: make_free_balance_be( & caller, bid) ;
107
107
Nis :: <T >:: place_bid( RawOrigin :: Signed ( caller. clone( ) ) . into( ) , bid, 1 ) ?;
108
108
Nis :: <T >:: process_queues( Perquintill :: one( ) , 1 , 1 , & mut WeightCounter :: unlimited( ) ) ;
109
+ Nis :: <T >:: communify( RawOrigin :: Signed ( caller. clone( ) ) . into( ) , 0 ) ?;
109
110
let original = T :: Currency :: free_balance( & Nis :: <T >:: account_id( ) ) ;
110
111
T :: Currency :: make_free_balance_be( & Nis :: <T >:: account_id( ) , BalanceOf :: <T >:: min_value( ) ) ;
111
112
} : _<T :: RuntimeOrigin >( origin)
@@ -116,7 +117,7 @@ benchmarks! {
116
117
assert!( missing <= Perquintill :: one( ) / 100_000 ) ;
117
118
}
118
119
119
- thaw {
120
+ thaw_private {
120
121
let caller: T :: AccountId = whitelisted_caller( ) ;
121
122
T :: Currency :: make_free_balance_be( & caller, T :: MinBid :: get( ) * BalanceOf :: <T >:: from( 3u32 ) ) ;
122
123
Nis :: <T >:: place_bid( RawOrigin :: Signed ( caller. clone( ) ) . into( ) , T :: MinBid :: get( ) , 1 ) ?;
@@ -128,6 +129,42 @@ benchmarks! {
128
129
assert!( Receipts :: <T >:: get( 0 ) . is_none( ) ) ;
129
130
}
130
131
132
+ thaw_communal {
133
+ let caller: T :: AccountId = whitelisted_caller( ) ;
134
+ T :: Currency :: make_free_balance_be( & caller, T :: MinBid :: get( ) * BalanceOf :: <T >:: from( 3u32 ) ) ;
135
+ Nis :: <T >:: place_bid( RawOrigin :: Signed ( caller. clone( ) ) . into( ) , T :: MinBid :: get( ) , 1 ) ?;
136
+ Nis :: <T >:: place_bid( RawOrigin :: Signed ( caller. clone( ) ) . into( ) , T :: MinBid :: get( ) , 1 ) ?;
137
+ Nis :: <T >:: process_queues( Perquintill :: one( ) , 1 , 2 , & mut WeightCounter :: unlimited( ) ) ;
138
+ Receipts :: <T >:: mutate( 0 , |m_g| if let Some ( ref mut g) = m_g { g. expiry = Zero :: zero( ) } ) ;
139
+ Nis :: <T >:: communify( RawOrigin :: Signed ( caller. clone( ) ) . into( ) , 0 ) ?;
140
+ } : _( RawOrigin :: Signed ( caller. clone( ) ) , 0 )
141
+ verify {
142
+ assert!( Receipts :: <T >:: get( 0 ) . is_none( ) ) ;
143
+ }
144
+
145
+ privatize {
146
+ let caller: T :: AccountId = whitelisted_caller( ) ;
147
+ T :: Currency :: make_free_balance_be( & caller, T :: MinBid :: get( ) * BalanceOf :: <T >:: from( 3u32 ) ) ;
148
+ Nis :: <T >:: place_bid( RawOrigin :: Signed ( caller. clone( ) ) . into( ) , T :: MinBid :: get( ) , 1 ) ?;
149
+ Nis :: <T >:: place_bid( RawOrigin :: Signed ( caller. clone( ) ) . into( ) , T :: MinBid :: get( ) , 1 ) ?;
150
+ Nis :: <T >:: process_queues( Perquintill :: one( ) , 1 , 2 , & mut WeightCounter :: unlimited( ) ) ;
151
+ Nis :: <T >:: communify( RawOrigin :: Signed ( caller. clone( ) ) . into( ) , 0 ) ?;
152
+ } : _( RawOrigin :: Signed ( caller. clone( ) ) , 0 )
153
+ verify {
154
+ assert_eq!( Nis :: <T >:: owner( & 0 ) , Some ( caller) ) ;
155
+ }
156
+
157
+ communify {
158
+ let caller: T :: AccountId = whitelisted_caller( ) ;
159
+ T :: Currency :: make_free_balance_be( & caller, T :: MinBid :: get( ) * BalanceOf :: <T >:: from( 3u32 ) ) ;
160
+ Nis :: <T >:: place_bid( RawOrigin :: Signed ( caller. clone( ) ) . into( ) , T :: MinBid :: get( ) , 1 ) ?;
161
+ Nis :: <T >:: place_bid( RawOrigin :: Signed ( caller. clone( ) ) . into( ) , T :: MinBid :: get( ) , 1 ) ?;
162
+ Nis :: <T >:: process_queues( Perquintill :: one( ) , 1 , 2 , & mut WeightCounter :: unlimited( ) ) ;
163
+ } : _( RawOrigin :: Signed ( caller. clone( ) ) , 0 )
164
+ verify {
165
+ assert_eq!( Nis :: <T >:: owner( & 0 ) , None ) ;
166
+ }
167
+
131
168
process_queues {
132
169
fill_queues:: <T >( ) ?;
133
170
} : {
0 commit comments