def test_enforce_interface_on_resources(self): interface = [ imports.Var('supply', Variable), imports.Var('balances', Hash), ] self.assertTrue(imports.enforce_interface(self.module, interface))
def test_enforce_interface_fails_on_wrong_funcs(self): interface = [ imports.Func('transfer', args=('amount', 'to')), imports.Func('balance_of', args=('account', )), imports.Func('spooky'), imports.Func('allowance', args=('owner', 'spender')), imports.Func('transfer_from', args=('amount', 'to', 'main_account')) ] self.assertFalse(imports.enforce_interface(self.module, interface))
def test_enforce_interface_works_on_subset_funcs(self): interface = [ imports.Func('transfer', args=('amount', 'to')), imports.Func('balance_of', args=('account', )), imports.Func('total_supply'), imports.Func('allowance', args=('owner', 'spender')), imports.Func('transfer_from', args=('amount', 'to', 'main_account')) ] self.assertTrue(imports.enforce_interface(self.module, interface))
def test_complete_enforcement(self): interface = [ imports.Func('transfer', args=('amount', 'to')), imports.Func('balance_of', args=('account', )), imports.Func('total_supply'), imports.Func('allowance', args=('owner', 'spender')), imports.Func('approve', args=('amount', 'to')), imports.Func('transfer_from', args=('amount', 'to', 'main_account')), imports.Var('supply', Variable), imports.Var('balances', Hash) ] self.assertTrue(imports.enforce_interface(self.module, interface))
def test_private_function_enforcement(self): interface = [ imports.Func('private_func', private=True), ] self.assertTrue(imports.enforce_interface(self.module, interface))