Fix script bug cap

This commit is contained in:
nolash 2021-06-06 10:09:26 +02:00
parent f7432a44b7
commit b09a6f4166
Signed by: lash
GPG Key ID: 21D2E7BB88C2A746
2 changed files with 42 additions and 1 deletions

View File

@ -18,7 +18,7 @@ settings.decimals = 6
settings.demurrage_level = int(decay_per_minute*(10**40)) settings.demurrage_level = int(decay_per_minute*(10**40))
settings.period_minutes = 10800 # 1 week in minutes settings.period_minutes = 10800 # 1 week in minutes
chain = 'evm:foochain:42' chain = 'evm:foochain:42'
cap = sim.from_units(10 ** 12) # 1 tn token units, with 6 decimal places cap = (10 ** 6) * (10 ** 12)
# instantiate simulation # instantiate simulation
sim = DemurrageTokenSimulation(chain, settings, redistribute=True, cap=cap, actors=10) sim = DemurrageTokenSimulation(chain, settings, redistribute=True, cap=cap, actors=10)

View File

@ -28,6 +28,47 @@ testdir = os.path.dirname(__file__)
class TestRedistribution(TestDemurrageDefault): class TestRedistribution(TestDemurrageDefault):
def test_whole_is_parts(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], 100000000)
self.rpc.do(o)
o = receipt(tx_hash)
r = self.rpc.do(o)
self.assertEqual(r['status'], 1)
(tx_hash, o) = c.mint_to(self.address, self.accounts[0], self.accounts[2], 100000000)
self.rpc.do(o)
o = receipt(tx_hash)
r = self.rpc.do(o)
self.assertEqual(r['status'], 1)
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[3], 50000000)
r = self.rpc.do(o)
o = receipt(tx_hash)
r = self.rpc.do(o)
self.assertEqual(r['status'], 1)
self.backend.time_travel(self.start_time + self.period_seconds + 1)
(tx_hash, o) = c.change_period(self.address, self.accounts[1])
r = self.rpc.do(o)
o = receipt(tx_hash)
r = self.rpc.do(o)
self.assertEqual(r['status'], 1)
balance = 0
for i in range(3):
o = c.balance_of(self.accounts[i+1])
r = self.rpc.do(o)
balance += c.parse_balance_of(r)
self.assertEqual(balance, 200000000)
def test_debug_periods(self): def test_debug_periods(self):
nonce_oracle = RPCNonceOracle(self.accounts[0], self.rpc) nonce_oracle = RPCNonceOracle(self.accounts[0], self.rpc)
c = DemurrageToken(self.chain_spec, signer=self.signer, nonce_oracle=nonce_oracle) c = DemurrageToken(self.chain_spec, signer=self.signer, nonce_oracle=nonce_oracle)