@@ -350,6 +350,32 @@ def test_pool_mint_batch_as_unauthorized_third_party(self):
350350 final_balance = self .diamond_terminus .balance_of (account .address , pool_id )
351351 self .assertEqual (final_balance , initial_balances [i ])
352352
353+ def test_pool_mint_with_pool_approval (self ):
354+ self .diamond_terminus .create_pool_v1 (10 , False , False , {"from" : accounts [1 ]})
355+ pool_id = self .diamond_terminus .total_pools ()
356+
357+ self .assertFalse (
358+ self .diamond_terminus .is_approved_for_pool (pool_id , accounts [2 ].address )
359+ )
360+ with self .assertRaises (Exception ):
361+ self .diamond_terminus .mint (
362+ accounts [2 ].address , pool_id , 1 , b"" , {"from" : accounts [2 ]}
363+ )
364+
365+ self .diamond_terminus .approve_for_pool (
366+ pool_id , accounts [2 ].address , {"from" : accounts [1 ]}
367+ )
368+ supply_0 = self .diamond_terminus .terminus_pool_supply (pool_id )
369+ balance_0 = self .diamond_terminus .balance_of (accounts [2 ].address , pool_id )
370+ self .diamond_terminus .mint (
371+ accounts [2 ].address , pool_id , 1 , b"" , {"from" : accounts [1 ]}
372+ )
373+ balance_1 = self .diamond_terminus .balance_of (accounts [2 ].address , pool_id )
374+ supply_1 = self .diamond_terminus .terminus_pool_supply (pool_id )
375+
376+ self .assertEqual (balance_1 , balance_0 + 1 )
377+ self .assertEqual (supply_0 + 1 , supply_1 )
378+
353379 def test_transfer (self ):
354380 pool_id = self .diamond_terminus .total_pools ()
355381 self .diamond_terminus .mint (accounts [2 ], pool_id , 1 , b"" , {"from" : accounts [1 ]})
0 commit comments