WIP add transfers tests

This commit is contained in:
nolash 2021-06-08 13:53:17 +02:00
parent a2a141dbf4
commit 34d90b3291
Signed by: lash
GPG Key ID: 21D2E7BB88C2A746
3 changed files with 23 additions and 4 deletions

File diff suppressed because one or more lines are too long

View File

@ -17,7 +17,7 @@ settings.symbol = 'SIM'
settings.decimals = 6
settings.demurrage_level = int(decay_per_minute*(10**38))
#settings.period_minutes = 1 # 1 week in minutes
settings.period_minutes = 60*24*7
settings.period_minutes = 10
chain = 'evm:foochain:42'
cap = (10 ** 6) * (10 ** 12)
@ -61,8 +61,8 @@ frontend_demurrage = 1.0 - ((1 - decay_per_minute) ** minutes) # corresponding
demurrage_delta = contract_demurrage - frontend_demurrage # difference between demurrage in contract and demurrage calculated in frontend
alice_checksum = 50000000 - (50000000 * frontend_demurrage) + (200000000 * frontend_demurrage) # alice's balance calculated with frontend demurrage
print("""alice frontend balance {}
alice contract balance {}
#print("""alice frontend balance {}
print("""alice contract balance {}
frontend demurrage {:.38f}
contract demurrage {:.38f}
demurrage delta {:.38f}""".format(

View File

@ -60,5 +60,24 @@ class TestAmounts(TestDemurrageDefault):
self.assert_within_lower(balance, expected_balance, 500)
def test_transfers(self):
nonce_oracle = RPCNonceOracle(self.accounts[0], self.rpc)
c = DemurrageToken(self.chain_spec, signer=self.signer, nonce_oracle=nonce_oracle)
(tx_hash, o) = c.mint_to(self.address, self.accounts[0], self.accounts[1], 2000)
r = self.rpc.do(o)
self.backend.time_travel(self.start_time + self.period_seconds)
nonce_oracle = RPCNonceOracle(self.accounts[1], self.rpc)
c = DemurrageToken(self.chain_spec, signer=self.signer, nonce_oracle=nonce_oracle)
(tx_hash, o) = c.transfer(self.address, self.accounts[1], self.accounts[2], 500)
r = self.rpc.do(o)
o = c.balance_of(self.address, self.accounts[1], sender_address=self.accounts[0])
r = self.rpc.do(o)
balance = c.parse_balance_of(r)
self.assertEqual(balance, 817)
if __name__ == '__main__':
unittest.main()