1
1
use crate :: { tests:: mock:: * , Error } ;
2
2
use frame_support:: { assert_noop, assert_ok, error:: BadOrigin , BoundedVec } ;
3
3
4
+ fn last_event ( ) -> Event {
5
+ frame_system:: Pallet :: < TestRuntime > :: events ( )
6
+ . pop ( )
7
+ . expect ( "Event expected" )
8
+ . event
9
+ }
10
+
4
11
mod mint {
5
12
use super :: * ;
6
13
@@ -17,7 +24,14 @@ mod mint {
17
24
assert_eq ! ( details. creator( ) , ALICE ) ;
18
25
assert_eq ! ( details. metadata( ) , metadata) ;
19
26
assert_eq ! ( details. supply, 5 ) ;
20
- assert_eq ! ( NFTs :: account( 0 , ALICE ) , 5 )
27
+ assert_eq ! ( NFTs :: account( 0 , ALICE ) , 5 ) ;
28
+ assert_eq ! (
29
+ last_event( ) ,
30
+ Event :: NFTs ( crate :: Event :: Created {
31
+ creator: ALICE ,
32
+ asset_id: 0
33
+ } )
34
+ )
21
35
} )
22
36
}
23
37
@@ -72,6 +86,16 @@ mod transfer {
72
86
73
87
assert_eq ! ( NFTs :: account( 0 , ALICE ) , minted_amount - transfered_amount) ;
74
88
assert_eq ! ( NFTs :: account( 0 , BOB ) , transfered_amount) ;
89
+
90
+ assert_eq ! (
91
+ last_event( ) ,
92
+ Event :: NFTs ( crate :: Event :: Transferred {
93
+ asset_id: 0 ,
94
+ from: ALICE ,
95
+ to: BOB ,
96
+ amount: transfered_amount
97
+ } )
98
+ )
75
99
} )
76
100
}
77
101
@@ -94,6 +118,16 @@ mod transfer {
94
118
95
119
assert_eq ! ( NFTs :: account( 0 , ALICE ) , 0 ) ;
96
120
assert_eq ! ( NFTs :: account( 0 , BOB ) , minted_amount) ;
121
+
122
+ assert_eq ! (
123
+ last_event( ) ,
124
+ Event :: NFTs ( crate :: Event :: Transferred {
125
+ asset_id: 0 ,
126
+ from: ALICE ,
127
+ to: BOB ,
128
+ amount: minted_amount
129
+ } )
130
+ )
97
131
} )
98
132
}
99
133
@@ -157,6 +191,15 @@ mod burn {
157
191
minted_amount - burned_amount
158
192
) ;
159
193
assert_eq ! ( NFTs :: account( 0 , ALICE ) , minted_amount - burned_amount) ;
194
+
195
+ assert_eq ! (
196
+ last_event( ) ,
197
+ Event :: NFTs ( crate :: Event :: Burned {
198
+ asset_id: 0 ,
199
+ owner: ALICE ,
200
+ total_supply: minted_amount - burned_amount
201
+ } )
202
+ )
160
203
} )
161
204
}
162
205
@@ -175,6 +218,15 @@ mod burn {
175
218
176
219
assert_eq ! ( NFTs :: unique_asset( 0 ) . unwrap( ) . supply, 0 ) ;
177
220
assert_eq ! ( NFTs :: account( 0 , ALICE ) , 0 ) ;
221
+
222
+ assert_eq ! (
223
+ last_event( ) ,
224
+ Event :: NFTs ( crate :: Event :: Burned {
225
+ asset_id: 0 ,
226
+ owner: ALICE ,
227
+ total_supply: 0
228
+ } )
229
+ )
178
230
} )
179
231
}
180
232
0 commit comments